-
- какие такие? LDIR/LDDR был. но где требовалась скорость - ими не пользовались. - Mahagam(22.10.2013 11:49)
- Хм... неужели пересылка блока одной командой требовала больше времени, чем последовательность нескольких команд? В чем был секрет? - Bill(22.10.2013 11:57)
- да. причин было много. команда была с префиксом, считывала себя каждый раз повторно, тратила такты на внутренние вычисления, работала с одним байтом за раз. реализации со стеком вида Mahagam(200 знак., 22.10.2013 12:08)
- Понятно, прием мне известный. - Bill(22.10.2013 12:22)
- Ещё POP <все регистры>; PUSH <все регистры> и так в цикле (только SP переставляли). Тоже 21 такт на 2 байта (плюс расходы на LD SP, xxx, но данные можно хранить как есть, а не в виде команд LD HL, xxxx). - fk0(22.10.2013 12:04, ссылка)
- 16 тактов у LDI и 21 такт у LDIR. Архитектура простейшая. Там легко просчитывается на что идут такты. - POV(22.10.2013 12:04)
- да. причин было много. команда была с префиксом, считывала себя каждый раз повторно, тратила такты на внутренние вычисления, работала с одним байтом за раз. реализации со стеком вида Mahagam(200 знак., 22.10.2013 12:08)
- Хм... неужели пересылка блока одной командой требовала больше времени, чем последовательность нескольких команд? В чем был секрет? - Bill(22.10.2013 11:57)
- какие такие? LDIR/LDDR был. но где требовалась скорость - ими не пользовались. - Mahagam(22.10.2013 11:49)