Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
FoxPro / Методички_по_БД / ОрганизациЭВМ и систем_Учеб_пособие.doc
Скачиваний:
170
Добавлен:
11.05.2015
Размер:
2.4 Mб
Скачать

Способ расширения кодов операции

В машинах с коротким словом практически невозможно в одном формате команды, т.е. при фиксированном назначении ее полей, кодировать большое число различных операций и одновременно иметь гибкую форму адресации операндов. Это противоречие в машинах с коротким словом преодолевается расширением кодов операций в команде. Для задания небольшой группы основных операций (арифметических и др.) используется короткий код операции, а получаемая при этом сравнительно большая адресная часть команды позволяет реализовать гибкую, например двухадресную с многими модификациями, адресацию. Для задания других операций используются более длинные (расширяемые) коды операций, при этом сокращаемая адресная часть оставляет возможность лишь для более простой, например одноадресной адресации операндов. В пределе расширяемый код операции занимает весь формат команды (безадресная команда).

Обычно в ЭВМ используется несколько структур и форматов команд разной длины.

Приведенные на рис. 2.2. структуры команд достаточно схематичны. В действительности адресные поля команд большей частью содержат не сами адреса, а только информацию, позволяющую определить действительные (исполнительные) адреса операндов в соответствии с используемыми в командах способами адресации.

2.4. Способы адресации информации в эвм

Существует два различных принципа поиска операндов в памяти: ассоциативныйиадресный.

Ассоциативный поиск операнда (поиск по содержанию ячейки) предполагает просмотр содержимого всех ячеек памяти для выявления кодов, содержащих заданный командой ассоциативный признак. Эти коды и выбираются из памяти в качестве искомых операндов.

Адресный поискпредполагает, что искомый операнд извлекается из ячейки, номер которой формируется на основе информации в адресном поле команды.

Ниже мы будем рассматривать только реализацию адресного принципа поиска операнда.

Следует различать понятия "адресный код" в команде АКи "исполнительный (физический) адрес" АИ.

Адресный код – это информация об адресе операнда, содержащаяся в команде.

Исполнительный адрес – это номер ячейки памяти, к которой производится фактическое обращение. В современных ЭВМ адресный код, как правило, не совпадает с исполнительным адресом.

Таким образом, способ адресации можно определить как способ формирования исполнительного адреса операнда АИпо адресному коду команды АК.

Способов адресации существует много. Параметры процесса обработки информации существенно зависят от выбранного способа адресации. Одни способы адресации позволяют увеличить объём адресуемой памяти без удлинения команды, но снижают скорость выполнения операции, другие ускоряют операции над массивами данных, третьи – упрощают работу с подпрограммами и т. д.

В системах команд современных ЭВМ часто предусматривается возможность использования нескольких способов адресации операндов для одной и той же операции. Для указания способа адресации в некоторых системах команд выделяется специальное поле в команде – «метод» (указатель адресации УА), (рис. 2.3,а). В этом случае любая операция может выполняться с любым способом адресации, что значительно упрощает программирование.

Если только небольшая часть операций должна работать с различными способами адресации, то в команде поле УА не выделяется, а способ адресации определяется по коду операции, длина которого при этом возрастает (рис. 2.3,б).

Способ адресации операнда определяется многими характеристиками. Многообразие способов адресации обусловлено сочетанием различных значений этих характеристик. Укажем некоторые из этих характеристик и рассмотрим наиболее употребляемые способы адресации.

Вспомним некоторые важные для этой темы понятия и введем необходимые обозначения.

Адресуемые в командах операнды хранятся в основной памяти (ОП) и регистровой памяти (РП), (рис. 2.4).

Каждая память (РП и ОП) имеет самостоятельную нумерацию ячеек (регистров), самостоятельные средства адресования.

Пусть:

m – длина многоразрядного двоичного кода, хранимого одной ячейкой (регистром);

nА– длина двоичного кода адреса ячейки (АИ);

M – емкость памяти, количество ячеек в адресуемом пространстве памяти. Обычно ячеек.

Регистровую память и ОП можно описать следующими параметрами:

МРП– кол-во регистров в РП; mРП– разрядность регистра;

АИРП – исполнительный адрес в РП;

АИОП – исполнительный адрес в ОП.

Соседние файлы в папке Методички_по_БД