简述计算机程序设计语言(机器语言、汇编语言、高级语言)的优缺点

简述计算机程序设计语言(机器语言、汇编语言、高级语言)的优缺点,第1张

1 首先题目就有问题,不可能“接收从键盘输入的字符,以CTR+C 结束”。对于命令提示符来说,按下CTRL+C,就会强行退出这个程序,所以不可能以CTRL+C结束的。应该是按回车结束输入。

2 DATA里有中文标点符号。

3 输入字符后,按下回车,在C语言里运行的时候会自动换行,但是在汇编里不会,所以你要自己换行。

4 用MOV AH, 0AH; INT 21H中断输入后,输入的有效字符数存放在BUF1单元里,所以循环的时候应该把CX设置为BUF1单元里的值,而不是COUNT

5 输入的有效字符从BUF2单元开始存储,所以做大小写转换的时候,应该从BUF2单元开始,而不应该从BUF单元开始

6 61H和7AH都是小写字母,所以跳转指令中不应该有E。同时,有符号、无符号不要混用,所以JBE改为JB,JGE改为JA。

7 输入字符时,是以回车符作为结束;而输出字符时,是以'$'作为结束,所以对输入的字符,你要把最后一个回车符转为‘$'。

修改后的程序如下:

DATA SEGMENT

MESS1 DB 'INPUT: ',13,10,'$' 

NEWLINEDB 13, 10, '$' ;这行是专门用来换行的

MESS2 DB 'OUTPUT:',13,10,'$'

BUF DB 20

BUF1 DB

BUF2 DB 20 DUP()

COUNT EQU $-BUF

DATA ENDS

CODE SEGMENT 

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX 

MOV SI, 0

LEA DX,MESS1

MOV AH,09H

INT 21H

MOV DX,OFFSET BUF

MOV AH,0AH

INT 21H

LEA DX, NEWLINE ;专门用来换行

MOV AH, 9

INT 21H

MOV CL, BUF1

MOV CH, 0 ;BUF1单元中存放的是有效输入字符数

LOOP1:MOV AL,BUF2[SI] ;从BUF2单元开始才是有效字符

CMP AL,61H

JB NEXT ;JBE改为JB

CMP AL,7AH

JA NEXT ;JGE改为JA

SUB AL,20H

MOV BUF2[SI],AL ;从BUF2单元开始才是有效字符

NEXT: INC SI

LOOP LOOP1

MOV BUF2[SI], '$' ;循环结束,把当前的字符修改为'$'

LEA DX,MESS2

MOV AH,09H

INT 21H

MOV DX,OFFSET BUF2 ;从BUF2单元开始才是有效字符

MOV AH,09H

INT 21H

MOV AH,4CH

INT 21H

CODE ENDS

END START

汇编语言是一种用于电子计算机、微处理器、微控制器或其他可编程设备的低级语言,也称为符号语言。在汇编语言中,用助记符代替机器指令的 *** 作码,用地址符号或标号代替指令或 *** 作数的地址。同时,因为资源的稀缺性,计算机运行的效率也成为那个时代工程师追求的目标。为了更高效地使用计算机,人们设计了高级编程语言,以满足人们对高效简洁编程语言的追求。在编程语言被机器语言和汇编语言更新之后,人们发现了限制程序普及的关键因素——程序的可移植性。有必要设计一个可以独立于计算机硬件在不同机器上运行的程序。这样可以避免很多重复的编程过程,提高效率。同时,这种语言应该接近数学语言或人类自然语言。20世纪50年代,计算机还很匮乏的时候,第一个高级编程语言诞生了。那时候计算机的成本很贵,但是每天的计算量是有限的。如何有效利用计算机有限的计算能力,成为当时人们面临的问题。

以上就是关于简述计算机程序设计语言(机器语言、汇编语言、高级语言)的优缺点全部的内容,包括:简述计算机程序设计语言(机器语言、汇编语言、高级语言)的优缺点、汇编语言程序是什么、汇编语言程序设计题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9356203.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存