Лекции.Орг


Поиск:




Категории:

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

 

 

 

 


Пересылка из регистра в регистр




1). DX, CX=CD34

2). BX, AX=B389

3). AX, CX=1C65

4). DX, SI=1F3C

5). AX, BX=30B9

6). AH, DL=67

7). AL, BL=20

8). DX, DI=3E3F

9). SI, DI=0A30

10). AX, BP=101E

11). DH, CH=6A

12). BP, DI=356D

 


Практическая работа № 4

 

Команды передачи данных и управления 2 часть

Цель работы: Изучить работу процессора при выполнении команд передачи данных PUSH, POP и команд передачи управления CALL, RET, использующих стек.

Задание:

1. Запустить программу Debug:

выполнить задание №1 с командами передачи данных и управления PUSH и POP.

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

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

1.3. Восстановить значения указанных в приложении 1 регистров.

1.4. Составить ассемблерную программу, объединив пункты 1, 2, 3.

1.5. Ввести программу в сегмент кодов со смещением 114h.

1.6. Просмотреть в сегменте кодов дамп вашей программы.

Выполнить программу, просмотрев содержимое стека после сохранения и восстановления информации, сохранить и распечатать ход выполнения задания.

2. Изучение работы команд Call и Ret.

2.1 Вызвать подпрограммы внутри данного сегмента и внутри подпрограммы, расположенные по относительным адресам, заданным в приложении 2, записав соответствующие команды в виде ассемблерных.

2.2 Написать подпрограмму, складывающую значения в регистрах из приложения 2. Значения переслать в регистры с помощью соответствующих ассемблерных команд. Сложение осуществляется командой ADD op1, op2.

2.3 Написать подпрограмму, вычитающую значения в регистрах из приложения 2. Значения переслать в регистры с помощью соответствующих ассемблерных команд. Вычитание осуществляется командой SUB op1,op2.

2.4 Ввести программу в сегмент кодов со смещение 100h.

2.5 Просмотреть содержимое стека после выполнения каждой из подпрограмм, сохранить и распечатать ход выполнения задания.

2.6 Составить ассемблерную программу и ввести программу в сегмент кодов со смещением 100h.

2.7 Посмотреть в сегменте кодов дамп программы.

2.8 Выполнить программу, просмотрев содержимое стека после вызова подпрограмм. Сохранить и распечатать результат работы.

Содержание отчета:

1. Цель работы.

2. ход выполнения работы:

- выполненное по пунктам каждое задание

 

 

Практическая работа № 5

 

Выполнение арифметических команд 1 часть и 2 часть.

Цель работы: изучить работу процессора при выполнении арифметических команд(сложение, вычитание, умножение, деление) для различных способов адресации операндов.

Задание:

Произвести запуск программы- отладчика Debug.

Выполнить арифметические команды.

1. Изучение работы команды сложения ADD над знаковыми и беззнаковыми операндами, адресованными разными способами.

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

2). Записать в указанную ячейку памяти (если необходимо) заданное в приложении 1 значение операнда.

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

4). Получить сумму заданных операндов, записав соответствующую команду в виде ассемблерной.

5). Составить ассемблерную программу и ввести программу в сегмент кодов со смещением 100h.

6). Посмотреть в сегменте кодов дамп программы.

7). Выполнить программу, просмотрев результат в сегменте данных если это необходимо. Сохранить и распечатать результат работы.

2. Изучение работы команд вычитания SUB над знаковыми и беззнаковыми операндами, адресованными разными способами.

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

2). Записать в указанную ячейку памяти (если необходимо) заданное в приложении 1 значение операнда.

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

4). Получить разность заданных операндов, записав соответствующую команду в виде ассемблерной.

5). Составить ассемблерную программу и ввести программу в сегмент кодов со смещением 135h.

6). Посмотреть в сегменте кодов дамп программы.

7). Выполнить программу, просмотрев результат в сегменте данных, если это необходимо. Сохранить и распечатать результат работы.

 

3. Изучение работы команд умножения MUL и IMUL над знаковыми и беззнаковыми операндами, адресованными разными способами.

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

2). Записать в указанную ячейку памяти (если необходимо) заданное в приложении 1 значение операнда.

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

4). Получить произведение заданных операндов, записав соответствующую команду в виде ассемблерной.

5). Составить ассемблерную программу и ввести программу в сегмент кодов со смещением 200h.

6). Посмотреть в сегменте кодов дамп программы.

7). Выполнить программу, просмотрев результат в сегменте данных, если это необходимо. Сохранить и распечатать результат работы.

4. Изучение работы команд умножения MUL и IMUL над знаковыми и беззнаковыми операндами, адресованными разными способами.

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

2). Записать в указанную ячейку памяти (если необходимо) заданное в приложении 1 значение операнда.

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

4). Получить частное заданных операндов, записав соответствующую команду в виде ассемблерной.

5). Составить ассемблерную программу и ввести программу в сегмент кодов со смещением 110h.

6). Посмотреть в сегменте кодов дамп программы.

7). Выполнить программу, просмотрев результат в сегменте данных, если это необходимо. Сохранить и распечатать результат работы.

 

 

Контрольные вопросы:

1. Как представлены отрицательные числа в микропроцессоре?

2. О чём говорит состояние флага CF при сложении (вычитании) беззнаковых чисел?

3. О чём говорит состояние флага ОF при сложении (вычитании) беззнаковых чисел?

4. Какой делитель, кроме нуля, может часто вызывать прерывание и почему (исходя из того, что частное значительно меньше делимого)?

 

Содержание отчета:

1. Цель работы.

2. Ответы на контрольные вопросы.

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

4. Содержимое сегмента кодов и данных при работе с памятью.


Практическая работа № 6

 





Поделиться с друзьями:


Дата добавления: 2016-10-06; Мы поможем в написании ваших работ!; просмотров: 613 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Начинать всегда стоит с того, что сеет сомнения. © Борис Стругацкий
==> читать все изречения...

4313 - | 4115 -


© 2015-2026 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.