Студопедия — Код операции
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Код операции






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

· w – размера операнда (7-й бит), при w = 0, размер операнда – байт, при w = 1, размер операнда – слово.

· направления передачи результата для двухместной команды (d – 6-й бит);

1. при d = 1 – адресом приемника является РОН, заданный полем reg постбайт,

2. при d = 0 – адресом приемника является адрес памяти;

3. в одноместной команде используется только источник и 6-й бит байта кода операции (s= 1 ) определяет автоматическое расширение байта данных до размера слова.

Возможен однобайтовой вариант одноместной команды, в котором адрес данных (номер РОНа) размещается в трех младших разрядах кода операции.

Постбайт.

Это необязательный элемент команды. Задает один (для одноадресной команды) или два адреса операндов, один из которых используется и как адрес результата.

               
  md r/r r/m  
Рис. 2.6. Структура постбайта

 

Постбайт (рис. 2.6) содержит 3 поля:

· md – поле режима адресации,

· r/r – поле адреса регистра,

· r/m – поле адреса второго регистра или кода алгоритма вычисления адреса памяти.

Поле md. Это поле режима адресации.

Задает тип команды:

· регистр/регистр (r/r);

· регистр/память (r/m).

Для команд регистр/память задает процедуру вычисления адреса операнда в памяти:

· md =00 – режим адресации r/m без использования смещения,

· md =01 – режим адресации r/m с использованием смещения 1 байт),

· md =10 – режим адресации r/m с использованием смещения 2 байт),

· md =11 – режим адресации r/r.

Задании md ¹ 11 определяет команду типа регистр память. В этом случае поле r/r содержит номер РОНа, в котором находится один из операндов, а поле r/m, – номер алгоритма вычисления адреса памяти, по которому хранится второго операнда.

Значения поля r/m от 000 до 011, задают формулы вычисления адреса памяти второго операнда по 3 компонентам: B, X и disp.

Значения поля r/m от 100 до 111, задают формулы вычисления адреса памяти второго операнда по двум компонентам: B и disp.

Количество выбираемых смещений disp, расположенных после постбайта, определяется по полю постбайта – md.

Исключение: В адресации операндов, в качестве исключения, имеется возможность задавать адрес операнда в памяти прямым 16-ти разрядным адресом. Признаком прямой адресации является комбинация значений md = 00 и r/m=110 (в таблице 1 выделен жирным шрифтом).

Количество выбираемых смещений disp, расположенных после постбайта, определяется по полю постбайта – md.

В таблице 1. представлены все формулы вычисления адресов РОН и ячеек памяти в зависимости от значений полей постбайта: md, r/r, r/m.

На рис. 2.7 представлена структура команд МП Intel в реальном режиме и схемы вычисления адресов операндов.

 

Таблица 1.Постбайтовые режимы адресации МП IA-16
Поле r/m Поле md
       
w = 0 w = 1
  DS: [bx + si] DS: [bx + si + disp(1 байт)] DS: [bx + si + disp(2 байт)] al ax
  DS: [bx + di] DS: [bx + di + disp(1 байт)] DS: [bx + di + disp(2 байт)] cl cx
  SS: [bp + si] SS: [bp + si + disp(1 байт)] SS: [bp + si + disp(2 байт)] dl dx
  SS: [bp + di] SS: [bp + di + disp(1 байт)] SS: [bp + di + disp(2 байт)] bl bx
  DS: [si] DS: [si + disp(1 байт)] DS: [si + disp(2 байт)] ah si
  DS: [di] DS [di + disp(1 байт)] DS [di + disp(2 байт)] ch di
  DS: [disp-2 ба-та] SS: [bp + disp(1 байт)] SS: [bp + disp(2 байт)] dh bp
  DS: [bx] DS [bx + disp(1 байт)] DS [bx + disp(2 байт)] bh bx

 

 

  Структура команд МП Intel в реальном режиме.
0, 1 байт 1 байт 0, 1 байт 0, 1, 2 байта 0, 1, 2 байта  
Префикс Код операции. Постбайт Disp # d  
           
  md r r/M        
  2 бита 3 бита 3 бита        
если     r/M ≤ 11, то – команда типа r/M; базовая индексная адресация; 1-й операнд находится в регистре, указанном полем r, адрес M вычисляется как: (B)+(X)+ #d16, где В и Х задаются кодом поля r/M.
при: 00 ü Disp – отсутствует
  01 ý Disp = 1 байт
  10 þ Disp = 2 байта
При   Команда типа r/r, операнды находятся в регистрах, указанными полями r и r/M.
 
Вариант относительно-индексной адресации памяти    
если     r/M ≥ 100, то команда типа r/M, первый операнд находится в регистре, указанном полем r, адрес M вычисляется как: (B)+ Disp, где: B– задается кодом поля r/Mпостбайта.
при 00 ü Disp – отсутствует
  01 ý Disp = 1 байт
  10 þ Disp = 2 байта
       
Исключение: при md=00 и r/M = 110, адрес задается прямым 16-ти битным смещением (#d16).
Выбор сегмента: при указании в качестве компоненты адреса – (bp), используется сегмент стека (SS), иначе – сегмент данных (DS)
Рис.2.7. Структура команд МП Intel в реальном режиме и схемы вычисления адресов операндов.
                     

Вопросы для самопроверки:

1. Структура команд в МП IA-16,

2. Назначение префикса в командах МП IA-16,

3. Назначение постбайта в командах МП IA-16,

4. Поля постбайта в командах МП IA-16,

5. Поля постбайта в командах МП IA-16,

6. Тип сегмента используемого по умолчанию при выборке команд в МП IA-16,

7. Тип сегмента используемого по умолчанию при выборке операнда в МП IA-16,

8. Тип сегмента используемого по умолчанию при работе со стеком в МП IA-16,

9. Тип сегмента используемого по умолчанию при работе с командами обработки строк в МП IA-16,

10. Способы замены сегментов, используемых по умолчанию.

11. Назначение постбайта в МП IA-16,

12. Основные поля постбайта в МП IA-16,

13. Назначение поля md постбайта в МП IA-16,

14. Назначение поля r/r постбайта в МП IA-16.







Дата добавления: 2014-11-12; просмотров: 1258. Нарушение авторских прав; Мы поможем в написании вашей работы!



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Ситуация 26. ПРОВЕРЕНО МИНЗДРАВОМ   Станислав Свердлов закончил российско-американский факультет менеджмента Томского государственного университета...

Различия в философии античности, средневековья и Возрождения ♦Венцом античной философии было: Единое Благо, Мировой Ум, Мировая Душа, Космос...

Характерные черты немецкой классической философии 1. Особое понимание роли философии в истории человечества, в развитии мировой культуры. Классические немецкие философы полагали, что философия призвана быть критической совестью культуры, «душой» культуры. 2. Исследовались не только человеческая...

Случайной величины Плотностью распределения вероятностей непрерывной случайной величины Х называют функцию f(x) – первую производную от функции распределения F(x): Понятие плотность распределения вероятностей случайной величины Х для дискретной величины неприменима...

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

Уравнение волны. Уравнение плоской гармонической волны. Волновое уравнение. Уравнение сферической волны Уравнением упругой волны называют функцию , которая определяет смещение любой частицы среды с координатами относительно своего положения равновесия в произвольный момент времени t...

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия