写的比较累赘。。。
data segment
msg1 DB "Please input first string:",'$'
string1 DB 100,0,100 dup('?')
msg2 DB "Please input second string:",'$'
string2 DB 100,0,100 dup('?')
msg3 DB "Please input third string:",'$'
string3 DB 100,0,100 dup('?')
msg4 db 0ah,0dh
result DW '?','$'
Data ends
Stack segment para stack
db20h dup(0)
Stack ends
code segment
Assume Cs:code,Ss:stack,ds:Data
Start:mov ax,data
mov ds,ax
mov es,ax
;处理第1个字符串
lea dx,msg1
mov ah,09h
int 21h
lea dx,string1
mov ah,0ah
int 21h
xor bx,bx
lea dx,msg4
mov ah,09h
int 21h
;处理第二个字符串
lea dx,msg2
mov ah,09h
int 21h
lea dx,string2
mov ah,0ah
int 21h
lea dx,msg4
mov ah,09h
int 21h
;处理第三个字符串
lea dx,msg2
mov ah,09h
int 21h
lea dx,string3
mov ah,0ah
int 21h
lea dx,msg4
mov ah,09h
int 21h
;第一个与第二个开始比较
mov bl,string1+1
cmp bl,string2&