Слайд 5 6. Протокол трансляции
1 ; Задание1. Иванов С. УВВ-211, вариант 7
2 .386
3 0000 dseg segment use16
4 0000 22 a db 34
5 0001 75 b db 75h
6 0002 23 23 23 23 line db ‘####’
7 0006 dseg ends
8 0000 eseg segment use16
9 0000 ?? ?? ?? ?? ea dd ?
10 0004 eseg ends
11 0000 cseg segment use16
12 assume ds:dseg, cs:cseg, es:eseg
13 ; загрузка регистров – указателей сегментов
14 0000 B9 0000 s m1: mov cx, dseg
15 0003 8E D9 mov ds, cx
16 0005 B9 0000 s mov cx, eseg
17 0008 8E C1 mov es, cx
18 ; расширим байты до 4-байтных, определим разность и запишем в es:ea
19 000A 66| 0F B6 06 0000 r movzx eax, ds:a
20 0010 66| 0F B6 1E 0001 r movzx ebx, ds:b
21 0016 66| 2B C3 sub eax, ebx
22 0019 66| 26: A3 0000 r mov es:ea, eax
23 ; заменим последний символ на 1-й числовой байт с обратным знаком
24 001E 8A 16 0000 r mov dl, ds:a
25 0022 F6 DA neg dl
26 0024 88 16 0005 r mov ds:line+3, dl
27 ; завершение исполнения
28 0028 B4 4C mov ah, 4ch
29 002A CD 21 int 21h
30 002C cseg ends
31 end m1