Я тоже так делаю, защищаюсь от "0" в делителе. Но поведение реального ПР оказывается допускает иногда этого не делать, отдавая в результате максимум регистра. Но то что в симуляторе при таких действиях всё не так как вживую - про это и пишем.