机器语言是由计算机直接使用的二进制编码指令构成的语言,每条机器语言只能执行一个非常低级的任务,但其却是一切编程语言的基础与起源,因此对机器语言进行了解是计算机学习必不可少的一环。
大家对机器语言难以理解的根源还是因为其抽象性,对此我们有必要先了解Pep/9的部分指令:

操作码 指令的意义
0000 停止执行
1100 将字载入寄存器A中
1101 将字节载入寄存器A中
1110 存储寄存器A中的字
1111 存储寄存器A中的字节
0110 将操作数加到寄存器A中
0111 从寄存器A减操作数

然后我选择直接用例子来向大家解释:

1. 行为:将‘H’载入累加器中

二进制指令:1101 0000
                      0000 0000 0100 1000

解释:1101是指令说明符,表示将字节载入寄存器的操作,0000是寄存器说明符和寻址模式的代码,表示立即寻址,即其下操作说明符中的值即为需要被操作的值。
0000 0000 用于占位,因为‘H’不需要16位二进制字符表示,所以需要0来占位。
0100 1000 是ASCII字符集中用于表示‘H’的编码。0100 1000 是ASCII字符集中用于表示‘H’的编码。

### 2. 行为:将‘i‘载入累加器中

二进制指令:1101 0000
                      0000 0000 0110 1001

解释:与上述同理,只是最后被替换为了0110 1001(‘i‘的编码)

如此一来,机器语言便显得简单易懂了,其实部分同学觉得很难的原因还是源于没有静下来认真思考分析,分析之后可以发现这其实是一个很机械的过程。        

相关文章: