[an error occurred while processing this directive]
|
на метке S1 команда [B0] B .S1 S1 попадает в конвейер. далее выполняется 5 команд, следующих за командой перехода. И, если на момент попадания перехода в конвейер регистр b0 имел ненулевое значение, то происходит сам переход. Итого цикл состоит из 6-ти команд, и одна итерация занимает 6 тактов. Начало цикла это метка "S1:", а конец цикла помечен кучей ";".
Команда B .S2 B3 это всего-лишь возврат из подпрограммы, так как в принятом в С соглашении адрес возврата передается в регистре B3. Ну и как всегда - команда перехода попадает в конвейер, а собственно переход случается через 5 команд, поэтому все, что находится после команды возврата из подпрограммы, тоже выполнится.
E-mail: info@telesys.ru