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

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

Код операции






Это единственный из обязательных элементовкоманды (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; просмотров: 1214. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

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

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

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

Искусство подбора персонала. Как оценить человека за час Искусство подбора персонала. Как оценить человека за час...

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

Весы настольные циферблатные Весы настольные циферблатные РН-10Ц13 (рис.3.1) выпускаются с наибольшими пределами взвешивания 2...

Хронометражно-табличная методика определения суточного расхода энергии студента Цель: познакомиться с хронометражно-табличным методом опреде­ления суточного расхода энергии...

ОЧАГОВЫЕ ТЕНИ В ЛЕГКОМ Очаговыми легочными инфильтратами проявляют себя различные по этиологии заболевания, в основе которых лежит бронхо-нодулярный процесс, который при рентгенологическом исследовании дает очагового характера тень, размерами не более 1 см в диаметре...

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