DDp, спасибо, проанализирую чуть позже.
Я бы все-таки наверное попробовал еще что-нибудь бейсиковское. В двоичных играх скорее всего применяются похожие пустые циклы для задержек, а вот в случае бейсика картина может, я думаю, отличаться...
DDp, спасибо, проанализирую чуть позже.
Я бы все-таки наверное попробовал еще что-нибудь бейсиковское. В двоичных играх скорее всего применяются похожие пустые циклы для задержек, а вот в случае бейсика картина может, я думаю, отличаться...
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
фдеукю у-ьфшдЖ ввз"шярюсщь D356 47C0 35F8 F55E 8A52 A88F F3F8 B003 03EB 3D7F
Похоже получилось разобраться по крайней мере с чтением. Расписал NOP; MOV A,A и MOV A,M и точные растактовки установившихся циклов из одинаковых команд:
NOP - 6.4
MOV A,A - 7.(1)
MOV A,M - 11.(428571)
Если возникнет вопрос, почему везде чуть меньше, чем в tstsp1, то дело в накладных расходах на организацию цикла (оценить их величину можно по результатам при отсутствии торможения). Совсем без накладных расходов на цикл можно при наличии таймера, но это уже другая история. Очевидно можно уменьшить погрешность, вносимую командами организации цикла, если увеличить число команд в одном прогоне. Теперь надо бы и запись попробовать расписать (отмечу, что вручную весьма неудобно).
Последний раз редактировалось ivagor; 30.03.2021 в 09:19. Причина: более точное значение для MOV A,M
Pyk(30.03.2021)
Посчитал для последовательности MOV M,A - 12.(4) такта. Все это познавательно, но малоприменимо в эмуляторе, там желательно какие-нибудь сравнительно простые и похожие на правду правила расчета. В принципе сейчас уже точность эмулятора весьма хорошая.
Если кто-то не понял, 11.(428571) - это 11 3/7
Пока не уверен насчет всех команд, но последовательности 4 попробованных после переходного процесса вышли на циклы: 32/5=6.4; 64/9=7.(1); 80/7=11.(428571); 112/9=12.(4). Числитель - длительность цикла в тактах проца, знаменатель - сколько соответствующих команд там помещается. Теоретически можно попробовать так считать любые команды и их сочетания, но по хорошему вероятно надо писать какую-то программку, вручную много не насчитаешь.
Примеры обновленного MusicStudio тоже можно использовать для замеров скорости. После загрузки ждут нажатия клавиши, после однократного проигрывания стоп.
Согласен, неплохо бы и пример из MusicStudio записать...
И/или еще можно эксолоновское бипание потестировать.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)