汇编:计算字符串长度

;统计字符串长度
DATAS SEGMENT
string db 'hello world demo0';待计算的字符串以0结尾
DATAS ends

CODES SEGMENT
    ASSUME CS:CODES, DS:DATAS
    START:
        mov AX,DATAS
        mov DS,AX

        call strlen    ;调用strlen子程序
        mov ah,4CH
        int 21h

strlen proc
        lea si,string;记录string的偏移地址
        xor cx,cx    ;cx记录字符个数
    flag:
        mov ah,[si]
        cmp ah,'0'
        JZ EXIT     ;如果等于'0'则跳转
        inc cl      ;计数+1
        inc si      ;下一个待判断的字符的偏移地址
        jmp flag        
    EXIT:
        ret
strlen endp
CODES ends
    end START

猜你喜欢

转载自www.cnblogs.com/roseAT/p/10243581.html