80x86汇编语言编程:相邻两字符的判断

来源:互联网 发布:office mac版怎么安装 编辑:程序博客网 时间:2024/05/21 16:15

;1)从键盘上输入一串字符串(最大长度为80);

;2)判断该字符串中是否包含一位小写字母跟着一位大写字母的两位符号?

;若是,则保留这些字符,其它情况的字符替换为字符“@”;

;3)将上述处理后的字符串显示在屏幕上


题目链接:http://zhidao.baidu.com/question/2267058358972161628


做而论道编程如下:  2015-01-22 14:03


提问者采纳


ASSUME   CS:CODES, DS:DATAS


DATAS   SEGMENT

    STR1   DB  81,  ?, 81  DUP (?)

    STR2   DB  13, 10, 81  DUP ('$')

DATAS   ENDS


CODES   SEGMENT


START:

    MOV   AX, DATAS

    MOV   DS, AX


    MOV   AH, 10

    LEA   DX, STR1

    INT   21H


    MOV   BX, 2

LP:

    MOV   AL, STR1[BX]

    CMP   AL, 13

    JZ    DISP

    CMP   AL, 'A'

    JB    NEXT1

    CMP   AL, 'Z'

    JA    NEXT1


    MOV   AH, STR1[BX + 1]

    CMP   AH, 13

    JZ    NEXT1

    CMP   AH, 'a'

    JB    NEXT1

    CMP   AH, 'z'

    JA    NEXT1


    MOV   STR2[BX], AL

    MOV   STR2[BX + 1], AH

    ADD   BX, 2

    JMP   LP


NEXT1:

    MOV   AL, '@'

    MOV   STR2[BX], AL

    INC   BX

    JMP   LP


DISP:

    MOV   AH, 9

    LEA   DX, STR2

    INT   21H


EXIT:

    MOV   AH, 4CH

    INT   21H


CODES   ENDS

    END   START



提问者评价:谢谢!


0 0