2
Я пытаюсь написать программу сборки, которая добавляет числа (инициализированные как числа), которые меньше A0H. Однако, когда я запускаю эту программу, он не может добавить ЛЮБОЙ из чисел. Любая помощь будет оценена по достоинству.Emu8086 assembly adder
PAGE 60,132
TITLE COOLADDER
.MODEL SMALL
.STACK 64
.DATA
NUMS DB 01H,01H,01H,01H,0A1H,0A1H
SUM DB ?
CC DB ?
.CODE
MAIN PROC FAR
MOV AX,@DATA
MOV DS,AX
MOV CX,6
MOV BX,OFFSET NUMS
MOV AL,0
AGAIN:
MOV DI,0A0H
CMP DI,[BX]
JNA RES
ADD AL,[BX]
MOV CC,AL
RES:
INC BX
DEC CX
JNZ AGAIN
MOV SUM,AL
MOV AH,4CH
INT 21H
MAIN ENDP
END MAIN
Что вам нужна помощь? В чем проблема? – Reinard
Предполагается добавить все числа, объявленные «num», которые меньше «0A0H», но вместо этого он добавляет все числа, объявленные в «num». Через отладку мне удалось выяснить, что линия «CMP DI, [BX]» работает неправильно. –