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

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

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	;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/379313.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

再谈angularjs DI(Dependency Injection)

在前面已经介绍了关于angularjs&#xff0c;以及扩展了一些jQuery ui的一些组件为angularjs的directive。在这里应进口007 在上篇留言我们来看看在angularjs中的DI特性。 DI&#xff1a;依赖注入&#xff0c;是一种软件设计模式&#xff0c;应DIP依赖倒置原则&#xff0c;描述组…

Access sql语句创建表及字段类型

Create TABLE 测试表 ( 文本255 VARCHAR NOT NULL, 文本20 VARCHAR(20) NOT NULL, 日期时间 DATETIME, 数字1 BYTE, 数字2 SMALLINT, 数字4 INTEGER, 布尔 BIT, 自动编号 COUNTER(10, 5) CONSTRAINT PK_TVIPLevel26 PRIMARY KEY, 小数 NUME…

c语言getc函数_C语言中的getc()函数与示例

c语言getc函数C语言中的getc()函数 (getc() function in C) Prototype: 原型&#xff1a; int getc(FILE *filename);Parameters: 参数&#xff1a; FILE *filenameReturn type: int 返回类型&#xff1a; int Use of function: 使用功能&#xff1a; In the file handling…

汇编语言-015(PROC伪指令定义参数方式、EXTERNDEF、INCLUDE 、EXTERN 、INVOKE、PROC、PROTO 、MOVSB 、MOVSD 、CMPSD )

1&#xff1a;使用PROC伪指令定义参数方式不通过寄存器传参&#xff0c;计算数组之和 .386 .model flat,stdcall.stack 4096 ExitProcess PROTO,dwExitCode:DWORD.data array DWORD 10000h,20000h,30000h,40000h,50000h theSum DWORD ?.code ArraySum PROC USES esi ecx,ptr…

编写计算表达式(X-Y+25)/Z的值得程序,要求将其商和余数分别放在A、B单元中。(设X和Y是32位无符号数,A、B和Z是16位无符号数,不考虑溢出情况。)

编写计算表达式&#xff08;X-Y25&#xff09;/Z的值得程序&#xff0c;要求将其商和余数分别放在A、B单元中。&#xff08;设X和Y是32位无符号数&#xff0c;A、B和Z是16位无符号数&#xff0c;不考虑溢出情况。&#xff09; P151 例4.8 汇编思路&#xff1a;首先在DATA段定…

《深入浅出WPF》笔记——绑定篇(一)

上一节&#xff0c;有记录写到&#xff1a;在WPF里&#xff0c;数据驱动UI&#xff0c;数据占核心地位&#xff0c;UI次之。怎么恢复数据的核心地位&#xff0c;那就要先了解一下Binding。 一、Binding 基础 1.1WPF中Data Binding的带来的方便 在设计架构的时间&#xff0c;大家…

你的代码完成了吗?(之二)——可维护性和规范性

二. 可维护性和规范性 对于代码来说&#xff0c;这两个属性其实是紧密相连的。什么样的代码最好维护呢&#xff1f;当然是规范的代码了。再差的规范也要比没有规范强得多。 之前做对日项目的时候&#xff0c;日本人对于“规范”这个东西&#xff08;他们称之为开发规约&#xf…

c语言feof函数_使用示例的C语言中的feof()函数

c语言feof函数C语言中的feof()函数 (feof() function in C) Prototype: 原型&#xff1a; int feof(FILE* filename);Parameters: 参数&#xff1a; FILE *filenameReturn type: int(0 or 1) 返回类型&#xff1a; int(0或1) Use of function: 使用功能&#xff1a; In C l…

5种经典排序算法,每个程序员都应该知道

我的新书《Android App开发入门与实战》已于2020年8月由人民邮电出版社出版&#xff0c;欢迎购买。点击进入详情 有没有想过当您应用从低到高、从高到低或按字母顺序等过滤器时&#xff0c;亚马逊或任何其他电子商务网站中的产品如何排序&#xff1f;排序算法对于此类网站起着至…

汇编语言-016(SCASB 、STOSB 、LODSD 、数组中的取值、二维数组操作、冒泡排序和二分查找、CMPSW )

1&#xff1a; SCASB : (字节)将AL的值与EDI寻址的一个字比较。进行在一个字符串检索特定的字符 .386 .model flat,stdcall.stack 4096 ExitProcess PROTO,dwExitCode:DWORD.data alpha BYTE "ABCDEFGH",0.code main PROCmov edi,OFFSET alpha ;EDI指向字符串mov …

编写一个汇编语言程序,将字符串Hello World中的全部小写字母转换为大写字母,并存放回原地址处。

编写一个汇编语言程序&#xff0c;将字符串"Hello World"中的全部小写字母转换为大写字母&#xff0c;并存放回原地址处。 P176 4.10 编程思路&#xff1a;首先DATA段中&#xff0c;定义string存放字符串"Hello World"&#xff0c;LEN为字符串string长度…

在Python中使用OpenCV(CV2)对图像进行边缘检测

Modules used: 使用的模块&#xff1a; For this, we will use the opencv-python module which provides us various functions to work on images. 为此&#xff0c;我们将使用opencv-python模块&#xff0c;该模块为我们提供了处理图像的各种功能。 Download opencv-pytho…

需保留小数点两位,但同时不要小数点后多余0的前后台代码实现

今天碰到一个需求。关于小数点的处理&#xff0c;看起来非常简单的事情&#xff0c;却花了一定时间做了一些试验。最后简单总结一下&#xff0c;以便备忘。 需求简化一下表达是这样的&#xff1a; 有A、B两列&#xff0c;A/BC。这3列在数据库中都以decimal存放。 在应用中&…

汇编语言-017(SCASW 、STRUCT 、STRUCT_ALLPOINTS 、STRUCT_ALIGN 、SYSTEMTIME、UNION 、 STRUCTTEST )

1&#xff1a;SCASW : 在wordArray中扫描16位数值0100h,将匹配元素的偏移量复制到EAX .386 .model flat,stdcall.stack 4096 ExitProcess PROTO,dwExitCode:DWORD.data wordArray WORD 0500h,0400h,0300h,0200h,0100h.code main PROCmov ax,0100hmov edi,OFFSET wordArraymov …

【笔记】正则表达式[1]

元字符 符号 意思 示范 详例 \d 任意一个数字 \d{2}-\d{8} 22-12345678 * *前的符号重复任意次数 次数可以为零 \d* 222222222222... 或 2 \s 任意的空白符 全半角空格&#xff0c;tab&#xff0c;换行符 \bhi\b\s\bLucy\b hi Lucy 和*用法相似 次数>1 \d …

编写一个汇编语言程序,完成以下要求。从BUF单元处定义有10个带符号字数据:-1,3,24,94,62,72,55,0,-48,99,试找出他们中的最大值和平均值,并以此分别存放至该数据区的后两个单元

编写一个汇编语言程序&#xff0c;完成以下要求。从BUF单元处定义有10个带符号字数据:-1,3,24,94,62,72,55,0,-48,99&#xff0c;试找出他们中的最大值和平均值&#xff0c;并以此分别存放至该数据区的后两个单元中(假设这10个数的和值不超过16位范围) P176 4.12 编程思路&am…

prototype 的ajax

原文&#xff1a;http://www.prototypejs.org/learn/introduction-to-ajax]翻 译&#xff1a;www.ruby-china.cn 站长]Prototype框架提供了非常容易和有意思的方法处理Ajax的调用&#xff0c;同时它也是浏 览器安全的 。除了简单的请求外&#xff0c;这个模块&#xff08;指pro…

汇编语言-018(FLD 、FST、FSTP、FCHS、FABS 、浮点运算符、浮点比较 )

1&#xff1a;FLD : FPU&#xff08;浮点处理器&#xff09;的加载浮点数到堆栈指令 .386 .model flat,stdcall.stack 4096 ExitProcess PROTO,dwExitCode:DWORD.data array REAL8 10 DUP(?) dblOne REAL8 234.56 dblTwo REAL8 10.1.code main PROCfld array …

mcq 队列_MCQ | 基础知识 免费和开源软件| 套装4

mcq 队列Q1. What do you call the technique of storing encrypted user passwords in Linux? Q1。 您如何称呼在Linux中存储加密的用户密码的技术&#xff1f; System Password Management 系统密码管理 Shadow Password 影子密码 Encrypted Password 加密密码 None of the…

将AX寄存器中的16位数据分成4组(从高到低),每组4位,然后把这4组数作为数当中的低4位分别放在AL,BL,CL,DL中。

将AX寄存器中的16位数据分成4组&#xff08;从高到低&#xff09;&#xff0c;每组4位&#xff0c;然后把这4组数作为数当中的低4位分别放在AL&#xff0c;BL&#xff0c;CL&#xff0c;DL中。 P176 4.14 编程思路&#xff1a;首先用BX、DX存放AX&#xff0c;即原AX原BX原DX&…