Выполнять-то выполняет, но не надо это понимать так, что 1мгц = 1 миллион инструкций в секунду. Я наверное неточно высказался в прошлый раз. Такое приближение возможно только если архитектура RISC, реализован четырехэтапный конвейер, и внешние устройства отвечают на следующий такт после запроса. А ВМ1 очень CISC, конвейера у него нет, шина у БК тормозная. Команду надо загрузить, вычислить каждый операнд, каждый из которых может быть с автоинкрементом и двойной косвенной адресацией, ня, то есть это все с доступом к внешним устройствам, собственно выполнить инструкцию и сохранить результат, тоже зачастую в память. Этих шагов даже у моего "быстрого" ВМ1 на инструкцию получается много.
Я про БК знаю слишком мало, чтобы предсказать, как это будет пересекаться с периферией. Знаю, что у Вектора, например, на каждый машинный цикл у процессора есть "люфт" в 4 такта, то есть если машинный цикл 5 тактов, то мы попали на 8, а если бы он был 1, все равно займет 4. Чудес не бывает, в БК тоже что-то где-то должно быть сделано, чтобы освежать память и обновлять экран. И скорее всего, даже если получится сделать так, что все заработает правильно, заметно быстрее вся система не станет.





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