Понятие машинной команды
Материал предыдущего раздела был посвящен вопросам, связанным с внутри машинным представлением основных «форматов данных». Не менее актуальными являются вопросы внутри машинного представления «управляющей информации», основными задачами которой является организация взаимодействия устройств ЭВМ в процессе обработки входных данных и формирования конечных результатов. «Управляющая информация» по назначению и содержанию намного сложнее «данных», представляет из себя иерархическую структуру со строго подчиненными функциональными связями основных ее компонентов. Центральный элемент этой иерархической структуры – машинная команда (МК), которая является двоичным кодом определенной длины. Структура МК непосредственно связана с принципом организации и построения устройств, входящих в состав ЭВМ. Машинная команда, как правило, состоит из двух частей: операционной (КОП) и адресной (рис. 7.1).
Коп | Адресная часть |
Рис. 7.1. Структура машинной команды
В операционной части содержится код операции. Чем длиннее операционная часть, тем большее количество операций можно в ней закодировать. В современных ЭВМ длина поля операции равна 8 двоичным разрядам, что, в свою очередь, позволяет рассчитывать на систему машинных команд общим объемом в 256 различных команд.
В адресной части машинной команды содержится информация об адресах операндов. Это либо значения адресов ячеек ОП, в которых размещаются сами операнды (абсолютная адресация), либо информация, по которой процессор определяет значения их адресов в ОП (относительная адресация). Абсолютная адресация использовалась только в машинах 1 и 2-го поколений. Начиная с машин 3-го поколения, наряду с абсолютной используется относительная адресация.
По количеству адресов в адресной части МК делятся на одно-, двух-, трех- и четырехадресные (рис. 7.2). В ЭВМ 1 и 2-го поколений использовались все структуры машинных команд, приведенные на рис. 7.2. В полях А1, А2, А3 находились значения абсолютных адресов ячеек ОП, в которых соответственно размещались 1, 2 и 3-й операнды, в поле А4 четырехадресной машинной команды – адрес ячейки ОП, где размещалась машинная команда, которая должна была выполняться следующей.
Коп | А1 |
Коп | А1 | А2 |
Коп | А1 | А2 | А3 |
Коп | А1 | А2 | А3 | А4 |
Рис. 7.2. Структуры машинных команд
От использования четырехадресных машинных команд отказались достаточно быстро по причине их информационной избыточности: уже тогда в основном использовался естественный порядок выполнения машинных команд – одна за другой.
Наряду с обычными командами существовали команды условной и безусловной передачи управления, которые обеспечивали переход в любую точку программы. При выборе структуры машинных команд ЭВМ 3-го поколения была выбрана структура с переменным числом адресов в адресной части, т. е. было принято решение использовать одно-, двух- и трехадресные машинные команды. Одновременно с этим в машинах 3-го поколения наряду с абсолютной адресацией стали использовать и относительную адресацию, так как при объёме ОП 4 Гбайта на каждый абсолютный адрес потребовалось бы 32 двоичных разряда, или 4 байта. Таким образом, длина трёхадресной команды с абсолютной адресацией составила бы 3·4 + 1 = 13 байтов = 104 двоичных разряда, что в свою очередь привело бы к излишним затратам ОП. Использование относительной адресации позволило ограничиться максимальной длиной машинной команды формата «SS» в шесть байтов. При количественном составе программ в несколько десятков тысяч машинных команд экономия ОП получается ощутимая.
Абсолютная адресация используется для адресации быстродействующей памяти, работающей в одном ритме с процессором, входящей в его состав и получившей название сверхоперативной памяти (СОП). Она имеет малый объем – 16 ячеек по 32 двоичных разряда – всего 64 байта (рис 5.2).
Дата добавления: 2016-03-15; просмотров: 1029;