机器语言、汇编语言,计算机才能听懂的语言

1.机器语言

机器语言是最早的计算机语言,也是计算机唯一可以识别和接受的语言。谈到机器语言,我们就不得不再一次谈到“指令”。

机器语言、汇编语言,计算机才能听懂的语言

同军舰上的旗语一样,人们在设计某一类型计算机的同时也为它设计了一套“旗语”——“指令系统”。指令系统就是一台计算机所能执行的全部指令。在指令系统中,人们事先规定好了某一个二进制代码代表的是哪一种操作。例如在16位机上,人们规定:用1011011000000000作为一条加法指令,计算机在接收到此指令后就执行一次加法,用1011010100000000作为减法指令,命令计算机去执行一次减法等等。16个“0”和“1”的排列组合可以形成65 536条指令,这些指令通过一定的逻辑电路转换为不同的电信号,就可以“指挥”计算机执行各种不同的操作了。这种由“0”和“1”组成的指令,就叫做“机器指令”。一种计算机系统的全部机器指令的集合就称为该计算机的“机器语言”。

机器语言、汇编语言,计算机才能听懂的语言

2.汇编语言(Assembler Language)

试着记住下面这些字符串:“ADD 1,2”、“SUB 1,2”、“1011011000000000”、“1011010100000000”,你先记住了谁?显然是前面两个。它们就是汇编语言的加法和减法语句。由于以二进制编码产生的机器语言既难懂又难记,人们为了便于阅读记忆,就将原来的机器代码以英文字符串的形式来表示,这就是汇编语言。例如用汇编语言“ADD 1,2”中的“ADD”代表机器语言“1011011000000000”,表示要求计算机做一次加法;用汇编语言“SUB 1,2”中的“SUB”代表机器语言“1011010100000000”,表示要求计算机做一次减法等等。比起那两串长长的二进制代码,“ADD”和“SUB”是不是简单好记得多?

汇编语言的出现大大方便了程序员的程序编写和记忆,使计算机语言的发展向前迈进了一大步。但实际上,汇编语言仍然是一种低级语言,仍然是面向机器硬件的程序设计语言。不过也正因为如此,汇编语言今天仍被广泛用于编写面向机器硬件的实时控制程序和系统程序。例如机器自检、系统初始化、实际的输入和输出设备的操作等等。

机器语言、汇编语言,计算机才能听懂的语言

看到这里我要提个问题了:你认为机器语言和汇编语言只有一种吗?回答是“NO”。由于机器语言和汇编语言都是面向计算机硬件的低级语言,所以不同的硬件生产厂商都会有自己的机器语言和汇编语言——“方言”。不同机器之间的“方言”是互不相通的。其次我要说明的是:用汇编语言编写的程序计算机是无法直接识别的。必须将汇编语言源程序编译成相应的机器语言目标程序,计算机才能识别。


分享到:


相關文章: