- •5. Архитектура компьютерных устройств
- •5.1. Понятие архитектуры
- •5.2. Выбор структуры и формата команды
- •5.3. Способы адресации операндов
- •5.3.1. Прямая адресация
- •5.3.2. Прямая регистровая адресация
- •5.3.3. Непосредственная адресация
- •5.3.4. Косвенная адресация
- •5.3.5. Косвенная регистровая адресация
- •5.3.6. Регистровая автоинкрементная адресация
- •5.3.7. Индексная адресация
- •5.3.8. Базовая адресация
- •5.3.9. Базово-индексная адресация
- •5.4. Адресация с использованием программного счетчика
- •5.4.1. Непосредственная адресация.
- •5.4.2. Абсолютная адресация
- •5.4.3. Относительная адресация
- •5.4.4. Косвенная относительная адресация
- •5.4.5. Стековая адресация
- •5.5. Типовые форматы команд компьютерных систем
- •5.5.1. Команды формата “регистр-регистр”(rr)
- •5.5.2.Команды формата “региcтр-индексируемая ячейка памяти” (rx)
- •5.5.3. Трёхадресные команды формата
- •5.5.4. Команды формата “память - непосредственный операнд” (si)
- •5.5.5. Команды формата “память - память” (ss)
- •5.6. Проектирование компьютерных устройств. Система команд.
- •5.6.1. Форматы команд персональных компьютеров
- •5.6.3. Двухадресные команды со смещением (1810вм86)
- •5.6.4. Двухадресные команды с непосредственным операндом
- •5.6.5. Одноадресные команды со смещением
- •5.6.6. Команды укороченного формата
- •5.7. Система команд компьютера
- •5.7.1. Выбор системы команд
- •5.7.2. Фазы выборки, дешифрации и выполнения команды
- •5.7.3. Команды арифметических операций
- •5.7.4. Команды передачи управления
- •5.7.5. Команды обращения к подпрограммам
5.6.1. Форматы команд персональных компьютеров
Существенной особенностью архитектуры персональных компьютеров (ПК) является развитая система адресации, придающая программам большую эффективность и гибкость. Основные форматы, применяемые в компьютерных устройствах с фиксированной архитектурой, имеют следующую структуру.
Одноадресные команды (см. рис. 5.26 а) предполагают выполнение операций, как с полусловами, так и со словами полной длины. Как правило, признаком полуслова является единичный бит в левом разряде поля кода операции, используемый управляющим автоматом процессора при дешифрации.
П
ример:
В отличие от
одноадресных двухадресные команды (см.
рис. 5.26 б) содержат в своем составе поля,
необходимые для адресации первого и
второго операндов. При этом подполе
кодирует способ адресацииi–го
операнда, а в подполе
указывается номер РОН, через который
осуществляется обращение к памяти.
Единица в левом разряде поля КОП также,
что и в предыдущем формате, является
признаком операций с полусловом.
В общем случае в рассмотренных выше структурах указатель адреса определяет следующие способы адресации рис. 5.27.

![]()

![]()
Рис. 5.27
В системах команд ПК используются также и безадресные команды, которые содержат только поле КОП, определяющее функцию процессора (например: сдвиг, задание режима работы компьютера и т.д.).
5.6.3. Двухадресные команды со смещением (1810вм86)
Команды данного формата имеют следующую структуру рис.5.28:

Рис. 5.28
В данной структуре поля disp L и disp H есть младший и старший байты смещения, хотя в общем случае наличие этих полей в составе команды является не обязательным.
Первый байт команды содержит поле кода операции, а также два однобитных поля - d и w. При этом разряд d определяет направление передачи информации в системе: при d=1 выполняется передача операнда в процессор, при d=0 - пересылка данных из процессора. Разряд w - задаёт формат операнда. Так, если w=0, операнд имеет длину 0,5 слова, при w=1 процессор обрабатывает полные слова машины.
Второй байт команды (обычно называют постбайтом адресации) содержит модификатор смещения mod, который интерпретируется следующим образом:

Трёхразрядное поле reg кодирует один из 8-ми регистров процессорного модуля (табл.5.1):
Табл. 5.1
|
reg |
w=0 |
w=1 |
reg |
w=0 |
w=1 |
|
000 001 010 011 |
AL CL DL BL |
AX CX DX BX |
100 101 110 111 |
- - - - |
УС (SР) Рг. баз. (ВР) Рг. инд. ист. (SI) Рг. инд. пр. (DI) |
Таким образом,
если mod=11,
то первый операнд содержится в регистре,
указанном в поле reg,
второй – в регистре, указанном в поле
r/m.
При mod
11
второй операнд содержится в памяти, и
способ её адресации определяется полемr/m
табл.5.2.
Табл. 5.2
-
r/m
Аисполнительный
000
001
010
011
100
101
110
111
Аисп = (ВХ)+(SI)+disp
Aисп= (BX)+(DI)+disp
Aисп= (BP)+(SI)+disp
Аисп= (BP)+(DI)+disp
Aисп= (SI)+disp
Аисп= (DI)+disp
Аисп= (BP)+disp
Аисп= (BX)+disp



