- •Вычислительные машины (конспект лекций) однопроцессорные эвм
- •Часть 2
- •4.1. Структура памяти эвм 7
- •4.1. Структура памяти эвм
- •4.2. Способы организации памяти
- •4.2.1. Адресная память
- •4.2.2. Ассоциативная память
- •4.2.3. Стековая память (магазинная)
- •4.3. Структуры адресных зу
- •4.3.1. Зу типа 2d
- •4.3.2. Зу типа 3d
- •4.3.3. Зу типа 2d-м
- •4.4. Элементы зу с произвольным обращением
- •4.4.1. Зэ на ферритовых кольцах
- •4.4.2. Зэ на полупроводниковых элементах
- •4.5. Постоянные зу (пзу, ппзу)
- •4.6. Флэш-память
- •Вопросы для самопроверки
- •Контрольные задания
- •5. Структура и форматы машинных команд, способы адресации
- •5.1. Общие замечания
- •5.2. Возможные структуры машинных команд
- •5.3. Способы адресации
- •5.4. Команды передачи управления
- •5.4.1. Команды безусловного перехода (бп)
- •5.4.2. Команды условного перехода (уп)
- •5.4.3. Команды перехода на подпрограмму
- •5.5. Индексация
- •Вопросы для самопроверки
- •Контрольные задания
- •6. Принципы организации систем прерывания программ
- •6.1. Характеристики систем прерывания
- •6.2. Возможные структуры систем прерывания
- •6.3. Организация перехода к прерывающей программе
- •6.3.1. Реализация фиксированных приоритетов
- •6.3.2. Реализация программно-управляемых приоритетов
- •Вопросы для самопроверки
- •Контрольные задания
- •7. Простейшая микроэвм
- •7.1. Системный интерфейс микроэвм. Цикл шины
- •7.2. Промежуточный интерфейс
- •7.3. Мп с фиксированной системой команд
- •7.3.1. Регистры данных
- •7.3.2. Арифметико-логическое устройство
- •7.3.3. Регистр признаков
- •7.3.4. Блок управления
- •7.3.5. Буферы
- •7.3.6. Мп с точки зрения программиста
- •7.4. Мп-устройство на основе мп кр580вм80а
- •7.5. Форматы данных мп кр580
- •7.6.Форматы команд мп 580вм80
- •7.7. Способы адресации
- •7.8. Система команд мп 580
- •7.8.1. Пересылки однобайтовые
- •7.8.2. Пересылки двухбайтовые
- •7.8.3. Операции в аккумуляторе
- •7.8.4. Операции в рон и памяти
- •7.8.5. Команды управления
- •Вопросы для самопроверки
- •Контрольные задания
5. Структура и форматы машинных команд, способы адресации
5.1. Общие замечания
При рассмотрении работы процессора подчеркивалось, что информация о том, какую машинную операцию надо выполнить в данный момент, над какими операндами и куда поместить результат, задается машинной командой. При этом любая программа неймановской машины представляет собой последовательность команд, отображающих все действия, необходимые для решения задачи по некоторому алгоритму.
Машинная командапредставляет собой код, определяющий операцию вычислительной машины и данные, участвующие в операции. В общем случае команда должна содержать также в явной или неявной форме информацию об адресе, по которому помещается результат операции, и об адресе следующей команды.
Машинная операция– это действия машины по преобразованию информации, выполняемые под воздействием одной команды.
По характеру выполняемых операций различают следующие основные группы команд:
Арифметические операции над ЧФЗ и ЧПЗ.
Команды десятичной арифметики.
Логические (поразрядные) операции.
Передача кодов (пересылка операндов).
Операции ввода-вывода.
Управление порядком выполнения команд (передача управления).
Задание режима работы машины и различные дополнительные действия.
В общем виде машинная команда имеет структуру, изображенную на рис. 5.1.
Таким образом, команда состоит из операционной и адресной частей. Эти части, в свою очередь, могут состоять из нескольких полей (особенно адресная).
Операционная часть– содержит код, который задает вид операции (сложение, умножение, передача и т.д.).
Адресная часть– содержит информацию об адресах операндов и результата операции, а в некоторых случаях и следующей команды.
Структура команды– определяется составом, назначением и расположением полей в команде.
Формат команды– это ее структура с разметкой номеров разрядов, определяющих границы отдельных полей команды.
Задача выбора оптимальных структур и форматов команд при проектировании новых ЭВМ является одной из важнейших, поскольку от правильности ее решения зависит быстродействие и производительность ЭВМ.
Проблема состоит в том, что, с одной стороны, в команде желательно разместить максимум информации о выполняемой операции. С другой стороны, для упрощения аппаратуры и повышения быстродействия ЭВМ длина формата команды должна быть согласована с длиной обрабатываемых машинных слов, составляющей обычно 16-32 бита (для того чтобы можно было использовать для хранения и обработки операндов и команд одни и те же аппаратные средства). Формат команды должен быть, по возможности, короче, укладываться в машинное слово или полуслово, а для ЭВМ с коротким словом (8-16 бит) быть малократным машинному слову. Решение проблемы выбора оптимального формата команды значительно усложняется в микроЭВМ, работающих с коротким словом.
В абсолютном большинстве случаев ОП универсальных ЭВМ является адресной. Это значит, что каждой хранимой в ОП единице информации (байту, слову, двойному слову) ставится в соответствие специальное число – адрес, определяющий место ее хранения в памяти. В современных ЭВМ различных типов минимальнойадресуемой в памяти единицей информации в большинстве случаев являетсяодин байт, т.е. 8 бит с 9-м контрольным разрядом. Иногда бывает и полубайт, т.е. 4 разряда и даже один бит. Более крупные единицы информации – слово, двойное слово и т.д. образуются из целого числа байт. В зависимости от способа хранения информации в ОП их адресом считается адрес старшего или младшего байта.
В общем случае разрядность машинного слова может определяться разрядностью АЛУ процессора, разрядностью шины данных, шириной выборки ОП и другими факторами. Наиболее часто разрядность машинного слова соответствует разрядности операндов, которые наиболее эффективно обрабатываются процессором. Например, процессор I80386 имеет 32- разрядные АЛУ и 32- разрядную шину данных. Однако разработчики устройств на базе этого процессора за машинное слово выбрали 16- разрядный двоичный код при ширине выборки ОП 1 байт. Следует иметь в виду, что ширина выборки ОП – это техническая характеристика БИСов памяти, а байт, слово, двойное слово и т.д. – логические единицы информации, которые формируются контроллером памяти и операционной системой и обычно кратны ширине выборки. При рассмотрении процессов передачи и обработки информации внутри ЭВМ в большинстве случаев оперируют именно этими логическими единицами.