Причина в том, что BASIC здесь полностью интерпретируется, поэтому строки "7680" и "38400" необходимо преобразовывать в двоичные целые числа КАЖДЫЙ ВРЕМЯ, строка 20 достигается (в этой программе 506 раз). В программе 2 они конвертируются один раз и сохраняются в B
. Таким образом, пока поиск и выборка B
быстрее, чем преобразование строки в двоичную, программа 2 будет работать быстрее.
Если бы вы использовали BASIC-компилятор (не уверен, что он существует для VIC-20, но это был бы классный проект ретро-программирования), тогда программы, скорее всего, будут иметь ту же скорость, или, возможно, 1 будет немного быстрее, в зависимости от того, какие оптимизации выполнил компилятор.