机器语言

机器语言是什么

机器语言(MachineLanguage)是一种指令集的体系。这种指令集,称机器码(MachineCode),是电脑的 CPU 可直接解读的数据。机器码有时也被称为原生码(NativeCode),这个名词比较强调某种编程语言或库,它与运行平台相关。

机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。它是计算机的设计者通过计算机的硬件结构赋予计算机的操作功能。

一种 CPU 的指令系统,也称 CPU 的机器语言。它是该 CPU 可以识别的一组由 1 和 0 序列构成的指令码。用机器语言编写程序,就是从实用的 CPU 的指令系统中挑选合适的指令,组成一个指令系列。

一条指令就是机器语言的一个语句,它是一组有意义的二进制代码,指令的基本格式如,操作码字段 和 地址码字段,其中:

用机器语言编写程序,编程人员要首先熟记所用计算机的全部指令代码和代码的涵义。手编程序时,程序员得自己处理每条指令和每一数据的存储分配和输入输出,还得记住编程过程中每步所使用的工作单元处在何种状态。这是一件十分繁琐的工作。编写程序花费的时间往往是实际运行时间的几十倍或几百倍。而且,编出的程序全是些 0 和 1 的指令代码,直观性差,还容易出错。除了计算机生产厂家的专业人员外,绝大多数的程序员已经不再去学习机器语言了。

机器语言是微处理器理解和使用的,用于控制它的操作二进制代码。8086 到 Pentium 的机器语言指令长度可以从 1 字节到 13 字节。尽管机器语言好像是很复杂的,然而它是有规律的。存在着多至 100000 种机器语言的指令。

指令部分举例:

暂存器部分举例:

内存部分举例:

指令集举例:

机器语言缺点

这些弊端造成当时的计算机应用未能迅速得到推广。