- •Введение
- •Общие сведения Технико-эксплуатационные характеристики эвм
- •История развития эвм
- •Классификация эвм
- •Классификация эвм по назначению
- •Классификация эвм по функциональным возможностям иразмерам
- •Функциональная и структурная организация эвм
- •Связь между функциональной и структурной организацией эвм
- •Обобщенная структура эвм и пути её развития
- •Обрабатывающая подсистема
- •Подсистема памяти
- •Подсистема ввода-вывода
- •Подсистема управления и обслуживания
- •Архитектуры эвм
- •Sisd-компьютеры
- •Компьютеры с cisc архитектурой
- •Компьютеры с risc архитектурой
- •Компьютеры с суперскалярной обработкой
- •Simd-компьютеры
- •Матричная архитектура
- •Векторно-конвейерная архитектура
- •Ммх технология
- •Misd компьютеры
- •Mimd компьютеры
- •Многопроцессорные вычислительные системы
- •Многопроцессорные вычислительные системы с общей шиной.
- •Многопроцессорные вычислительные системы с многовходовыми модулями оп.
- •Многомашинные вычислительные системы (ммвс)
- •Многомашинные комплексы
- •Ммр архитектура
- •Структура и форматы команд эвм
- •Форматы команд эвм
- •Способы адресации
- •Классификация способов адресации по наличию адресной информации в команде
- •Классификация способов адресации по кратности обращения в память
- •Классификация по способу формирования исполнительных адресов ячеек памяти
- •Относительная адресация
- •Стековая адресация
- •Теги и дескрипторы. Самоопределяемые данные
- •Процессоры. Центральный процессор
- •Логическая структура цп
- •Структурная схема процессора
- •Характеристики процессора
- •Регистровые структуры центрального процессора
- •Основные функциональные регистры
- •Регистры процессора обработки чисел с плавающей точкой
- •Системные регистры
- •Регистры отладки и тестирования
- •Назначение и Классификация цуу
- •Устройства управления цп
- •Цуу с жесткой логикой.
- •Цуу с микропрограммной логикой
- •Процедура выполнения команд
- •Язык микроопераций
- •Описание слов, регистров и шин
- •Описание массива данных и памяти.
- •Описание микроопераций
- •Условные микрооператоры.
- •Арифметико-логическое устройство
- •Структура алу
- •Сумматоры
- •Классификация алу
- •Методы повышения быстродействия алу
- •Память эвм
- •Организация внутренней памяти процессора.
- •Оперативная память и методы управления оп
- •Методы управления памятью без использования дискового пространства (без использования внешней памяти).
- •Распределение памяти фиксированными разделами.
- •Размещение памяти с перемещаемыми разделами.
- •Организация виртуальной памяти.
- •Страничное распределение.
- •Сегментное распределение.
- •Странично - сегментное распределение.
- •Свопинг
- •Методы повышения пропускной способности оп.
- •Выборка широким словом.
- •Расслоение сообщений.
- •Методы организации кэш-памяти
- •Типовая структура кэш-памяти
- •Способы размещения данных в кэш-памяти.
- •Прямое распределение.
- •Полностью ассоциативное распределение.
- •Частично ассоциативное распределение.
- •Распределение секторов.
- •Методы обновления строк в основной памяти
- •Системы внешней памяти
- •Общие принципы организации системы прерывания программ
- •Характеристики системы прерываний
- •Программно-управляемый приоритет прерывающих программ
- •Организация перехода к прерывающей программе
- •ПодСистема ввода/вывода Принципы организации подсистемы ввода/вывода
- •Каналы ввода-вывода
- •Интерфейсы ввода-вывода
- •Классификация интерфейсов
- •Типы и характеристики стандартных шин
- •Вычислительные системы
- •Общие положения
- •Классификация вс
- •Понятие открытой системы
- •Кластерные структуры
- •12. Библиографический список
- •Содержание
- •1. Общие сведения 5
- •2. Архитектуры эвм 22
- •3. Структура и форматы команд эвм 37
- •4. Типы данных 47
- •5. Процессоры. Центральный процессор 53
- •6. Язык микроопераций 72
- •7. Арифметико-логическое устройство 77
- •8. Память эвм 84
- •9. Общие принципы организации системы прерывания программ 118
- •10. ПодСистема ввода/вывода 125
- •11. Вычислительные системы 134
- •12. Библиографический список 140
Форматы команд эвм
В команде, как правило, содержатся не сами операнды, а информация объект адресах ячеек памяти или регистрах, в которых они находятся. Код команды можно представить состоящим из нескольких полей, каждое из которых имеет свое функциональное назначение.
В общем случае команда состоит из:
операционной части (содержит код операции);
адресной части (содержит адресную информацию о местонахождении обрабатываемых данных и месте хранения результатов).
В свою очередь, эти части, что особенно характерно для адресной части, могут состоять из нескольких полей.
Структура командыопределяется составом, назначением и расположением полей в коде.
Форматом командыназывается заранее оговоренная структура полей ее кода сразметкой номеров разрядов (бит), определяющих границы отдельных полей команды, или с указанием числа разрядов (бит) в определенных полях, позволяющая ЭВМ распознавать составные части кода.
Пример формата команды процессора i486.
mod r/m - спецификатор режима адресации;
r/m - регистр памяти;
SS - масштабный множитель для режима масштабирования индексной адресации;
КОП - код операции;
index - определяет индексный регистр;
base - определяет базовый регистр.
Важной и сложной проблемой при проектировании ЭВМ является выбор структуры и форматов команды, т.е. ее длины, назначения и размерности отдельных ее полей. Естественно стремление разместить в команде в возможно более полной форме информацию о предписываемой командой операции. Однако в условиях, когда в современных ЭВМ значительно возросло число выполняемых различных операций и соответственно команд (в компьютерах с CISC-архитектурой более 200 команд) и значительно увеличилась емкость адресуемой основной памяти (32, 64 Мб), это приводит к недопустимо большой длине формата команды.
Вместе с тем, для упрощения аппаратуры и повышения быстродействия ЭВМ длина формата команды должна быть по возможности короче, укладываться в машинное слово или полуслово. Решение проблемы выбора формата команды значительно усложняется в микропроцессорах, работающих с коротким словом.
Проследим изменения классических структур команд.
Чтобы команда содержала в явном виде всю необходимую информацию о задаваемой операции, она должна, как это показано на рис. 3.1 (б), содержать следующую информацию: А1, А2 - адреса операндов, А3 - адрес результата, А4 - адрес следующей команды (принудительная адресация команд).
Рис. 3.1. Структуры команд: а) обобщенная, б) четырехадресная, в) трехадресная, г) двухадресная, д) одноадресная, е)безадресная
Такая структура приводит к большей длине команды и неприемлема для прямой адресации операндов основной памяти. В компьютерах с RISC-архитектурой четырехадресные команды используются для адресации операндов, хранящихся в регистровой памяти процессора.
Можно установить, как это принято для большинства машин, что после выполнения данной команды, расположенной по адресу К (и занимающей L ячеек), выполняется команда из (K+L)-ой ячейки. Такой порядок выборки команды называется естественным. Он нарушается только специальными командами (передачи управления). В таком случае отпадает необходимость указывать в команде в явном виде адрес следующей команды.
В трехадресной команде (рис. 3.1, в) первый и второй адреса указывают ячейки памяти, в которых расположены операнды, а третий определяет ячейку, в которую помещается результат операции.
Можно условиться, что результат операции всегда помещается на место одного из операндов, например первого. Получим двухадресную команду (рис. 3.1, г), т.е. для результата используется подразумеваемый адрес.
В одноадресной команде (рис. 3.1, д) подразумеваемые адреса имеют уже и результат операции и один из операндов. Один из операндов указывается адресом в команде, в качестве второго используется содержимое регистра процессора, называемого в этом случае регистром результата или аккумулятором. Результат операции записывается в тот же регистр.
Наконец, в некоторых случаях возможно использование безадресных команд (рис. 3.1, е), когда подразумеваются адреса обоих операндов и результата операции, например, при работе со стековой памятью.
С точки зрения программиста, наиболее естественны и удобны трехадресные команды. Обычно в ЭВМ используется несколько структур и форматов команд разной длины. Приведенные на рис. 3.1. структуры команд достаточно схематичны. В действительности адресные поля команд большей частью содержат не сами адреса, а только информацию, позволяющую определить действительные (исполнительные) адреса операндов в соответствии с используемыми в командах способами адресации.