您的位置 首页 动态

汇编程序:比较2个字符串是否相同(初级版)

DATASSEGMENTsource1db50dup(?);存放第一个串source2db50dup(?);存放第二个串title1db39;Pleaseinput

DATAS SEGMENT
source1 db 50 dup(?) ; 寄存第一个串
source2 db 50 dup(?) ; 寄存第二个串
title1 db Please input the first string:,0dh,0ah,$
title2 db Please input the second string:,0dh,0ah,$
ans db match,0dh,0ah,$
ans1 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 dx,offset title1;输出昂首
mov ah,09h ;输出字符串用09
int 21h
mov cl,50
mov si,0
again:
mov ah,01h
int 21h
cmp al,0dh
jz two
mov source1[si],al
inc si
dec cl
jnz again ;将第一个串搞定
two:
mov dx,offset title2;输出第二个昂首
mov ah,09h
int 21h
mov cl,50
mov si,0
again1:
mov ah,01h
int 21h
cmp al,0dh
jz main
mov source2[si],al
inc si
dec cl
jnz again1;这儿以上部分是给两个字符串赋值,一下部分是比较。
main:
mov si,0
mov cx,6
again2:mov al,source2[si]
cmp source1[si],al
jnz nomatch
incsi
dec cx
jnz again2
cmpcx,0
jz match
nomatch:mov dx,offset ans1
mov ah,09h
int 21h
jmp over
match: mov dx,offset ans
mov ah,09h
int 21h
over: MOV AH,4CH
INT 21H
CODES ENDS
END START
; MADE BY WQ

这儿是完善版的程序:http://www.51hei.com/mcu/2469.html

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/dongtai/255100.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部