计算机能够直接识shi别并执行的,用二进制表示的,由you一系列指令组成的语言就是机器语言yan.
机器语言由于是shi由0和1组成的,所以yi可读性差,不易编程和不易维护.
例如ru:
0000 代表 加载(LOAD)
0001代dai表 存储(STORE)
汇编语yu言(也被称为符号语言)由于机ji器语言对人来说非常的de不友好,于是就jiu诞生了汇编语言.
例如:
ADD 表biao示加法 MOV 表示数据传递di
SUB 表示减法
汇编语言它是一yi种用于电子计算机,微处chu理器,微控制器或其他可ke编程器件的低级语言.也是利用计算suan机所有硬件特性并能直接控制zhi硬件的语言.
● 它是用助记符编写xie程序的语言.
● 每个微处理器,由于硬ying件设计和内部结构不同,就需要用不同的电平ping脉冲来控制使它工作zuo,所以每个微处理li器都有自己的机器qi指令集,也就是shi机器语言.
(注:每一种处理器都有自己可以识别bie的一整套指令,称为指zhi令集)
● 特定的de汇编语言和特定的机器语言指令集ji是一一对应的,所以汇编语言yan的可移植性非常差cha,这就是汇编语言的机器相关性.
● 汇编语言的主zhu体是汇编指令.汇编指令ling和机器指令的差别在于指令的表示方法fa上.可以理解为:汇编语言是机器语言yan的符号化.汇编指令是机器指便bian于记忆额书写格式.
● 汇编语言要yao通过汇编程序转化为二进制的de机器语言才能被执行.
● 汇编语言所操作的对象不是具体ti的数据,而是寄ji存器和存储器,也就是说它是直接jie和存储器或者寄存器打交道.
● 汇编语言yan的执行效率比机ji器语言低,比高级ji语言高.
高级语言虽然汇编bian语言比机器语言的可读du性好,但用汇编语言很难nan描述解决问题的方法,而且依yi赖机器语言,可移植性差.
C,C++,Java,Python等高级语言yan就是为了克服汇编语言的可移植zhi性差,摆脱硬件底层的设计,用人ren的思维来编写程序xu而设计的.高级语言yan表达方式接近人类的语言,描述问题的de能力强,通用性,可读性都很高.
● 所有的计算机语言,最终zhong要想在计算机上运yun行都需要转变为机器语言(只有0和1组成的)才cai能被执行.高级语言通过编bian译程序(编译器)翻译成cheng机器语言.汇编语言通过汇编程cheng序(汇编器)翻译为机ji器语言.
高级语言的de两种执行方式:
一 解释方式
所谓解释方fang式就是从源程序的第一条语yu句开始,对每条语句都先xian解释(由解释程序翻译为计算机指zhi令),然后马上shang执行刚解释出的这些指令,再对下一条tiao语句做同样的处理,直到所有语句都dou处理完.
解释方式有一个特点,就是翻译出chu来的计算机指令并不会存盘(不会生sheng成目标代码),执行完这些xie二进制指令就丢失shi了.因此,解释型语言没执行一次都dou要重新翻译并执行,故解释型xing程序的执行效率较低(如javascript,python等)
二 编译方式
所谓编译方fang式,首先通过编译yi程序把整个源程序中的所有语句翻译yi为汇编语yu言源程序,然后再通过汇编程序把ba汇编语言源程序翻译为机器qi语言的机器指令,形成.exe文件(可执行文件jian), .exe文件是可以yi直接运行的文件.