;试编写一程序,要求比较两个字符串STRING1和STRING2所含字符是否完全相同,
;若相同则显示'MATCH',若不相同则显示'NO MATCH'.
DATA SEGMENT
string1 DB "I a$"
string2 DB "I am a student!$"
YES DB "MATCH", 0DH, 0AH, '$'
NO DB "NO MATCH", 0DH, 0AH, '$'
DATA ENDS
CODE SEGMENT
MAIN PROC FAR
ASSUME CS:CODE, DS:DATA, ES:DATA
STRAT:
PUSH DS
SUB AX,AX
PUSH AX
MOV AX,data
MOV DS,AX
MOV ES,AX
;初始化
MOV AX,0
MOV CX,0
LEA SI,string1
LEA DI,string2
length1: ;string1的长度
SUB [SI],'$'
JZ length2
INC SI
INC AX
JNZ length1
length2: ;string2的长度
SUB [DI],'$'
JZ compare
INC DI
INC CX
JNZ length2
compare: ;设置CX为最大长度
CMP CX,AX
JGE lop
MOV CX,AX
lop:
LEASI, string1;设置串比较指令的初值
LEADI, string2
CLD
REPE
CMPSB;串比较
JNEdispNo
LEADX, YES;显示MATCH
JMPdisplay
dispNo:LEADX, NO;显示NO MATCH
display:MOVAH, 9;显示一个字符串的DOS调用
INT21H
RET
MAIN ENDP
CODE ENDS
END STRAT
//////////////////////////////////////////////////////
指令的基本功能:CLD DF=0
STD DF=1
/////////////////////////////////////////////////////
Direction Flag (DF)
- 方向标志,在串处理指令中控制处理信息的方向用。
当DF为1时,每次操作后使变址寄存器SI和DI减量,这样就使串
处理从高地址向低地址方向处理。当DF为0时,则使SI和DI增量
,使串处理从低地址向高地址方向处理。
///////////////////////////////////////////////////
有效地址传送器 LEA
相等/为零时重复执行串指令 REPE/REPZ
指令的汇编格式:REPE / REPZ (CX)=比较/扫描的次数
指令的基本功能:① (CX)!=0或ZF=0时,结束执行串指令,否则继续② ~ ④
② (CX)←(CX)-1
③ 执行串指令(CMPS或SCAS)
④ 重复执行①
不等/不为零时重复执行串指令 REPNE / PEPNZ
指令的汇编格式:REPNE / PEPNZ (CX)=比较/扫描的次数
指令的基本功能:① (CX)!=0或ZF=1,结束执行串指令,否则继续② ~ ④
② (CX)←(CX)-1
③ 执行串指令(CMPS或SCAS)
④ 重复执行①
分享到:
相关推荐
汇编语言开发,实现两个字符串的输入,然后进行字符串的比较,是否在第二个字符串中还有第一个字符串
用汇编语言写的比较字符串大小的源代码,加实验报告,实验报告可是本人亲自撰写的,代码绝对可以运行!!自己上汇编实验课写的。
有关字符串匹配的汇编语言课程设计,希望有所帮助
汇编实验报告汇编实验报告汇编实验报告汇编实验报告
汇编语言输入两个字符串比较是否相同,相同显示match 不相同显示 no match
汇编实现逆向复制字符串 汇编实现逆向复制字符串 汇编实现逆向复制字符串 汇编课后答案
汇编字符串匹配,输入两个字符串,查看是否匹配
汇编程序实现两字符串是否相等,若相等在输出1,不等输出0
汇编语言:实训汇编语言设计——比较两个字符串
比较两个字符串,字符串由键盘输入得到,相同输出‘match',不同输出'no match'并作循环控制
IBM-PC汇编程序设计语言 1.2 实验方法, 比较两个字符串string1和string2所含的字符是否相同。若相依则显示'Match',否则,显示'No match'
输入两个字符串,比较它们是否相同,若相同则输出Match,不同则输出No Match
用汇编语言编写的程序,用来判断两个字符串是否想等,如果相等,显示match,不相等,显示no match。。
实验内容:从键盘输入一行字符,以‘$’结束,查找输入的字符串是否包含‘computer’字符串,如果包含,计算包含’computer’字符串的个数,并以十进制输出个数。 原理:输入一个字符串到定义好的空间string中,以’...
在课程的最后,进行了一次课程设计,用汇编编写了一个字符串的比较代码
从键盘输入若干个字符串(5~15个),每一串的长度不超过20个字符,请将它们做升序排序并在屏幕上显示。编程要求:Enter键结束一个字串的输入,连续两个Enter键结束整个字串的输入。人机对话输入数据,界面友好,容错...
汇编语言程序题-将字符串转换成对应的大写字母
汇编字符串处理
定义一串字符串(50个,包含字母和数字及其它字符,注意要有大小字母) 将该字符串中的字母和数字分别找出来 存放到原来实验一定义的加数,被加数变量中