Вообще-то любой вывод графики в ПК 70-80 годов (в том числе из Бейсика) сопровождается чтением видеопамяти: сначала читается байт, затем в нём меняются биты, соответствующие нужному пикселу, а потом результат пишется обратно. Это только на "Корвете" можно обойтись без чтения, да на EGA адаптерах. Прокрутка экрана также без чтения невозможна (если нет аппаратной поддержки, как в "Океане-240").
То есть BM8 имеет 20% отличия при всех остальных равных условиях (тот же процессор, Бейсик из того же семейства, выключенный видеоконтроллер)?
Это довольно много. Я бы не стал списывать переключение страниц со счетов. Интерпретатор постоянно обращается как к тексту программы, так и к служебным областям, и с переключением страниц его работа заметно усложняется. Раз под программу на Бейсике отведено 60К, то интерпретатору остается кусочек в 4К. Этот кусочек мало чего может сделать сам, поэтому для обработки каждого токена нужно переключить страницы и вызвать основную часть интерпретатора. У каждого оператора есть параметры, чтобы слазить за ними в текст программы тоже нужно "пощелкать" страницами. Параметры могут ссылаться на переменные или массивы и чтобы обратиться к ним опять нужно "щелкать" страницами. То же самое с поиском номеров строк для циклов или переходов.





Ответить с цитированием