美文网首页
汇编语言上机考试题3

汇编语言上机考试题3

作者: 魔一方 | 来源:发表于2018-10-21 20:19 被阅读0次

    请任意输入一个字符串,将其中的英文字母全部删除,并将结果显示在屏幕上。

    这道题的注释没有分号,如果直接复制粘贴要手动加以下,懒得切换中英文了。

    这个就是前两个题的升级版
    DATAS SEGMENT

        BUF1 DB 100

        DB ?

        DB 100 DUP(?)

    DATAS ENDS

    STACKS SEGMENT

        ;此处输入堆栈段代码

    STACKS ENDS

    CODES SEGMENT

        ASSUME CS:CODES,DS:DATAS,SS:STACKS

    START:

        MOV AX,DATAS

        MOV DS,AX

        LEA DX,BUF1

        MOV AH,0AH;读入键盘输入的东西

        INT 21H

        MOV DL,0AH;换行

        MOV AH,02H

        INT 21H

        MOV BL,BUF1[1];存入输入的个数

        MOV SI,2;设置开始的地方

    CHULI:

    CMP BL,0;

    JZ EXIT

    CMP BUF1[SI],'A' 首先看是不是大于A

    JNB ISDAXIE

    JB ISNOT

    ISDAXIE:

    CMP BUF1[SI],'Z'  再看是不是小于Z 这样确定大写字母

    JA ISXIAOXIEA

    JNA ZIMU

    ISXIAOXIEA:

    CMP BUF1[SI],'a'      是比a大么

    JB ISNOT

    JNB ISXIAOXIEZ

    ISXIAOXIEZ:   是比z小么?

        CMP BUF1[SI],'z'  

        JA ISNOT

        JNA ZIMU

    ISNOT:  如果不是字母就打印出来

    MOV DL,BUF1[SI]

    MOV AH,02H

    INT 21H

    INC SI

    DEC BL

    JMP CHULI

    ZIMU:   是字母的话 就直接跳过

    INC SI

    DEC BL

    JMP CHULI

    EXIT:

        ;此处输入代码段代码

        MOV AH,4CH

        INT 21H

    CODES ENDS

        END START

    相关文章

      网友评论

          本文标题:汇编语言上机考试题3

          本文链接:https://www.haomeiwen.com/subject/qhfizftx.html