
刚学汇编语言,编了个程序,请大家帮我看看哪里出错了,谢谢了,在线等!!
;FILE:338.ASM.486DATASEGMENTUSE16MESG1DB'pleaseinputyourname.',0DH,0AH,'$'MESG2DB'ple...
;FILE:338.ASM
.486
DATA SEGMENT USE16
MESG1 DB 'please input your name.',0DH,0AH,'$'
MESG2 DB 'please input your key' ,0DH,0AH,'$'
MESG3 DB 'AAAA',0DH,0AH,'$'
MESG4 DB '123456',0DH,0AH,'$'
MESG5 DB 'WEICOME TO COME',0DH,0AH,'$'
BUF1 DB 20
DB ?
DB 20(?)
BUF2 DB 20
DB ?
DB 20(?)
DATA ENDS
CODE SEGMENT USE16
ASSUME CS:CODE,DS:DATA
BEG: MOV AX,DATA
MOV DS,AX
AGAIN1: MOV AH,9
MOV DX,OFFSET MESG1
INT 21H
MOV AH,0AH
MOV DX,OFFSET BUF1
INT 21H
MOV AH,MESG3
CMP AH,BUF1
JNE AGAIN1
AGAIN2: MOV AH,9
MOV DX,OFFSET MESG2
MOV AH,0AH
MOV DX,OFFSET BUF1
INT 21H
MOV AL,MESG4
CMP AL,BUF2
JNE AGAIN2
NEXT: MOV AH,9
MOV DX,OFFSET MESG3
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END BEG 展开
.486
DATA SEGMENT USE16
MESG1 DB 'please input your name.',0DH,0AH,'$'
MESG2 DB 'please input your key' ,0DH,0AH,'$'
MESG3 DB 'AAAA',0DH,0AH,'$'
MESG4 DB '123456',0DH,0AH,'$'
MESG5 DB 'WEICOME TO COME',0DH,0AH,'$'
BUF1 DB 20
DB ?
DB 20(?)
BUF2 DB 20
DB ?
DB 20(?)
DATA ENDS
CODE SEGMENT USE16
ASSUME CS:CODE,DS:DATA
BEG: MOV AX,DATA
MOV DS,AX
AGAIN1: MOV AH,9
MOV DX,OFFSET MESG1
INT 21H
MOV AH,0AH
MOV DX,OFFSET BUF1
INT 21H
MOV AH,MESG3
CMP AH,BUF1
JNE AGAIN1
AGAIN2: MOV AH,9
MOV DX,OFFSET MESG2
MOV AH,0AH
MOV DX,OFFSET BUF1
INT 21H
MOV AL,MESG4
CMP AL,BUF2
JNE AGAIN2
NEXT: MOV AH,9
MOV DX,OFFSET MESG3
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END BEG 展开
1个回答
展开全部
这个程序,有什么错误的表现吗?
正确的,应该是什么样?
正确的,应该是什么样?
更多追问追答
追问
正确的应该提示'please input your name ;please input your key;WEICOME TO COME ,但是这个程序运行后无论输入什么 都是提示please input your name
追答
你希望输入什么呢?
……
MOV AH, 0AH
MOV DX, OFFSET BUF1 ;输入字符串
INT 21H
MOV AH, MESG3 ;'AAAA'
CMP AH, BUF1 ;和 20 比较,干什么?
JNE AGAIN1 ;不等于20转移
……
用 'A' 和 20 比较,显然不相等,总要转移到 AGAIN1。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询