Итак, я создаю простую программу 8086, которая вычисляет сумму двух двузначных чисел:
.model small
.data
first db 0
second db 0
sum db 0
.stack
.code
mov ax, data
mov ds, ax
mov es, ax
mov ah, 1
int 21h
sub al, 48d
mov bl, 10
mul bl
mov first, al
mov ah, 1
int 21h
sub al, 48d
add first, al
mov ah, 1
int 21h
sub al, 48d
mov bl, 10
mul bl
mov second, al
mov ah, 1
int 21h
sub al, 48d
add second, al
mov al, first
add al, second
mov sum, al
Однако, когда я проверяю значение чисел, а именно сумму, оно дает мне отрицательное число какэто подписанное значение. Например, если первое число равно 99, а второе - 98, сумма равна -59.
У кого-нибудь есть ответы, которые могут решить эту проблему?