汇编语言: 试编写一段程序,要求比较两个字符串 string1 和 string2 所含字符是否相等,如相 等则显示“MATCH”, 若不相同则显示“NO MATCH”。

试编写一段程序,要求比较两个字符串 string1 和 string2 所含字符是否相等,如相 等则显示“MATCH”, 若不相同则显示“NO MATCH”。
2017年5月25日23:54:01

data segment

str1 db '123456','$'
len1 equ $-str1

str2 db '123456','$'
len2 equ $-str2

match db 'MATCH!','$'
nomatch db 'NO MATCH!','$'
data ends

stack segment stack
 dw 20h dup(?) 
top label word
stack ends

code segment
    assume cs:code,ds:data,ss:stack
main proc far 

    mov ax,data
    mov ds,ax
    mov es,ax  ;this is important



    mov ax,stack
    mov ss,ax
    lea sp,top

    mov ah,len1
    mov al,len2

    cmp al,ah
    jne no

    mov ch,0
    mov cl,al

    lea si,str1
    lea di,str2
    cld
    repe cmpsb
    jne no

yes:
    lea dx,match
    mov ah,09h
    int 21h 
    jmp exit    

no: lea dx,nomatch
    mov ah,09h
    int 21h 

exit: 
    mov ah,4ch
    int 21h

main endp
 code  ends
  end main
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值