Исследование особенностей системы команд, форматов команд и способов адресации микропроцессора Intel 8086 с помощью языка Ассемблер и системных программ MASM, LINK, EXE2BIN, страница 2

При регистровой адресации операнд (далее, источник) размещается в самом регистре (например, MOV АХ, СХ). При непосредственной адресации источник задается в виде константы непосредственно в команде (например, MOV СХ,-50). При прямой адресации (например, MOV DX, CATS) источник находится в ячейке памяти, отмеченной в сегменте данных именем CATS. При косвенной адресации (например, MOV АХ, [ВХ]) источник находится в ячейке памяти, номер которой определяется содержимым регистра ВХ. При адресации косвенной с базированием (например, MOV АХ, [ВХ]+6) источник находится в ячейке памяти, номер которой определяется содержимым базового регистра ВХ плюс 6 (шесть - это смещение относительно базового значения). При адресации прямой с индексированием (например, MOV AL, TABL [DI]) источник находится в ячейке памяти, номер которой определяется содержимым индексного регистра DI плюс номер ячейки памяти, отмеченной в сегменте данных именем TABL (значение регистра DI - это смещение относительно адреса TABL). При адресации с базированием и индексированием (например, MOV AX,VEC[BX][DI]) источник находится в ячейке памяти, номер которой определяется содержимым базового регистра ВХ плюс содержимое индексного регистра DI плюс номер ячейки памяти, отмеченной в сегменте данных именем VEC (значение регистра ВХ - это смещение относительно адреса VEC, a значение регистра DI - это смещение относительно VEC и ВХ). Подробное описание режимов адресации операндов приведено в [2], С.72...75.

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

Структура типовой программы типа .СОМ на языке Ассемблер имеет видtext segment 'code'

assume CS:text, DS:text

org 100h

myproc proc

.…  ; текст программы

myproc endp

….   ; определение данных

text    ends

end myproc

Процесс ввода текста программы и ее отладка включает следующие этапы:

1. Создание и редактирование текста программы с именем PRIM

COPY CON PRIM.ASM <Enter>

Текст программы

 
 


<F6> <Enter>

(далее выполнить запуск операционной оболочки DC и редактирование “Edit” файла PRIM.ASM).

2. Трансляция программы на Ассемблере

MASM PRIM, PRIM, PRIM; <Enter>

В случае обнаружения ошибок в программе (Severe Errors) -исправить их, отредактировав файл PRIM .ASM, и повторить трансляцию.

3. Компоновка программы на Ассемблере

LINK PRIM, PRIM; <Enter>

Сообщение “Warning L4021 Not stack segment” не влияет на результаты компоновки.

4. Преобразование программы в формат .СОМ

EXE2BIN PRIM, PRIM.COM; <Enter>

5. Отладка программы отладчиком Code View

CV PRIM.COM <Enter>

Возможности отладчика приведены в Приложении 2.

Подробное описание структуры программы и этапов ее отладки приведены в [I], с 19... 25

2.4. Рекомендации по подготовке и выполнению работы

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

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

При подготовке таблиц №№ 2.2, 2.4, 2.6, 2.7 оставить больше места для ответов на вопросы и выводы.

3. Для исследования режимов адресации (пункт I бланка) необходимо выполнить следующее: а) запустить отладчик Code View для уже подготовленной программы PR.COM командой:

CV PR.COM <Enter>

б) пользуясь возможностями отладчика (Приложение 2), организовать  пошаговое выполнение каждой команды в следующем порядке:

·  заполнение значений машинного кода и операндов “ДО” операции;

·  выполнение операции (команды);