⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1 字符串匹配设计.asm

📁 字符串匹配设计:为了掌握提示信息的设置方法及读取键入信息的方法。编写程序实现两个字符串比较。如相同
💻 ASM
字号:
DATA   SEGMENT
CHANGE     EQU    0AH
ENTER      EQU    0DH
TI1    DB 'PLEASE INPUT THE STRING ONE:','$'
TI2    DB CHANGE,ENTER, 'PLEASE INPUT THE STRING TWO:','$'
TI3    DB CHANGE,ENTER, 'NO MATCH','$'
TI4    DB CHANGE,ENTER, 'MATCH','$'
S1     DB   100                ;用户定义存放100B的缓存区
       DB     ?                ;系统填入实际输入字符字节数 
       DB   100   DUP(?)       ;存放第一次输入字符的ASCII码值
S2     DB   100
       DB    ?
       DB 100 DUP(?)           ;存放第二次输入字符的ASCII码值
DATA   ENDS

CODE   SEGMENT
        ASSUME  CS:CODE,DS:DATA
START:  PUSH    DS
        SUB     AX,AX
        PUSH    AX
        MOV     AX,DATA
        MOV     DS,AX
        MOV     ES,AX
	MOV	DX,OFFSET 	TI1    ;DX指向字符串TI1
	MOV	AH,09H              
	INT	21H                    ;9号功能调用,显示字符串TI1
        LEA 	DX, S1                 ;将字符串1首地址送入DX
 	MOV	AH, 0AH             
	INT	21H                    ;输入字符串到内存缓冲区,即接收键入的字符串
	MOV	DX, OFFSET	TI2
	MOV	AH, 09H
	INT	21H
        LEA     DX, S2
	MOV	AH, 0AH
	INT	21H                    ;
	MOV	DI, DX                 ;字符串2首地址送入DI
        MOV     AL,[DI+1]              ;字符串2内容送入AL
	LEA	SI,S1                  ;指针SI指向字符串1首地址
	CMP	AL, [SI+1]
	JNZ	EXIT                   ;字符串1和字符串2不相等,跳到EXIT显示NO MATCH
	ADD	DI, 2
	ADD	SI, 2
	MOV	CH, 0
	MOV	CL, AL                 ;?
	CLD                            ;方向标志清0,使指针按增量方向修改
	REPE	CMPSB                  ;重复执行串操作指令
	JNZ 	EXIT
	MOV	DX,OFFSET	TI4
	MOV	AH,09H
	INT	21H
	MOV     AH,4CH                 ;返回DOS
        INT     21H
EXIT:	MOV	DX,OFFSET	TI3
	MOV	AH,09H
	INT	   21H
	MOV	AH,4CH
	INT	21H
CODE    ENDS	
	END START

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -