机器语言,汇编语言,高级语言各有什么特点_程序设计语言有哪些

机器语言,汇编语言,高级语言各有什么特点_程序设计语言有哪些用于程序设计的语言基本上分为3种:机器语言、汇编语言和高级语言

目录

前言

一、机器语言

二、汇编语言

1、概念

2、特点

3、相关概念

4、汇编指令

三、高级语言

完结



前言

用于程序设计的语言基本上分为3种:机器语言、汇编语言和高级语言。
下面,将分别介绍三种的概念、特点、运用等内容。而对于学习单片机,了解一定的汇编语言是所必须的,比如,stm32的启动文件就是由汇编语言编写的。


一、机器语言

用二进制代码表示的指令、数字和符号简称为机器语言。由二进制代码组成,可以直接由微处理器进行译码、执行。一条机器指令应包含要求微处理器所要完成的操作,以及参与该操作的数据或该数据所在的地址,有时还要有操作结果的存放地址信息,这些都是以二进制数字的形式表示的,当然,也有某些特殊指令不需要数据或地址。
我们在
给单片机烧写程序时所用的文件(后缀为.hex)就是由机器语言编写的文件。也即是说单
片机等微机所能直接识别并运行的就是机器语言(二进制表示),如果是其他语言(汇编语言、高级语言)编写的代码必须经过编译软件进行处理,转换得到机器语言之后,才能够给微机烧录。如下,在通过
stc-isp.exe程序给51单片机烧写代码时,可以看到打开的程序文件,全是由十六进制表示的二进制代码。

机器语言,汇编语言,高级语言各有什么特点_程序设计语言有哪些

特点:
直接由二进制数表示代码,不易懂,难记忆,易出错。

二、汇编语言

1、概念

汇编语言是一种使用助记符来代替机器指令的操作码,并且使用地址符号或标号来代替指令或操作数的地址的语言,又称为符号语言

2、特点

助记符指令和机器指令一一对应,用汇编语言编写的
程序效率高,占用存储空间小,运行速度快
,用汇编语言能编写出最优化的程序。能直接管理和控制硬件设备(功能部件),它能处理中断,也
能直接访问存储器及I/O接口电路。汇编语言和机器语言都脱离不开具体机器的硬件,均是面向“


的语言,
缺乏通用性
因此汇编语言只能在特定CPU的机器语言指令集中找到对应的映射,在不同CPU上无法直接移植,汇编的指令集不一样,指令格式不一样,寻址方式也不一样。每一款CPU都有它自己的汇编指令集,在这款CPU上能用的汇编代码,换一款就不一定能用了,严格来说,即使是一个厂家的产品,不同代的CPU,指令集向前兼容,但是可能会加入新的指令 。
如ARM汇编指令集和MCS—51的汇编指令集就不同。

3、相关概念

将汇编语言转换成为二进制代码表示的机器语言的程序称为
汇编程序

原始的汇编语言程序称为
源程序
汇编语言源程序 “翻译”成机器代码(指令代码)的过程称为“
汇编”,
经汇编程序“
汇编(翻译、编译)

得到的机器语言程序称为
目标程序
。汇编可分为
手工汇编
机器汇编两类:
①手工汇编:
人工查表翻译指令
。但遇到的相对转移指令的偏移量的计算,要根据转移的目标地址计算偏移量,不但麻烦,且容易出错。
②机器汇编:用编辑软件进行源程序的编辑。编辑完成后,生成一个ASCII码文件,扩展名为“.asm”。然后在微计算机上运行汇编程序,把汇编语言源程序翻译成机器代码。汇编的过程需要在另外一台计算机上进行。
虽然可以用人工汇编,但是人工汇编太麻烦,且容易出错,人们就编写了专门的汇编程序来完成这项工作,用汇编程序进行汇编就会容易、快速、准确,还能把语法不正确的语句找出来,利于用户的程序编写和调试。
当然,也可以
反汇编,即把机器语言转化为汇编语言。

机器语言,汇编语言,高级语言各有什么特点_程序设计语言有哪些

4、汇编指令

指令语句:
即指令系统,不同硬件结构的计算机对应着不同的指令系统,每一条指令语句在汇编时都产生一个指令代码——
机器代码。
伪指令语句:是为汇编服务的,是指示性语句。在
汇编时没有机器代码与之对应

即伪指令语句只是为了辅助整个汇编源程序逻辑建立等。

三、高级语言

汇编指令虽然较二进制机器指令容易阅读和编写,但还是不如高级语言更接近英语自然语言。解决方法是用高级语言编程,再用某种特殊程序翻译成机器语言。如C、C++、Python、Java、Matlab、LabVIEW等等,都属于高级语言,相对于低级语言(机器语言和汇编语言),它更接近于我们平时正常的人思维。

特点:编写容易,代码可读性好,可移植性好,也就是说,仅需稍作修改甚至不用修改,就可将一段代码运行在不同类型的计算机上。高级语言的好处就在于,语言本身与设备是无关的,同样的代码,在编译的时候编译器会根据目标环境把高级语言编译成相应的机器语言,这样就可以适应更多种类的运行环境。而高级语言只关心逻辑,不同语言之间只需要“翻译” — 即改变语法结构,数据结构一般不做改动或只做微小改动即可。

编译器:具体地说,针对某个用户系统用高级语言编写的用户程序翻译成某个具体的微处理器的机器语言程序(这种过程叫做编译)的软件,叫做编译器。

现在市面上有各种C编译器,能把C语言转换成某个具体的微处理器的机器语言。这种编译器比较适宜于对汇编语言不熟悉的用户使用,其缺点是不可避免地会出现编译后的机器程序冗长、不够简练,导致程序运行时间长、速度低等问题。另外,用汇编语言编程能更有利于硬件电路与程序的结合设计与调试。

当然,在有些时候,会将汇编语言与高级语言混合使用。如STM32用汇编语言写启动文件,而其他部分又通过C语言来进行开发。


完结

本文属于微机基础概念及其内容这篇文章的补充内容,喜欢的铁子可以查阅。

有误之处望指正。

今天的文章机器语言,汇编语言,高级语言各有什么特点_程序设计语言有哪些分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/80790.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注