Состав и структура БЭВМ. Адресные пространства БЭВМ. Система команд БЭВМ, форматы команд. Машинные циклы

Состав и структура БЭВМ

Память (ОЗУ): Состоит из 2048 ячеек. Каждая ячейка вмещает 16-разрядное машинное слово. Память хранит как данные, так и исполняемые команды.

Процессор: Является ядром ЭВМ. Включает в себя три основные группы элементов:

  1. Регистры:
    • AC (Аккумулятор): главный 16-разрядный регистр, в котором осуществляются все вычисления.
    • IP (Счетчик команд): 11-разрядный регистр, хранит адрес следующей команды.
    • CR (Регистр команд): хранит код текущей выполняемой команды.
    • AR и DR (Регистры адреса и данных): используются как буферы для общения процессора с памятью.
    • PS (Регистр состояния): хранит флаги результатов АЛУ (N, Z, V, C) и биты управления прерываниями.
    • SP (Указатель стека): хранит адрес вершины стека.
    • BR (Буферный регистр): используется для временного хранения промежуточных вычислений.
    • IR (Клавишный регистр): позволяет передавать данные прямо из консольного окна.
  2. Вычислительный блок:
    • АЛУ: выполняет арифметические и логические операции.
    • Коммутатор: располагается на выходе АЛУ, выполняет сдвиги и передачу байтов (старший в младший и т.д.).
    • Блок проверки и установки признаков: анализирует результат с коммутатора и аппаратно выставляет флаги N, Z, V, C в регистр PS.
  3. Устройство управления (УУ): Реализовано как микропрограммное устройство (МПУ) внутри процессора. Оно декодирует машинные команды из регистра CR и потактово рассылает сигналы на открытие/закрытие необходимых вентилей процессора.

Рис. 1: Состав и структура процессора БЭВМ-NG

Адресное пространство

Адресное пространство БЭВМ определяется разрядностью регистра адреса (AR). Так как AR имеет размер 11 бит, процессор может адресовать ячеек памяти (адреса от 0x000 до 0x7FF). Ячейки с адресами от 0x000 до 0x00F обычно зарезервированы системой под вектора прерываний внешних устройств.

Система и форматы команд

Все команды БЭВМ занимают ровно одно 16-битное слово. Старшие 4 бита (12–15) всегда отводятся под Код Операции (КОП). Система команд делится на четыре группы:

  • Адресные команды Содержат КОП, бит режима адресации (11-й бит) и 11-битный адрес операнда (либо смещение или даже прямую загрузку). Примеры: ADD, LD, ST.

  • Безадресные команды КОП всегда равен 0000. Сама операция зашифрована в оставшихся младших битах. Работают только с регистрами, без обращения к памяти. Примеры: CLA, HLT.

  • Команды ветвления КОП всегда равен 1111. Проверяют состояние флагов в регистре PS. Если условие выполняется, к счетчику команд IP прибавляется 8-битное смещение (может быть отрицательным). Примеры: BEQ, BMI.

  • Команды ввода-вывода КОП всегда равен 0001. Используются для обмена данными с контроллерами ВУ.

Машинные циклы

Исполнение любой машинной команды разбивается на строгую последовательность этапов — машинных циклов:

  1. Цикл выборки команды (IF) из памяти по адресу IP считывается код команды и помещается в регистр CR. IP увеличивается на 1.
  2. Цикл выборки адреса (AF) выполняется только для адресных команд. Высчитывает адрес операнда.
  3. Цикл выборки операнда (OF) само значение операнда считывается из памяти в регистр DR.
  4. Цикл исполнения (EX) АЛУ производит нужную операцию и сохраняет результат.
  5. Цикл прерывания (INT) процессор проверяет, не поступил ли сигнал от ВУ. Если сигнал есть и прерывания разрешены, управление передается обработчику.