Комментарии 13
АЛУ - арифметическо-логическое устройство. Работает ОНО, а не ОНА. Исправьте пожалуйста ЗАГОЛОВОК.
Я и не догадывался что там 4 бита. Крутой разбор алу-части моего любимого процессора, спасибо.
Эх, как же в свое время хотелось умножение и деление иметь в этом процессоре!
Теперь становится понятно, зачем во флагах хранится копия битов 5 и 3 результата. Просто нашли место для хранения битов для стыковки полуопераций. А полуперенос (также нужный для стыковки) во флагах уже был от i8080.
Перенос из 3-го в 4-й бит результата (из младшего полубайта в старший) необходим для десятичных операций. Если десятичные операции широкие (выполняются не над одной десятичной цифрой, а, скажем, сразу над восемью, закодированными в 4-байтовом слове), такие переносы нужны из каждой тетрады (полубайта).
Нет сравнения по скорости 4 и 8 битных АЛУ. Получается 4 за два "такта" собирает результат, а 8 за это же время, но меньшее число тактов? Или 8 молотит те же такты, просто 4 экономичнее по площади.
Нет, ширина АЛУ напрямую не определяла разницу в скорости. Несмотря на 4-битное АЛУ против 8-битного у 8085, по тактам на инструкцию они были практически идентичны .
Инженеры Zilog использовали конвейеризацию: 8-битная операция выполнялась за два прохода через 4-битное АЛУ, но укладывалась в те же машинные циклы, что и одно проход через 8-битное АЛУ у 8080/8085 . Это было осознанное решение для экономии транзисторов и снижения себестоимости, а не жертва производительностью.
Системная стоимость: Главное преимущество Z80 — не сырая скорость АЛУ, а интеграция. Ему не требовались дорогие генераторы тактов (как 8080) и логика регенерации DRAM, что удешевляло готовое устройство .
Только это перевод статьи Кена без плашки перевода.
О, какая же ностальгия у меня по этому процессору. Сколько же в своё время, на MSX2 я софта на ассемблере написал. И почти весь пакет нортон утилит с РС перетащил, и свою операционку написал сетевую. Блиииин. И даже вирусы писал безобидные. Например, при выводе на печать, после каждой запятой, печаталось "бля". Помню в одном приложении, когда нее хватало памяти, половину грузил в видеопамять, которой было столько же, и потом просто менял "банки" местами. Иногда прям жуткая ностальгия по этому процессору настигает. Прям хочется вспомнить и опять что-то написать. А речная оптимизация? Высчитывал такты, менял jmp на jr потому что там не 3 а 2 такта 😂
Интересно, у Т34ВМ1 (отечественный клон Z80) АЛУ было тоже 4-разрядное или 8-разрядное?
У Z-80 4-битное АЛУ. Вот как оно работает