Комментарии 2
Замечу, что при прочих равных у 8086 будет больший отрыв "рассыпухи" от MUL благодаря 16-разрядной шине данных: время выборки команд сокращается, грубо говоря, вдвое, плюс буфер предвыборки 6 байтов, а не 4 -- и это ощутимо снижает тормоза от регенерации памяти и вообще медленного доступа к шине (если память не изменяет, на одно обращение при отсутствии тактов ожидания эти процессоры тратят 4 такта шины -- т.е. при серии быстрых команд на 8088 буфер предвыборки всегда будет пуст даже без регенерации памяти).
Спасибо автору, было интересно читать, очень изящно показано, как именно деградация производительности коротких инструкций из-за ожидания памяти съедает теоретический выигрыш. Настоящая инженерная археология самого высокого уровня. Особенно за детальный расчет и скручивание теории с практикой!
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Сдвиги вместо MUL на 8088: по таблице выигрыш у всех констант, с учётом выборки байтов — по расчёту у 9–21%