我刚刚才学了汇编语言,就写了一个很简单的程序.
下面是程序代码
DSEG SEGMENT
DATA1 DB 9,0,9 DUP(?)
DATA2 DB 9,0,9 DUP(?)
CNT DB 8
STR1 DB 13,10,'Two string is same. $'
STR2 DB 13,10,'Two string is different. $'
STR3 DB 'Input the first string: $'
STR4 DB 13,10,'Input the second string: $'
DSEG ENDS
CSEG SEGMENT
ASSUME CS: CSEG, DS: DSEG,ES:DSEG
START: MOV AX,DSEG
MOV DS,AX
MOV ES,AX
LEA DX,STR3 ;显示字符串Input the first string
MOV AH,09H
INT 21H
LEA DX,DATA1 ;从键盘上输入字符到缓冲区DATA1
MOV AH,0AH
INT 21H
LEA SI,DATA1+1 ;把DATA1的偏移地址送给SI
MOV AH,0CH ;把缓冲区的字符清除
MOV AL,08H
INT 21H
LEA DX,STR4 ;显示字符串Input the second string
MOV AH,09H
INT 21H
LEA DX,DATA2 ;从键盘上输入字符到缓冲区DATA1
MOV AH,0AH
INT 21H
LEA DI,DATA2+1 ;把DATA2的偏移地址送给DI
MOV CL,CNT
AGAIN: INC SI
INC DI
MOV AL,[SI]
CMP AL,[DI] ;相等继续比较
LOOPZ AGAIN
JZ DISP1
JMP DISP2
DISP2: LEA DX,STR2
MOV AH,09H
INT 21H
MOV AH,4CH
INT 21H
DISP1: LEA DX,STR1
MOV AH,09H
INT 21H
MOV AH,4CH
INT 21H
CSEG ENDS
END START