Цитата Сообщение от Bedazzle Посмотреть сообщение
а если будет 50
Ну да, я в среднем и приблизительно написал. Если мы знаем сколько конкретно циклов будет, то можем конкретно посчитать такты.
Код:
   ld bc, 1000
loop:
   djnz loop    ; 13/8t
   dec c           ; 4t
   jr nz, loop    ; 12/7t
                      ; итого 29 тактов (чуть меньше, т.к. последний виток быстрее переход)
Например 50 циклов. Считаем. 49 раз djnz завернёт за 13 тактов. Плюс один раз djnz 8t, dec 4t и jr 7t.
49*13+8+4+7=50*13-13+8+4+7=650+6=656
За цикл будет 656/50=1312/100=13,12
Всё равно 13 с мелочью. Но не 29.