Практическая работа Структура команд INTEL 80x86
учебно-методический материал на тему
Практическое освоение представления команд различных форматов, использующих различные режимы адресации операндов.
Скачать:
Вложение | Размер |
---|---|
pr_rab_strkom.doc | 97 КБ |
Предварительный просмотр:
Практическая работа
Структура команд INTEL 80x86
1. Цель работы : Практическое освоение представления команд различных форматов, использующих различные режимы адресации операндов.
2. Порядок выполнения работы :
2.1. Изучить теоретический материал.
Кодирование команд
С целью лучшего понимания архитектуры ЭВМ рассмотрим машинное представление команд различных форматов,
использующих различные режимы адресации операндов.
Рассмотрим это на примере операции сложения. Так как в системе команд ЭВМ, базирующихся на микропроцессорах фирмы Intel, результат операции записывается на место первого операнда, то данная операция будет иметь вид: a=a+b.
Для наглядного представления команды будем пользоваться ее символической записью, приближенной к записи на языке Ассемблер.
Общий формат ассемблерной команды имеет следующий вид:
[Метка:] Мнемоника_операции Операнд,Операнд [; Комментарий]
Метка - это идентификатор, присваиваемый адресу первого байта команды. Наличие метки в команде необязательно.
При отсутствии метки двоеточия быть не должно.
Во всех командах необходимо наличие мнемоники, обозначающей выполняемую команду.
Наличие и количество (один или два) операндов зависит от команды. В случае двух операндов они разделяются запятой,
при этом первым указывается операнд-приемник, а вторым - операнд-источник.
Примеры обозначения операндов при различных режимах адресации будут рассмотрены ниже.
Поле комментария предназначено для пояснения программы и может содержать любую комбинацию символов.
При отсутствии комментария точка с запятой может не ставиться.
Кодирование линейных команд
Пример 1.
Оба операнда находятся в регистрах общего назначения: (AX)=a; (CX)=b.
Для обращения к операндам используется прямая регистровая адресация.
Символическая запись команды:
ADD AX,CX
По условию операнды занимают полноразрядные регистры длиной 1 слово.
После выполнения команды в AX будет записана сумма содержимого регистров AX и CX,
а указатель команды IP увеличится на длину выполненной команды (2 байта) и будет указывать на первый байт следующей команды.
Здесь и далее представление информации будем давать в 16-м виде.
Если перед началом выполнения команды (AX)=0C34, (CX)=1020, (IP)=0012, то после ее выполнения (AX)=1C54, (CX)=1020, (IP)=0014.
Пример 2.
Операнд a находится в регистре AX, b - непосредственный операнд, равный 56B3h.
Символическая запись команды:
ADD AX,56B3h
Данное представление команды построено по общей схеме команд суммирования
любого регистра с непосредственным операндом. Так как в нашем случае непосредственный
операнд суммируется с содержимым регистра AX, то команда может быть записана в специальном
формате работы с регистром- аккумулятором и иметь меньшую длину:
для операнда 56B3h.
Пусть перед началом выполнения команды (AX)=03A4, (IP)=0012.
Тогда результатом выполнения команды ADD AX,56B3h будет: (AX)=5A57, (IP)=0016,
а результатом выполнения команды ADD AL,B3h будет: (AX)=0357, (IP)=0015,
если команда закодирована по общей схеме, и (IP)=0014 - если по схеме суммирования с аккумулятором.
Отметим, что в последнем случае действие выполняется лишь с младшим байтом регистра AX,
то есть с регистром AL, и его результат не влияет на содержимое AH.
Пример 3.
Операнд a находится в AX, операнд b - в оперативной памяти по прямому адресу 3474h.
Символическая запись команды:
ADD AX,[3474h]
Пусть перед выполнением команды (AX)=1234, [3474h]=1A, [3475h]=25, (IP)=0012.
Напомним, что адрес слова в оперативной памяти - это адрес его младшего байта.
Тогда после выполнения команды: (AX)=374E, (IP)=0016.
Пример 4.
Если операнд a находится в оперативной памяти по прямому адресу 3474h, а операнд
b представляет собой непосредственный операнд, равный 56B3h, то символическая запись команды имеет вид:
ADD [3474h],56B3h
При тех же исходных данных, что и в примере 3, результатом операции будет: [3474]=CD, [3475]=7B, (IP)=0018.
Внимание: для выполнения задания в отладчике Debug значение 56B3h необходимо присвоить регистру DX. Тогда
символическая запись имеет вид:
MOV DX,56B3
ADD [3474],DX
Пример 5.
Операнд a находится в слове оперативной памяти, адрес которого хранится в регистре BX,
а операнд b - в регистре AX. В этом случае адресация операнда a - регистровая косвенная.
Символическая запись команды:
ADD [BX],AX
Если перед выполнением команды (AX)=1234, (BX)=3474, [3474]=D7, [3475]=11, (IP)=0012,
то в результате выполнения команды произойдут следующие изменения: [3474]=0B, [3475]=24, (IP)=0014.
2.2. Решить примеры согласно номеру варианту в соответствии с примерами, приведенными в теретическом материале.
Решение примеров проводить в отладчике Debug (см.Пример 1 - протокол 4).
Пример 1
Условие задания
ADD AX,CX
Перед началом выполнения команды (AX)=0C34, (CX)=1020, (IP)=0012
После ее выполнения (AX)=1C54, (CX)=1020, (IP)=0014.
Протокол 4
2.3. Подготовить отчет.
Условие задания | |||||
1 | 2 | 3 | 4 | 5 | 6 |
ADD AX,CX | ADD AX,56B3h |
| ADD AX,[3474h] | ADD [3474h],56B3h |
|
Вариант | |||||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
(AX)=0B45 | (AX)=0C56 | (AX)=0D67 | (AX)=0E78 | (AX)=0F89 | (AX)=0A90 | (AX)=0BA1 | (AX)=0CB2 | (AX)=0B54 | (AX)=0C76 |
11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
(AX)=0D89 | (AX)=0E9A | (AX)=0F27 | (AX)=0A19 | (AX)=0B28 | (AX)=0C37 | (AX)=0D46 | (AX)=0E6A | (AX)=0F7B | (AX)=0A91 |
21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
(AX)=04B5 | (AX)=05C6 | (AX)=06D7 | (AX)=07E8 | (AX)=08F9 | (AX)=09A0 | (AX)=0AB1 | (AX)=0BC2 | AX)=05B4 | (AX)=07C6 |
31 | 32 | 33 | 34 | ||||||
(AX)=08D9 | (AX)=09EA | (AX)=02F7 |
По теме: методические разработки, презентации и конспекты
Командующие в Отечественной войне 1812 года.
Небольшие характеристики русских и французских командующих, принимавших участие в войне 1812 года. Действия их в основных сражениях....
лекция по Word"Команды меню Вставка"
описание материала, описание работы в текстовом редакторе Word...
Тематический тренинг Intel "Элементы"
Сертификат выпускника курса "метод проектов"...
Методическое пособие по выполнению практического занятия №2 "Работа с основными командами операционной системы" по дисциплине "Операционные системы и среды" для специальности 230113 Компьютерные системы и комплексы
Методическое пособие создано для реализации основной профессиональной образовательной программы в соответствии с ФГОС по специальности СПО 230113 Компьютерные системы и комплексы (базовой подгото...
Методическое пособие по выполнению практического занятия №2 "Работа с основными командами в операционной системе (на примере MS-DOS)" по дисциплине "Операционные системы" для специальности 230115 Программирование в компьютерных системах
Методическое пособие создано для реализации основной профессиональной образовательной программы в соответствии с ФГОС по специальности СПО 230113 Компьютерные системы и комплексы (базовой подгото...
Сценарий визитной карточки команды КВН "Дай 5" МАОУ «СОШ № 127» г. Перми на фестивале педагогических команд КВН «ПЕДвесна»
Вашему вниманию представляю сценарий визитной карточки команды КВН "Дай 5" МАОУ "СОШ № 127 с углублённым изучением отдельных предметов" города Перми...
Сценарий музыкального конкурса «Родительское собрание» команды КВН «Дай 5» МАОУ «СОШ № 127 с углублённым изучением отдельных предметов» г. Перми на фестивале педагогических команд КВН «ПЕДвесна»
представляю Вашему вниманию сценарий музыкального конкурса «Родительское собрание» команды КВН «Дай 5» МАОУ «СОШ № 127 с углублённым изучением отдельных предметов» г. Перми на...