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

📄 cmpstr.asm

📁 汇编实时运行 核心的汇编源 代码
💻 ASM
字号:
;演示程序
;此程序比较数据段和附加段的两串字符串string1和string2是否相等
;若相等,显示“string1 match string2”,否则显示“the two strings are nomatch”

; -----------定义数据段

DSEG    SEGMENT 'DATA'

      string1 db "I am a student."                               ;字符串一

      match db " string1 match string2",13,10,'$'
      nomatch db "the two strings are nomatch",13,10,'$'
      quit db "press any key to exit......",13,10,'$'
DSEG    ENDS


; -----------附加段

eseg   segment
       string2 db "I am a student."                              ;字符串二
eseg ends

;-----------定义代码段
CSEG    SEGMENT 'CODE'

;*******************************************

START   PROC    FAR
     assume cs:cseg,ds:dseg,es:eseg

;--------------保存返回DOS的地址
    PUSH    DS
    MOV     AX, 0
    PUSH    AX

;------------设置段寄存器
    MOV     AX, DSEG
    MOV     DS, AX
    mov     ax,eseg
    MOV     ES, AX
 

    lea si,string1
    lea di,string2
    mov cx,15
    cld
    repe cmpsb

    cmp cx,0
    jz mat
;-----------两字符串不等
    mov ah,9
    lea dx,nomatch
    int 21h
    jmp waitforexit

;-----------两字符串相等
mat:
    mov ah,9
    lea dx,match
    int 21h

;-----------按任意键退出
waitforexit: 
    mov ah,9
    lea dx,quit
    int 21h

     mov ah,1
     int 21h
   

    



;----------- 返回DOS

  exit:  RET
START   ENDP

;*******************************************

CSEG    ENDS

        END    START    ; set entry point.

⌨️ 快捷键说明

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