Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лр№5 Арифметич команды_передел.doc
Скачиваний:
12
Добавлен:
01.03.2025
Размер:
111.62 Кб
Скачать

3. Домашнее задание.

Составить фрагмент программы в соответствии с вариантом домашнего задания и оформить его в виде таблицы 1.

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

  1. Назначение команды MOV.

  2. Назначение команды XLAT, LEA.

  3. Назначение команды XCHG.

  4. Назначение команд SAHF, LAHF.

  5. Чем отличаются команды ADD и ADC?

  6. Где находится второй множитель в командах умножения?

  7. В каких регистрах находится результат после умножения?

  8. В каких регистрах находится результат после деления?

Литература

  1. Майко Г.В. «Ассемблер для IBM PC»: - М.: «Бизнес-Информ», «Сирин», 1999г. – 212с.

  2. Юров В., Хорошенко С. «Аssembler»: учебный курс – СПб: Питер Ком, 1999г. – 672 с.

Варианты домашнего задания

вариант

задача

1

  • по адресу DS:0015, 0010 записать число 02;

  • в регистр BX записать число 2А;

  • сложить эти числа;

  • результат разделить на 20 и записать в ячейку памяти со смещением [0015].

2

  • в регистр BX записать число 00А2;

  • увеличить его на 10;

  • по адресу со смещением DS:0015 записать число 82;

  • из содержимого ВХ вычесть число записанное [0015];

  • результат получить в регистре DX.

3

  • по относительному адресу [0100] записать число 2А;

  • по относительному адресу [0105] записать число 08;

  • разделить содержимое [0100] на значение числа по адресу [0105];

  • результат записать по адресам [0106 - 0107].

4

  • в ячейку памяти со смещением [0020] записать число 2А;

  • в регистр DX записать число 43;

  • сложить между собой эти числа;

  • умножить его на 5;

  • увеличить на 1;

  • результат записать в регистр СХ.

5

  • в регистр DX записать число 1А58;

  • получить дополнительный код этого числа;

  • уменьшить полученное число на 1;

  • умножить на 3;

  • результат записать в ячейку памяти со смещением [0100].

6

  • в регистр С1 записать число 1А;

  • в регистр Dl записать 09;

  • из числа, записанного в регистре С1, вычесть число, записанное в регистре Dl;

  • полученное значение умножить на 3;

  • увеличить результат на 1;

  • результат записать в ячейку со смещением [0030].

7

  • в ячейку памяти со смещением [0010] записать число 09;

  • в регистр Bl записать число 2А;

  • сложить содержимое ячейки памяти и регистра Bl;

  • результат разделить на 03;

  • увеличить на 1 и записать в ячейку памяти со смещением [0020].

8

  • в ячейку со смещением [0030] записать число 1А3;

  • в регистр BX записать число А1F2;

  • записать последовательно в стек (BX) и [0030];

  • и в процессе чтения из стека обменять содержимое регистра и ячейки памяти.

9

  • в ячейки памяти со смещением [0200] и [0202] записать числа А2 и 3F;

  • вычесть ([0200]) - ([0202]);

  • результат разделить на 3А;

  • результат увеличить на 1 и записать в ячейку со смещением [0200];

10

  • в регистр ВХ записать число А219;

  • в ячейку памяти со смещением [0010] число 23;

  • из регистра ВХ вычесть число в [0010];

  • умножить на 5;

  • уменьшить на 1;

  • результат записать в СХ

11

  • в регистр АХ записать число В90С;

  • в регистр ВХ – 340А;

  • сложить этих два числа;

  • результат уменьшить на 1;

  • умножить на 3F;

  • результат записать в ячейку памяти со смещением [0010].

12

  • в ячейку со смещением [0010] записать число 43;

  • в регистр Вl записать число 54;

  • сложить между собой эти числа;

  • результат умножить на 5;

  • результат записать в ячейку памяти [0020]

13

  • в регистр Сl записать число 09;

  • в регистр Dl записать число 23;

  • умножить между собой эти два числа;

  • результат сложить с числом 2А;

  • результат записать в ячейку памяти со смещением [0010].

14

  • в ячейку памяти со смещением [0010] записать число 54;

  • в регистр Dl записать число 06;

  • сложить между собой эти два числа;

  • результат умножить на 3;

  • результат записать в ячейку памяти [0010]

15

  • в регистр АХ записать число 12;

  • в регистр СХ записать число А9;

  • вычесть из числа, записанного в регистре СХ число, записанное в регистре АХ;

  • результат умножить на 4;