Какой самый быстрый бесконечный цикл в TI-84+ Basic?
Так как технически существует 4 типа циклов (for, while, repeat и goto/lbl), какой из них наиболее быстро использовать "бесконечно"? Вот что я имею в виду:
while 1
End
repeat 0
End
lbl 1
goTo 1
for(n, 1, [number large enough to function as practically infinite]
End
Какой из них самый быстрый или есть еще более быстрый?
2 ответа
С точки зрения как размера, так и скорости, циклы повторения и в то время как самые быстрые.
While 1
а также Repeat 0
оба 2 байта, в то время как End
равен 1. С точки зрения пространства, они оба 4 байта.
С точки зрения скорости, то же самое верно. Просто попробуйте сделать простую программу, которая зацикливается на бесконечность, и рассчитайте время.
TL; DR: While 1: End
а также Repeat 0: End
Технически самым быстрым является:
AsmPrgm
18FE
который должен быть запущен как программа сборки.
Это использует сборку Z80 для создания бесконечного (неостановимого, кроме кнопки сброса) цикла. Код запускается непосредственно процессором, поэтому ОС не нужно тратить время на его интерпретацию.