Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
70
Добавлен:
11.02.2014
Размер:
40.95 Кб
Скачать

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

ЗАДАНИЕ ДЛЯ ЛАБОРАТОРНОЙ РАБОТЫ

  1. Написать программу на языке Ассемблер, реализующей заданное выражение из таблицы. Номер варианта соответствует номеру по списку.

  2. Проассемблировать программу.

  3. Отладить и проследить пошаговое выполнение программы с помощью отладчика DEBUG либо TURBO DEBUGER. Результат представить в виде таблицы:

Задание для выполнения лабораторной работы:

№ варианта 8 Y = (a*c*4 - d) / (c*8)=14 (48 в остатке)

Ax

Bx

Cx

Dx

Mov

8

Mov

8

8

Mul

16

Mov

16

Mov

30

16

Mov

30

8

16

Mul

240

16

Mov

240

4

16

Mul

960

16

Mov

960

16

16

Sub

944

16

Div

14

48

A=30 C=8 D=16

mov ax,8

mov bx,8

mul bx

mov cx,ax

mov ax,30

mov bx,8

mul bx

mov bx,4

mul bx

mov bx,16

SUB ax,bx

div cx

№ варианта 8 Y = (a*c*4 - d) / (c*(-8))=-14(48 в остатке)

A=30 C=8 D=16

Ax

Bx

Cx

Dx

Mov

8

Mov

8

-8

imul

-16

neg

16

Mov

16

Mov

30

16

Mov

30

8

16

Mul

240

16

Mov

240

4

16

Mul

960

16

Mov

960

16

16

Sub

944

16

Div

14

48

mov ax,8

mov bx,-8

imul bx

neg ax

mov cx,ax

mov ax,30

mov bx,8

mul bx

mov bx,4

mul bx

mov bx,16

SUB ax,bx

div cx

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