Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1328.pdf
Скачиваний:
6
Добавлен:
07.01.2021
Размер:
1.07 Mб
Скачать

Приложение 5

Арифметические и логические операции в микропроцессорах МП8086 и МП80386

 

Сложение чисел без знака

 

 

МП 8086

 

 

 

 

 

Вычисление

 

 

d1+w1+b1+d2+w2+b2

 

 

 

 

 

mov ax, word ptr d1

 

 

 

 

 

 

 

 

 

 

mov dx, word ptr d1+2

 

 

 

 

 

 

 

 

 

31

 

16

 

15

 

2

 

1

0

 

d1

 

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

 

 

ax

 

 

 

 

 

 

 

 

15

 

2

 

1

0

 

w1

 

 

 

 

 

 

 

 

 

 

add ax, w1

 

 

 

 

 

 

 

 

 

 

adc dx, 0

 

 

 

 

 

 

 

 

 

 

 

 

d1+w1

 

 

 

 

 

 

 

31

 

16

 

15

 

2

 

1

0

 

рег. dx:ax

 

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

 

ax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

1

0

 

b1

 

 

 

 

 

 

 

 

 

 

mov bx,0

 

 

 

 

 

 

 

 

 

0

 

…...…….0

 

 

mov bl,b1

 

 

15

8

7

 

1

0

 

рег. bx

 

 

0

0 0

b1

 

 

 

 

add ax, bx

 

 

 

 

 

 

 

 

 

 

adc dx, 0

 

 

 

 

 

 

 

 

 

 

 

 

d1+w1+b1

 

 

 

 

 

 

31

 

16

 

15

 

2

 

1

0

 

рег. dx:ax

 

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

 

ax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

16

 

15

 

2

 

1

0

 

d2

 

 

 

 

 

 

 

 

 

 

 

add ax, word ptr d2

 

 

 

 

 

 

 

 

 

 

adс dx, word ptr d2+2

 

 

 

 

 

 

 

 

 

 

 

 

d1+w1+b1+d2

 

 

 

 

 

 

31

 

16

 

15

 

2

 

1

0

 

рег. dx:ax

 

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

 

ax

 

 

 

 

 

 

 

 

 

 

15

 

2

 

1

0

 

95

w2

add ax, w2 adc dx, 0

d1+w1+b1+d2+w2

31

16

15

 

 

2

1

0

 

рег. dx:ax

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

 

ax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

1

0

 

b2

 

 

 

 

 

 

 

 

 

 

mov bx,0

 

 

 

 

 

 

 

 

 

0………….

...…….0

 

 

mov bl,b2

 

 

15

8 7

 

1

0

 

рег. bx

 

 

0

0 0

 

b2

 

 

 

add ax, bx

 

 

 

 

 

 

 

 

 

 

adc dx, 0

d1+w1+b1+d2+w2+b2

 

 

 

 

 

 

 

 

 

 

31

16

15

 

 

2

1

0

 

рег. dx:ax

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

 

ax

 

 

 

 

 

 

 

 

 

Занесение результата в ячейку памяти

rezult

(определена как четверное слово)

 

mov word ptr rezult,ax

 

 

 

 

 

 

 

 

 

 

mov word ptr rezult+2,dx

 

 

 

 

 

 

 

 

 

 

mov word ptr rezult+4,0

 

 

 

 

 

 

 

 

 

 

mov word ptr rezult+6,0

 

 

 

 

 

 

 

 

 

rezult

 

d1+w1+b1+d2+w2+b2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

rezult+2

 

 

 

rezult

 

 

 

 

31

16

15

 

 

2

1

0

 

 

 

 

 

 

 

 

 

 

 

 

rezult+6

 

 

 

rezult+4

 

 

 

 

 

 

 

 

 

 

 

 

63

46

47

 

 

 

33

32

 

 

 

 

 

 

 

 

 

 

 

 

96

 

Сложение чисел без знака

 

 

МП 80386

 

 

 

 

Вычисление

 

 

 

d1+w1+b1+d2+w2+b2

 

 

 

 

 

mov ecx, d1

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

16

15

 

 

2

 

1

0

 

d1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

15

 

 

2

 

1

0

 

w1

mov eax, 0

 

 

 

 

 

 

 

 

 

 

 

 

mov ax, w1

 

 

 

 

 

ax

 

 

 

 

 

 

31

 

 

 

16

15

 

 

2

 

1

0

 

рег. eax (w1)

0

0

0

0

0

 

 

 

w1

 

 

 

 

add ecx,eax

 

 

eax

 

 

 

 

 

 

 

 

 

d1+w1

 

 

 

 

 

 

 

 

31

 

 

 

16

15

 

 

2

 

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

1

0

 

b1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

mov eax,0

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

16

15

 

8

7

 

1

0

 

рег. eax

0

0

0

0

0

0

0

0

0

 

0

0

 

 

mov al,b1

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

16

15

 

8

7

 

1

0

 

рег. eax

0

0

0

0

0

0

0

0

b1

 

 

 

 

add ecx, eax

 

 

eax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

d1+w1+b1

 

 

 

 

 

 

 

 

31

 

 

 

16

15

 

 

2

 

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

16

15

 

 

2

 

1

0

 

d2

 

 

 

 

d2

 

 

 

 

 

 

 

 

 

add ecx, d2

 

d1+w1+b1+d2

 

 

 

 

 

 

 

 

31

 

 

 

16

15

 

 

2

 

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

15

 

 

2

 

1

0

 

w2

 

 

 

 

 

 

 

 

 

 

 

 

 

mov eax, 0

97

mov ax, w2

 

31

16

15

 

 

2

 

1

0

 

рег. eax (w2)

0

0 0

w2

 

 

 

 

 

 

 

 

 

 

eax

 

 

 

 

 

 

 

 

add ecx, eax

 

 

 

 

 

 

 

 

 

 

 

 

 

d1+w1+b1+d2+w2

 

 

 

 

 

 

 

 

31

16

15

 

 

2

 

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

7

 

 

1

0

 

 

b2

 

 

 

 

 

 

 

 

 

 

 

 

 

mov eax,0

 

 

 

 

 

 

 

 

 

 

 

 

mov al,b2

 

 

 

 

 

 

 

 

 

 

 

 

31

16

15

 

7

2

 

1

0

 

рег. eax

 

 

 

 

 

 

b2

 

 

 

 

 

 

add ecx, eax

 

eax

 

 

 

 

 

 

 

 

d1+w1+b1+d2+w2+b2

 

 

 

 

 

 

 

 

31

16

15

 

 

2

 

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Занесение результата в ячейку памяти

rezult

(определена как четверное слово)

 

 

 

mov dword ptr rezult,ecx

 

 

 

 

 

 

 

 

 

 

 

 

mov dword ptr rezult+4,0

 

d1+w1+b1+d2+w2+b2

 

 

 

 

 

 

 

rezult

 

 

 

 

 

 

 

 

 

rezult+2

 

 

rezult

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

16

15

 

 

2

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

rezult+6

 

 

rezult+4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

63

46

47

 

 

 

33

32

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

98

Вычитание чисел без знака

МП 8086

Вычисление d1-w1-b1-d2-w2-b2

mov cx, word ptr d1 mov dx, word ptr d1+2

 

31

16

15

 

2

1

0

 

d1

 

 

 

 

 

 

 

 

 

 

dx

 

 

cx

 

 

 

 

 

 

15

 

2

1

0

 

w1

 

 

 

 

 

 

 

 

 

sub cx, w1

 

 

 

 

 

 

 

 

sbc dx, 0

 

 

 

 

 

 

 

 

 

d1-w1

 

 

 

 

 

 

 

31

16

15

 

2

1

0

 

рег. dx:cx

 

 

 

 

 

 

 

 

 

dx

 

 

cx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

1

0

 

b1

mov al,b1

 

 

 

 

 

 

 

 

cbw

 

15

8

7

1

0

 

рег. ax

 

 

0

0 0

b1

 

 

 

 

sub cx ax

 

 

 

 

 

 

 

 

sbb dx, 0

 

 

 

 

 

 

 

 

 

d1-w1-b1

 

 

 

 

 

 

31

16

15

 

2

1

0

 

рег. dx:cx

 

 

 

 

 

 

 

 

 

dx

 

 

cx

 

 

 

 

31

16

15

2

1

0

d2

sub cx, word ptr d2 sbb dx, word ptr d2+2

d1-w1-b1-d2

31

16

15

2

1

0

рег. dx:cx

 

 

 

 

 

 

 

 

dx

 

cx

 

 

 

 

 

15

2

1

0

W2

 

 

 

 

 

99

sub cx, w2 sbb dx, 0

 

 

d1-w1-b1-d2-w2

 

 

 

 

 

 

 

31

16

15

 

 

 

2

1

0

 

рег. dx:cx

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

cx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

1

0

 

b2

 

 

 

 

 

 

 

 

 

 

mov al,b2

 

 

 

 

 

 

 

 

 

 

cbw

 

15

 

8 7

 

1

0

 

рег. ax

 

0

0

0

 

b2

 

 

 

 

sub cx, ax

 

 

 

 

 

 

 

 

 

 

sbb dx, 0

 

 

 

 

 

 

 

 

 

 

 

d1-w1-b1-d1-w2-b2

 

 

 

 

 

 

31

16

15

 

 

 

2

1

0

 

рег. dx:cx

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

cx

 

 

 

 

 

 

Занесение результата в ячейку памяти

mov word ptr rezult,cx mov word ptr rezult+2,dx mov word ptr rezult+4,0

mov word ptr rezult+6,0

rezult (определена как четверное слово)

d1-w1-b1-d1-w2-b2

rezult

 

rezult+2

 

 

rezult

 

 

 

 

31

16

15

2

1

0

 

 

 

 

 

 

 

 

 

 

rezult+6

 

 

rezult+4

 

 

 

 

 

 

 

 

 

 

63

46

47

 

33

32

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

100

 

 

Вычитание чисел без знака

 

МП 80386

 

 

 

 

Вычисление

 

 

 

 

d1-w1-b1-d2-w2-b2

 

 

 

 

mov ecx, d1

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

16

 

15

2

1

0

 

d1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

15

2

1

0

 

w1

mov eax, 0

 

 

 

 

 

 

 

 

 

 

 

mov ax, w1

 

 

 

 

 

ax

 

 

 

 

31

 

 

 

16

 

15

2

1

0

 

рег.eax (w1)

0 0

0

0

0

 

 

 

w1

 

 

 

 

sub ecx,eax

 

 

eax

 

 

 

 

 

 

 

 

d1-w1

 

 

 

 

 

 

 

31

 

 

 

16

 

15

2

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

1

0

 

b1

 

 

 

 

 

 

 

 

 

 

 

 

 

mov eax,0

 

 

 

 

 

 

 

 

 

 

 

mov al,b1

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

16

 

15

2

1

0

 

рег. eax

0 0

0

0

0

 

 

 

b1

 

 

 

 

 

 

 

 

eax

 

 

 

 

 

 

 

sub ecx, eax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

d1-w1-b1

 

 

 

 

 

 

31

 

 

 

16

 

15

2

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

16

 

15

2

1

0

 

d2

 

 

 

 

 

 

 

 

 

 

 

 

 

sub ecx, d2

 

d1-w1-b1-d2

 

 

 

 

 

 

31

 

 

 

16

 

15

2

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

15

2

1

0

 

w2

 

 

 

 

 

 

 

 

 

 

 

 

 

mov eax, 0

 

 

 

 

 

 

 

 

 

 

 

mov ax, w2

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

16

 

15

2

1

0

 

101

рег.eax (w2)

0

0

0

 

 

 

 

w2

 

 

 

 

 

 

 

eax

 

 

 

 

 

 

 

 

 

sub ecx, eax

d1-w1-b1-d2-w2

 

 

 

 

 

 

 

 

31

 

16

 

15

 

 

 

2

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

1

0

 

b2

 

 

 

 

 

 

 

 

 

 

 

 

 

mov eax,0

 

 

 

 

 

 

 

 

 

 

 

 

mov al,b2

 

 

 

 

 

 

 

 

 

 

 

 

31

 

16

 

15

 

7

2

1

0

 

рег. eax

0

0

0

 

0

0

0

 

b2

 

 

 

 

 

 

eax

 

 

 

 

 

 

 

 

 

sub ecx, eax

d1-w1-b1-d2-w2-b2

 

 

 

 

 

 

 

31

 

16

 

15

 

 

 

2

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

Занесение результата в ячейку памяти

rezult

(определена как четверное слово)

 

 

mov dword ptr rezult,ecx

 

 

 

 

 

 

 

 

 

 

 

 

mov dword ptr rezult+4,0

 

d1-w1-b1-d2-w2-b2

 

 

 

 

rezult

 

 

 

 

 

 

rezult+2

 

 

 

 

 

rezult

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

16

 

15

 

 

 

2

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

rezult+6

 

 

 

 

rezult+4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

63

 

46

 

47

 

 

 

 

33

32

 

 

 

 

 

 

 

 

 

 

 

 

 

 

102

 

 

Умножение чисел без знака

МП 8086

 

 

 

 

Вычисление

 

b1*b2*w1*d1

 

 

 

 

mov al,b1

 

 

 

 

 

 

 

mul b2

 

 

 

 

 

 

 

 

 

15

2

1

0

 

ax

 

 

 

 

 

 

 

 

 

 

 

cx

 

 

 

mul w1

15

2

1

0

 

w1

 

 

 

 

 

 

 

 

 

b1*b2*w1

 

 

 

 

31

16 15

2

1

0

 

рег. dx:ax

 

 

 

 

 

 

 

 

 

dx

 

 

ax

 

 

 

 

 

 

 

 

 

 

 

 

b1

см. ПИТЕР АБЕЛЬ (умножение двойных слов)

рег. ax

31

16 15

2 1

 

 

 

 

103

 

Умножение чисел без знака

МП 80386

 

 

Вычисление

 

b1*b2*w1*d1

 

 

mov al,b1

 

 

 

 

 

mul b2

 

 

b1*b2

 

 

 

 

 

 

 

 

 

 

 

15

2

1

0

ax

 

 

 

 

 

 

 

 

 

cx

 

 

mul w1

 

15

2

1

0

w1

 

 

 

 

 

 

 

b1*b2*w1

 

 

 

31

16

15

2

1

0

рег. еax

eax

d1

mul d1

b1*b2*w1*d1

 

 

 

 

 

 

 

 

результат

 

 

63

48

47

32

 

 

 

 

 

рег.edx:eax

 

e

d

x

31

16

15

2 1 0

 

 

 

 

 

 

 

e

a

x

104

Логическое ИЛИ (поразрядное)

 

 

МП 8086

 

 

 

 

 

Вычисление d1 or w1 or b1 or d2 or w2 or b2

 

 

 

 

 

mov cx, word ptr d1

 

 

 

 

 

 

 

 

 

mov dx, word ptr d1+2

 

 

 

 

 

 

 

 

31

 

16

15

2

 

1

0

 

d1

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

 

cx

 

 

 

 

 

 

 

15

2

 

1

0

 

w1

 

 

 

 

 

 

 

 

 

or cx, w1

 

 

 

 

 

 

 

 

 

 

 

d1 or w1

 

 

 

 

 

 

31

 

16

15

2

 

1

0

 

рег. dx:cx

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

cx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

1

0

 

b1

 

 

 

 

 

 

 

 

 

or cl,b1

 

 

 

 

 

 

 

 

 

 

 

d1 or w1 or b1

 

 

 

 

 

 

31

 

16

15

2

 

1

0

 

рег. dx:cx

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

cx

 

 

 

 

 

 

 

 

 

 

 

 

31

 

16

15

2

 

1

0

 

d2

 

 

 

 

 

 

 

 

 

 

or cx, word ptr d2

 

 

 

 

 

 

 

 

 

or dx, word ptr d2+2

 

 

 

 

 

 

 

 

 

 

 

d1 or w1 or b1 or d2

 

 

 

31

 

16

15

2

 

1

0

 

рег. dx:cx

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

cx

 

 

 

 

 

 

 

15

2

 

1

0

 

w2

 

 

 

 

 

 

 

 

 

or cx, w2

d1 or w1 or b1 or d2 or w2

 

 

 

 

 

 

 

 

 

31

 

16

15

2

 

1

0

 

рег. dx:cx

 

 

 

 

 

 

 

 

 

 

 

dx

 

 

cx

 

 

 

 

 

 

 

 

7

 

1

0

 

b2

 

 

 

 

 

 

 

 

 

or cl,b2

 

 

 

 

 

 

 

 

105

d1 or w1 or b1 or d2 or w2 or b2

31

16

15

2

1

0

 

рег. dx:cx

 

 

 

 

 

 

 

 

dx

 

 

cx

 

 

 

 

 

 

Занесение результата в ячейку памяти

rezult

(определена как четверное слово)

 

mov word ptr rezult,cx

 

 

 

 

 

 

 

mov word ptr rezult+2,dx

 

 

 

 

 

 

 

mov word ptr rezult+4,0

 

 

 

 

 

 

 

mov word ptr rezult+6,0

 

 

 

 

 

 

d1 or w1 or b1 or d2 or w2 or b2

rezult

 

rezult+2

 

 

rezult

 

 

 

 

31

16

15

2

1

0

 

 

 

 

 

 

 

 

 

 

rezult+6

 

 

rezult+4

 

 

 

 

 

 

 

 

 

 

63

46

47

 

33

32

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

106

Логическое ИЛИ (поразрядное)

 

МП 80386

 

 

 

 

Вычисление d1 or w1 or b1 or d2 or w2 or b2

 

 

 

 

mov ecx, d1

 

 

 

 

 

 

 

31

 

16

 

15

2

1

0

 

d1

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

15

2

1

0

 

w1

 

 

 

 

 

 

 

 

or cx, w1

 

 

 

 

 

 

 

 

 

 

d1 or w1

 

 

 

 

31

 

16

 

15

2

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

1

0

 

b1

 

 

 

 

 

 

 

 

or cl,b1

 

 

 

 

 

 

 

 

 

 

d1 or w1 or b1

 

 

 

 

31

 

16

 

15

2

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

16

 

15

2

1

0

 

d2

 

 

 

 

 

 

 

 

or ecx, d2

d1 or w1 or b1 or d2

31 16 15 2 1 0

рег. ecx

ecx

15 2 1 0

w2

or cx, w2

d1 or w1 or b1 or d2 or w2

31

16

15

 

2

1

0

 

рег. ecx

 

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

 

7

 

1

0

 

b2

 

 

 

 

 

 

 

or cl,b2

d1 or w1 or b1 or d2 or w2 or b2

107

31

16

15

2

1

0

рег. ecx

ecx

Занесение результата в ячейку памяти rezult (определена как четверное слово)

mov dword ptr rezult,ecx mov dword ptr rezult+4,0

d1 or w1 or b1 or d2 or w2 or b2

rezult

 

rezult+2

 

 

rezult

 

 

 

 

31

16

15

2

1

0

 

 

 

 

 

 

 

 

 

 

rezult+6

 

 

rezult+4

 

 

 

 

 

 

 

 

 

 

63

46

47

 

33

32

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

108

Логическое И (поразрядное)

МП 8086

Вычисление d1 and w1 and b1 and d2 and w2 and b2

mov cx, word ptr d1 mov dx, word ptr d1+2

31 16 15 2 1 0

d1

dx

cx

 

 

15

2

1

0

w1

and cx, w1

d1 and w1

15 2 1 0

рег. cx

 

 

 

cx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

1

0

 

b1

 

 

 

 

 

 

 

 

and cl,b1

d1 and w1 and b1

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

1

0

 

рег. cl

 

 

 

 

 

 

 

 

 

 

 

 

cl

 

 

 

 

 

 

 

 

 

 

 

 

31

16

15

 

2

1

0

 

d2

 

 

 

 

 

 

 

 

 

and cl, byte ptr d2

 

 

 

 

 

 

 

 

d1 and w1 and b1 and d2

 

 

 

 

 

 

 

7

 

1

0

 

рег. cl

 

 

 

 

 

 

 

 

 

 

 

 

cl

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

15

 

2

1

0

 

w2

 

 

 

 

 

 

 

 

and cl, byte ptr w2

 

 

 

 

 

 

 

 

d1 and w1 and b1 and d2 and w2

 

 

 

 

 

 

 

7

 

1

0

 

рег. cl

 

 

 

 

 

 

 

 

 

 

 

 

cl

 

 

 

 

 

 

7

 

1

0

 

b2

 

 

 

 

 

 

 

109

and cl,b2

d1 and w1 and b1 and d2 and w2

7

1

0

рег. cl

cl

Занесение результата в ячейку памяти rezult (определена как четверное слово) mov byte ptr rezult,cl

mov byte ptr rezult+1,0 mov word ptr rezult+2,0

mov word ptr rezult+4,0

mov word ptr rezult+6,0

d1 and w1 and b1 and d2 and w2 and b2

rezult

rezult+2

 

 

 

rezult

 

 

31

16

15

 

2

1

0

0

0

0

0

0

 

 

rezult+6

 

 

rezult+4

 

 

 

 

 

 

63

46

47

 

 

33

32

0

0

0

 

 

 

0

110

Логическое И (поразрядное)

 

МП 80386

 

 

 

 

Вычисление d1 and w1 and b1 and d2 and w2 and b2

 

 

 

 

mov ecx, d1

 

 

 

 

 

 

31

16

15

2

1

0

 

d1

 

 

 

 

 

 

 

 

 

ecx

 

 

 

 

 

 

 

 

15

2

1

0

 

w1

 

 

 

 

 

 

 

and cx,w1

 

 

 

 

 

 

 

 

d1 and w1

 

 

 

 

 

 

 

15

2

1

0

 

рег. cx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

1

0

 

b1

 

 

 

 

 

 

 

and cl,b1

d1 and w1 and b1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

1

0

 

рег. cl

 

 

 

 

 

 

 

 

 

 

cl

 

 

 

 

 

 

 

 

 

 

31

16

15

2

1

0

 

d2

 

 

 

 

 

 

 

and cl, byte ptr d2

d1 and w1 and b1 and d2

7

1

0

рег. cl

cl

15

2

1

0

w2

and cl, byte ptr w2

d1 and w1 and b1 and d2 and w2

7

1

0

b2

and cl,b2

111

d1 and w1 and b1 and d2 and w2

7

1

0

рег. cl

cl

Занесение результата в ячейку памяти rezult (определена как четверное слово)

mov byte ptr rezult,cl mov byte ptr rezult+1,0 mov word ptr rezult+2,0 mov dword ptr rezult+4,0

d1 and w1 and b1 and d2 and w2 and b2

rezult

 

rezult+2

 

 

rezult

 

 

 

 

 

31

16

15

8

7

2

1

0

 

 

 

 

 

 

 

 

 

 

 

 

rezult+6

 

 

rezult+4

 

 

 

 

 

 

 

 

 

 

 

 

63

46

47

 

 

 

33

32

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

112

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