Загрузка данных


in ax, 2           ; читаем 18742
mov si, ax

; A (биты 0-6)
mov ax, si
and ax, 007Fh
mov bx, ax         ; BX = A = 54

; B (биты 7-10)
mov ax, si
shr ax, 7
and ax, 000Fh
mov cx, ax         ; CX = B = 9

; C (биты 11-15)
mov ax, si
shr ax, 11
and ax, 001Fh
mov dx, ax         ; DX = C = 9

; A / C
mov ax, bx         ; AX = A = 54
xor dx, dx         ; обнуляем DX
div dx             ; деление AX / DX (DX = C = 9)
                   ; результат: AX = 6 (54/9)

sub ax, cx         ; вычитаем B: 6 - 9 = -3
out 3, ax          ; выводим -3 в порт 3
hlt