Раздел 1. Базовая ЭВМ
Система команд базовой ЭВМ
Классификация команд
ЭВМ способна понимать и выполнять точно определенный набор команд. При составлении программы пользователь ограничен этими командами. В зависимости от того, к каким блокам базовой ЭВМ обращается команда или на какие блоки она ссылается, команды можно разделить на три группы:
- обращения к памяти (адресные команды);
- обращения к регистрам (регистровые или безадресные команды);
- команды ввода-вывода.
Команды обращения к памяти предписывают машине производить действия с содержимым ячейки памяти, адрес которой указан в адресной части команды.
Рис. 1.2a. Формат адресных команд
Разработчики базовой ЭВМ выбрали формат 16-битовых (однословных) команд с 4-битовым кодом операции.
В командах обращения к памяти на адрес отведено 11 бит. Следовательно, можно прямо адресоваться к 211 = 2048 ячейкам памяти, т.е. ко всей памяти базовой ЭВМ (прямая адресация). В этом случае бит вида адресации должен содержать 0. Если же в этом же бите установлена 1, то адрес, размещенный в адресной части команды, указывает на ячейку, в которой находится адрес операнда (косвенная адресация).
Отметим, что при мнемонической записи команд указание косвенной адресации производится путем заключения адреса в скобки.
Например, команда ADD (25)
- сложить содержимое А с содержимым ячейки, адрес которой хранится в ячейке 25 (косвенная адресация).
Безадресные команды выполняют различные действия без ссылок на ячейку памяти. Например, команда CLA предписывает ЭВМ очистить аккумулятор (записать в А код нуля). Это команда обработки операнда, расположенного в конкретном месте, известном машине. Другой пример безадресной команды - команда HLT.
Рис. 1.2b. Формат безадресных команд
Команды ввода-вывода осуществляют обмен данными между процессором и внеш-ними устройствами ЭВМ.
Рис. 1.2c. Формат команд ввода-вывода