从键盘输入一个字符,判断其是不是大写字母,如果是则请输出这个大写字母,如果不是请输出“这不是一个大写字母”的英文信息(要求:能连续输出直到输出“#”结束)。

P155
例4.13

DATA SEGMENT
STR     DB 0DH,0AH,'This is not an upper letter!$'    ;0DH为回车符、0AH为换行符
DATA    ENDS
CODE    SEGMENTASSUME   CS:CODE,DS:DATA
START:  MOV AX,DATA ;MOV    DS,AX   ;
NEXT:   MOV AH,1    ;调用1号功能,带回显的键盘输入,AH=01INT 21H        ;实现单字符输入,即将从键盘输入的字符的ASCII码值送到AL寄存器中,同时回显在屏幕上CMP AL,'#'  ;输入的单个字符已经存放到AL中,然后拿AL与'#'进行比较(相减)JZ EXIT    ;JZ--->ZF=1,零标志位为1跳转,即结果为0跳转到EXIT  若AL为'#',跳转到EXIT处,否则跳过该指令执行下一条指令CMP AL,'A'    ;拿AL与'A'进行比较(相减)JB  OUTPUT  ;JB--->AL<'A'(低于/不高于也不等于)跳转,即AL内容所对应的ASCII码值比'A'对应的ASCII码值小,跳转到OUTPUT处  若AL<'A',跳转到OUTPUT处,否则跳过该指令执行下一条指令CMP  AL,'Z'    ;拿AL与'Z'进行比较(相减)JA  OUTPUT  ;JA--->AL>'Z'(高于/不低于也不等于)跳转,即AL内容所对应的ASCII码值比'Z'对应的ASCII码值大,跳转到OUTPUT处  若AL>'Z',跳转到OUTPUT处,否则跳过该指令执行下一条指令;当程序走到此条指令,即输入的单个字符为单个大写字母,输出AL寄存器里面的内容即可MOV   AH,2    ;调用2号功能单字符输出MOV DL,AL   ;输出内容为DL寄存器里面的数据INT 21H     ;将DL寄存器中的字符在显示器上输出显示JMP NEXT    ;由题目要求可得,能连续输出直到输出“#”结束,即遇到'#'程序才可结束,重新跳转NEXT处再次进行判断
OUTPUT: MOV DX,OFFSET STR   ;OFFSET返回变量或标号的偏移地址属性值,即将STR存放字符串的首地址传递给DXMOV    AH,9    ;调用9号功能,字符串输出INT 21H     ;将数据段DS中从偏移地址DX处开始的,以'$'字符结尾的字符串输出到显示器上 回车、换行、然后输出'This is not an upper letter!'JMP  NEXT    ;由题目要求可得,能连续输出直到输出“#”结束,即遇到'#'程序才可结束,重新跳转NEXT处再次进行判断
EXIT:   MOV AH,4CH  ;调用4CH号功能,返回DOS操作系统INT 21H       ;终止当前程序的运行,并返回DOS系统
CODE    ENDS        ;END    START   ;

从键盘输入一个字符,判断其是不是大写字母,如果是则请输出这个大写字母,如果不是请输出“这不是一个大写字母”的英文信息(要求:能连续输出直到输出“#”结束)。相关推荐

  1. C语言 编写程序:由键盘输入一个字符判断是字母数字还是其他符号。

    c语言程序题 编写程序:由键盘输入一个字符判断是字母数字还是其他符号. #include<stdio.h> void main() {char a;scanf("%c" ...

  2. java 键盘输入密码,(JAVA)从键盘输入一批字符,以@结束,按要求加密并输出

    从键盘输入一批字符,以@结束,按要求加密并输出. 输入 从键盘输入一批字符,占一行,以@结束. 输出 输出占一行 加密规则: 1)所有字母均转换为小写. 2)若是字母'a'到'y',则转化为下一个字母 ...

  3. 【例10.1】从键盘输入一些字符,并逐个把它们送到磁盘上去,直到用户输入一个“#”为止。从键盘输入一些字符,并逐个把它们送到磁盘上去,直到用户输入一个“#”为止。

    [例10.1]从键盘输入一些字符,并逐个把它们送到磁盘上去,直到用户输入一个"#"为止. #include<stdio.h> #include<stdlib.h& ...

  4. 输入一个字符判断是数字还是字母 如果是字母是大写字母还是小写字母 是声母还是韵母

    输入一个字符判断是数字还是字母 如果是字母是大写字母还是小写字母 是声母还是韵母 运行结果 ASCII码表(字符代表的数值) 代码 //导包 import java.util.Scanner;//声明 ...

  5. java编程用户输入两个数字_编写一个Java应用程序,要求从键盘输入两个整数,计算这两个数据...,编写一个Java应用程序,要求从键盘输入一个数,判断该数是不...

    导航:网站首页 > 编写一个Java应用程序,要求从键盘输入两个整数,计算这两个数据...,编写一个Java应用程序,要求从键盘输入一个数,判断该数是不 编写一个Java应用程序,要求从键盘输入 ...

  6. 【汇编语言】从键盘输入一字符,判断该字符是小写字母、大写字母、数字或其它字符

    实验内容:键盘输入一字符,判断该字符是小写字母.大写字母.数字或其它字符. 若输入为小写字母,显示"You Input a Lowercase Letter!": 若输入为大写字母 ...

  7. 从键盘输入一批字符,以@结束,按要求加密并输出。

    题目描述: 输入 从键盘输入一批字符,占一行,以@结束. 输出 输出占一行 加密规则: 1).所有字母均转换为小写. 2).若是字母'a'到'y',则转化为下一个字母. 3).若是'z',则转化为'a ...

  8. C语言文件:从键盘输入一些字符,并逐个把它们送到磁盘上去,直到用户输入一个“!”为止。

    题目: 从键盘输入一些字符,并逐个把它们送到磁盘上去,直到用户输入一个"!"为止. #include <stdio.h> #include <stdlib.h&g ...

  9. 汇编语言: 试编制一个程序:从键盘输入一行字符,要求第一个键入的字符必须是空格符,如不 是,则退出程序;如是,则开始接收键入的字符并顺序存放在首地址为buffer的缓冲区中(空 格符不存入),直到接收

    试编制一个程序:从键盘输入一行字符,要求第一个键入的字符必须是空格符,如不 是,则退出程序:如是,则开始接收键入的字符并顺序存放在首地址为buffer的缓冲区中(空 格符不存入),直到接收到第二个空格 ...

  10. 统计不同字符个数。用户从键盘输入一行字符,编写一个程序,统计并输出其中英文字符、数字、空格和其他字符的个数

    统计不同字符个数.用户从键盘输入一行字符,编写一个程序,统计并输出其中英文字符.数字.空格和其他字符的个数 s = input("请输入一行字符:") letter = 0 #字母 ...

最新文章

  1. TCP/IP详解--第一章
  2. php批量生成产品编号:xxx.000001,并依次递增
  3. Qualcomm式创新融入中国 有何深层逻辑?
  4. SpringBoot————快速搭建springboot项目
  5. C/C++排序算法(3)冒泡排序
  6. oracle重新生成控制文件,Oracle重建控制文件的语法
  7. 火柴排队(codevs 3286)题解
  8. BAT 争抢的全栈工程师真的存在?
  9. easypoi list中的map导出_EasyPOI简单用例,简单有效
  10. OpenCV C++安装和配置
  11. 个人博客网站的设计与实现
  12. 清理Windows Temp目录下的cab*文件
  13. 在VS code中运行matlab
  14. React Toolkit使用
  15. 《数据解构》HashMap源码解读
  16. 【概率论与数理统计】猴博士 笔记 p11-14 一维、二维离散型求分布函数和期望、方差
  17. 让猴子游泳,让鸭子爬树
  18. 愚公移山和加特林打僵尸(递归)
  19. 某灵JAVA互联网架构师专题/分布式/高并发/微服务
  20. MySQL可重复读隔离级别为何没有解决幻读(MVCC原理简介)

热门文章

  1. So Easy! 让开发人员更轻松的工具和资源
  2. 完全CSS实现鼠标移上出现层的效果(超简单)
  3. SSM+solr 通过商品搜索学习solr的简单使用
  4. C#中结构体定义并转换字节数组
  5. 在物欲横流,心浮气躁的今天,毕业生靠什么来维持自己的梦想?
  6. [回归分析][10]--相关误差的问题
  7. centos7.2下编译安装git
  8. Linux中exit与_exit的区别
  9. 两种方法将Android NDK samples中hello-neon改成C++
  10. 使用ACE_SOCK_SEQPACK_Association获取socket连接的本地及远程IP端口信息