Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум КТіООР.doc
Скачиваний:
4
Добавлен:
09.11.2019
Размер:
4.21 Mб
Скачать

IDlV-цілочисельне ділення

Цією командою виконується знакове ділення вмісту акумулятора на операнд. При однобайтовому діленні вміст регістра АХ інтерпретується як 16-розрядне ділене із знаком. При двобайтовому розподілі 32-розрядне ділене із знаком знаходиться в парі регістрів DX,AX, причому старші шістнадцять бітів містить регістр DX. Операнд може бути записаний в регістр загального призначення або комірку пам'яті, вміст яких залежно від типу операції інтерпретується як 8- або 16-бітовий дільник із знаком.

У разі однобайтового ділення частка записується в регістр AL, а залишок — в регістр. АН. При двобайтовому діленні регістри АХ і DX використовуються для зберігання частки і залишку відповідно. Обидва результати розглядаються як числа із знаком.

Після виконання командии IDIV стан регістру прапорців процесора не визначено. Якщо значення частки виходить за діапазон [-127+127] при однобайтовому діленні і [-32767+32767] при двобайтовому або при спробі ділення на нуль, тоді автоматично генерується переривання типу 0. В цьому випадку частка і залишок не визначені.

Приклад. Хай регістр АХ містить число 0049Н, регістр BL — число 12Н і виконується команда IDIV BL. Частка від ділення (04Н — 49Н/12Н) записується в регістр AL, а залишок 01Н —в регістр АН.

Розглянемо випадок, коли регістри DX і АХ містять коди FFFFH і F043H, що розглядаються як одне 32-бітове шіснадцяткове число FFFFF043H, регістр ВР містить число 0240Н і виконується команда IDIV ВР. Частка від ділення (FFFAH=FFFFF043H/0240H) записується в регістр АХ, а залишок (FDC3H) — в регістр DX.

Після виконання команди змінюються значення прапорів: OF; SF; ZF; AF; PF, CF.

2.6.2. Варіанти завдань

Початковий стан регістрів:АX=72DE BX=0006 DX=5EAC SI=0004

1. AND [SI+07], AX OR [SI+BX], DL XOR DX, [SI+14] NOT WORD [BX+09]

2. OR [BX+SI+03], BH XOR DX,[SI+16] NOT WORD [BX] AND [SI+05], DX

3. XOR DX, [SI+14] NOT WORD AX AND AL,[SI+06] OR [BX+SI], DL

4. NOT WORD [BX+09] AND [SI+05], DX OR BYTE [BX],73 XOR DX, [SI]

5. AND AH,[SI] NOT WORD [BX] OR [BX+04], DL XOR DX, [SI+04]

6. OR [SI+BX+10],DL XOR DX, [04] AND AL,[SI+BX] NOT WORD [SI]

7. XOR DX,[SI+16] AND [SI+05], DX OR BYTE [SI],12 NOT WORD AX

8. AND AL,[SI+06] NOT WORD [SI] OR [BX+04], DL XOR DX, [SI+03]

9. OR BYTE [BX],74 XOR DX, [BX+04] AND [SI+BX], DX NOT WORD [BX+09]

10. NOT WORD AX AND [SI+05], DX OR BYTE [BX],14 XOR DX, [SI]

11. AND [SI+05], DX NOT WORD [BX] OR [BX+04], DL XOR DX, [SI+04]

12 OR [BX+SI+04], DL XOR DX, [04] AND AL,[SI+BX] NOT WORD [SI]

13. XOR DX, [SI+04] AND [SI+05], DX OR BYTE [SI],74 NOT WORD AX

14. NOT WORD [BX] AND [SI+05], DX OR BYTE [BX],22 XOR DX, [SI]

15. AND AL,[SI+06] AND [SI+BX], DX NOT WORD [BX+09] NOT WORD [SI]

16. OR BYTE [SI],12 NOT WORD AX AND AL,[SI+06] AND AL,[SI+BX]

Початковий стан регістрів:АХ=84С3 BX=0004 DX=0005 CX=0129 SI=0004

1. ADD [SI+07],CX SUB AX,[SI] NEG AXDEC BYTE [BX+SI+09] INC DL

2. ADD [BX+SI+06],CH SUB AX,[SI] NEG word [SI] INC DH DEC BYTE [BX]

3. SUB AX,[BX+12] NEG AX INC AX ADD DH, [DX+05] DEC BX

4. ADD [SI+07],CX UB AX,[BX] NEG BX DEC BYTE [BX+SI+09] INC DL

5. ADD [BX+SI+06],CH SUB AX,[BX] NEG word [SI] INC DH DEC BYTE [BX]

6. INC DL SUB CX, [SI+10] NEG AX DEC BYTE [BX+02] ADD [SI+03],CX

7. DEC BYTE [SI+09] ADD [BX+03],CX INC BX SUB BP,[BX+08] NEG WORD [SI+BX]

8. ADD [SI+07],CX SUB AX,[BX] NEG AX DEC BYTE [BX+SI+09] INC DL

9. ADD [BX+SI+06],CH SUB AX,[BX] NEG word [SI] INC DH DEC BYTE [BX]

10. SUB AX,[BX+12] NEG AX INC AX ADD DH, [SI+05] DEC BX

11. ADD [SI+07],CX SUB AX,[BX] NEG BX DEC BYTE [BX+SI+09] INC DL

12. ADD [BX+SI+06],CH SUB AX,[BX] NEG word [SI] INC DH DEC BYTE [BX]

13. INC DL SUB CX, [SI+10] NEG AX DEC BYTE [BX+02] ADD [SI+03],CX

14. DEC BYTE [SI+09] ADD [BX+03],CX INC BX SUB BP,[BX+08] NEG WORD [SI+BX]

15. DEC BYTE [SI+09] ADD [SI+07],CX SUB AX,[BX] ADD [SI+07],ADD [SI+07]

16. INC AX ADD DH, [SI+05] DEC BX SUB AX,[BX] NEG BX

Лабораторна робота №7

Тема роботи: Команди переходів.

Мета роботи: Навчитися застосовувати команди переходів.