试编写一程序,要求比较两个字符串STRING1和STRING2所含字符是否相同,若相同则显示“MATCH”,若不相同则显示“NO MATCH”。

本文介绍了一个使用8086汇编语言实现的串比较程序。该程序定义了两个字符串并利用REP CMPSB指令进行比较,根据比较结果输出匹配或不匹配的信息。此示例有助于理解基本的汇编语言编程技巧及串操作指令。
DATAS SEGMENT
    ;此处输入数据段代码  
    string1 db 'I am a student.'
    string2 db 'I am a student!'
    yes 	db 'MATCH',0dh,0ah,'$'
    no 		db 'NO MATCH',0dh,0ah,'$' 
DATAS ENDS

STACKS SEGMENT
    ;此处输入堆栈段代码
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
    mov es,ax
    ;此处输入代码段代码
    begin:
    	lea si,string1			;设置串比较指令的初值
    	lea di,string2
    	cld
    	mov cx,string2-string1
    	repe cmpsb				;串比较
    	jne dispno
    	lea dx,yes				;显示MATCH
    	jmp display
    dispno:
    	lea dx,no				;显示NO MATCH
    display:
    	mov ah,9
    	int 21h
   
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值