一个汇编程序编译通过了,但运行EXE文件时却出错,急急急

2024-12-26 14:17:49
推荐回答(2个)
回答1:

START:
MOV AX,DATA /MOV DS,AX
MOV SI,OFFSET MARKS
MOV CX,14
LOP: MOV AX,01H ;功能指定错误,mov ah,1才是接收键盘输入
INT 21H
CMP AL,0AH /JE LOP ;0aH无法输入,应cmp al,0dH(回车)
;无输入等待
SUB AL,30H /MOV [SI],AL
INC SI
LOOP LOP
MOV CX,6
MOV SI,OFFSET MARKS
MOV AX,[SI] ;上面是字节,仍要依上,mov al,[si]
LOP1: CMP AX,[SI+2] ;cmp al,[si+1]
JG ADB
MOV AX,[SI+2] ;mov al,[si+1]
ADB: ADD SI,2 ;add si,1
LOOP LOP1
; 最大数在AL中
MOV CX,6
MOV SI,OFFSET MARKS ;多余,输14个数,处理6个,还有余
MOV AX,[SI] ;数送到AX,下面怎么拿未赋值BX的与人比?
LOP2: CMP BX,[SI+2] /JL ALB ;错大发了......
MOV BX,[SI+2]
ALB: ADD SI,2
LOOP LOP2

MOV AH,4CH
INT 21H

回答2:

编译通过,是否进行了连接?没连接不能运行