Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР_6-7.doc
Скачиваний:
8
Добавлен:
27.09.2019
Размер:
169.98 Кб
Скачать

3.8. Задания для самостоятельной работы

  1. Разработайте подпрограмму сложения трехбайтных целых двоичных чисел. Первое число находится в памяти данных в ячейках 20H (младший байт - МлБ), 21H (средний байт – СрБ) и 22H (старший байт – СтБ). Второе число находится в регистрах R3 (МлБ), R4 (СрБ) и R5 (СтБ). Результат сложения поместите в ячейки ПД с адресами 30H (МлБ), 31H (СрБ), 32H (СтБ). Разработайте 2 варианта программы

А) с использование прямой адресации ячеек ПД

Б) с использованием косвенной адресации ячеек ПД.

Программы разместите в файлах с именами, например, sum_1.asm и sum_2.asm. Получите файлы с расширением .obj и .hex. Проверьте работу программ с помощью симулятора. Результаты работы программ занесите в таблицы по форме табл. 4.3. Проверьте правильность работы программ «вручную» или с помощью калькулятора.

  1. Разработайте подпрограмму вычитания трехбайтных целых двоичных чисел. Первое число (уменьшаемое) находится в регистрах R5 (МлБ), R6 (СрБ) и R7 (СтБ). Второе число (вычитаемое) находится в ячейках памяти данных с адресами 38H (МлБ), 39H (СрБ) и 3AH (СтБ). Результат вычитания поместите в регистры DPTR (СрБ и МлБ) и B (СтБ). Разработайте 2 варианта программы

А) с использованием прямой адресации ячеек ПД

Б) с использованием косвенной адресации ячеек ПД.

Программы разместите в файлах с именами, например, sub_1.asm и sub_2.asm. Получите файлы с расширением .obj и .hex. Проверьте работу программ с помощью симулятора. Результаты работы программ занесите в таблицы по форме табл. 5. Проверьте правильность работы программ «вручную» или с помощью калькулятора.

  1. Разработайте подпрограмму умножения двухбайтного целого числа на однобайтное с помощью команды MUL AB. Двухбайтное число располагается в памяти данных в ячейках 30H (МлБ) и 31H (СтБ), а однобайтное находится в регистре R2. Результат (трехбайтное число) разместите следующим образом младший и средний байты – в регистре DPTR, а старший байт – в регистре R7.

Для разработки программы используйте алгоритм умножения «столбиком» чисел в десятичной системе, например

5 8 - множимое

* 7 - множитель

--------------------------------------

5 6 - 1-е частичное произведение

+

3 5 - 2-е частичное произведение

-----------------------------------------------------

4 0 6 - результат

Подпрограмму с именем MUL разместите в файле mul.asm. Получите файлы mul.obj и mul.hex. Исследуйте работу подпрограммы при различных значениях исходных данных (входных параметрах). Результаты разместите в табл. 9.

Таблица 9

Исходные значения

Получено

Число 1

Число 2

Практически

Теоретически

FFFFH

FFH

FEFF01H

F000H

0FH

0E1000H

5555H

AAH

38AA72H

Теоретические значения результатов умножения получены с помощью калькулятора.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]