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

📄 匹配.asm

📁 大学时学汇编做的一些小实验
💻 ASM
字号:
DATA SEGMENT
   KEYWORD DB 10,?,10 DUP(?)
   SENTENCE DB 30,?, 30 DUP(?)
    MESS1 DB 13,10,'ENTER KEYWORD:','$'
    MESS2 DB 13,10,'ENTER SENTENCE: $'
    MESS3 DB 13,10,'no match !$'
    MESS4 DB 13,10,'match! $'
    COUNT DB ?
    
DATA ENDS

 

CODE SEGMENT
    ASSUME CS:CODE,DS:DATA,ES:DATA
START:
    MOV AX,DATA
    MOV DS,AX
    MOV ES,AX
    MOV DX,OFFSET MESS2
    MOV AH,9
    INT 21H
    
    MOV DX,OFFSET SENTENCE
    MOV AH,10
    INT 21H
    
    AGAIN:
    MOV DX,OFFSET MESS1
    MOV AH,9
    INT 21H
    
    MOV DX,OFFSET KEYWORD
    MOV AH,10
    INT 21H
    
    MOV DI,OFFSET SENTENCE+2
    MOV BX,DI
    MOV AL,SENTENCE+1
    SUB AL, KEYWORD+1
    INC AL
    MOV COUNT ,AL
    
    NEXT:
    MOV SI, OFFSET KEYWORD+2
    MOV CL ,  KEYWORD+1
    MOV CH,0
    CMP COUNT ,0
    JL NOMATCH
    REP CMPSB
    JE MATCH
    
    INC BX
    MOV DI,BX
    DEC COUNT
    JE NOMATCH
    JMP NEXT
    NOMATCH:
    MOV DX,OFFSET MESS3
    MOV AH,9
    INT 21H
    JMP OVER
    MATCH:
    MOV DX , OFFSET MESS4
    MOV AH,9
    INT 21H
    JMP AGAIN
   OVER:
   MOV AH,4CH
   INT 21H
    
    
CODE ENDS
   
    END START

⌨️ 快捷键说明

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