в описании `надстройки` BetaBasic прямо сказано что goto/gosub/return работают гораздо быстрее
в описании `надстройки` BetaBasic прямо сказано что goto/gosub/return работают гораздо быстрее
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Всмысле?
Есть еще одна мысль - закешировать последние 5-10 гоутушек и искать прежде всего в кеше. Там получается 2 байта на номер строки и 3 байта на адрес для интерпретатора (у меня тут 24бит адресация), итого 5 байт на запись или 50 байт на кешик из десяти последних гоутушек. Не нашел строку в кеше - переберем все.
В кэше "10 последних" искать долго и сложно, в цикле. Номера, кстати, можно не хранить, просто перебрать адреса и брать номера строк оттуда.
16 (32, 64...) элементов по 3 байта (только адрес).
Нужна строка N. Берём из кэша элемент "(N+(N shr 8)) and 15", если по этому адресу нужная строка - ок, если другая - ищем нужную и заносим в этот элемент кэша.
Последний раз редактировалось Bolt; 26.02.2019 в 15:11.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)