Будем рассматривать только принципиальные моменты. Второстепенные вопросы, например, применение буфера или КЭШа, не будем.
Постепенно будем строить свой Центральный процессор (ЦП).
Примерный перечень вопросов.
1. Арифметическо-логическое устройство (АЛУ) ЦП и его команды.
2. Переход от АЛУ к ЦП
3. Микрокоманды ЦП.
4. Локальная память ЦП
5. Уровни программирования в ЦП.
6. Граница "железа" и программирования в ЦП.
7. Форматы данных. Уже существующие или строим свои форматы.
8. Строим систему команд ЦП для пользователя уже принятую или строим
свою систему команд.
9. Кому-то продаём построенный ЦП
10. Переход от ЦП к вычислительной системе (ВС)
11. Система прерываний в ВС
12. Система ввода-вывода в ВС.
13. Операционная система. Что это и зачем нужна?
24.09.2022
Начнём рассматривать первый вопрос. Арифметическо-логическое устройство (АЛУ) ЦП и его команды. Структурная схема АЛУ.
АЛУ совершает арифметическо-логические операции с двумя операндами, на выходе получаем один операнд результата.
АЛУ может иметь два входа размером в 2 байта и выход размером 2 байта. Вариант 1.
АЛУ может иметь два входа размером в 1 байт и выход размером 1 байт. Вариант 2.
АЛУ может иметь один вход размером в 2 байта и выход размером 2 байта. Один операнд подаётся на Вход 1, другой операнд берется из специального регистра "Магазин" - это регистр М. В него предварительно записывается второй операнд. Результат помещается снова в Магазин. Вариант 3.
Вариант 4 тот же, что и Вариант 3, размер входа и выхода АЛУ равен 1 байту.
Какой бы вариант АЛУ мы не взяли, мы построим ЦП с одинаковой системой команд пользователя и наш ЦП будет выполнять все программы и приложения, которые выполняют другие прцесоры.
На сегодня всё. Далее подробно рассмотрим систему команд АЛУ.
------------------------
Сотрудники Вычислительного Центра Главсредволговодстроя, г. Саратов, 1977-1993.
------------------------------
Если Вам понравился материал статьи, подпишитесь пожалуйста на мой канал в целом.
Для этого пройдите по ссылке ниже и нажмите кнопку "Подписаться"
https://dzen.ru/profile/editor/id/62cd3cfc63f88417d7e74b79