Структура и типы команд
При компиляции программ производится декомпозиция процедур программ до уровня операций обработки двух или одного операндов. В первом случае команда является двухместной, во втором – одноместной.
В любом случае команда должна задавать операцию и операнды. Обычно операция задается номером (кодом) операции во множестве операций, определенных для операционного устройства. Если операнды, используемые в операции, являются результатами ранее выполненных операций (тип операндов – переменная), то они задаются номерами (адресами) зарезервированных для них ячеек памяти. Если операнд известен до выполнения операции, то он может задаваться в команде своим значением (непосредственный операнд).
В случае двухместной операции команда должна задавать
1. операцию,
2. адрес или значение первого операнда,
3. адрес или значение второго операнда,
4. адрес сохранения результата,
5. адрес следующей команды (или двух альтернативных адресов команды для реализации ветвлений).
Задание операции
Операция задается полем кода операции. По этому номеру коду или выбирается специализированное исполнительное устройства, или универсальное исполнительное устройство настраивается на заданный вид обработки. Возможны комбинации этих решений.
Кроме исполняемой операции, код операции часто задает формат и тип обрабатываемых данных. Под форматом здесь понимается размерность операндов (байт, слово, двойное слово и т.д.), а под типом – тип арифметики (целочисленные операции, с плавающей точкой, векторные операции и т.д.).
Дата добавления: 2015-08-14; просмотров: 706;