两套指令,同一个结果

两套指令,同一个结果

运行下面这段程序,填写它打印出来的结果。 def seq_a(x): x = x + x x = x + x return x & 255 def seq_b(x):

阅读更多 →
微架构和指令集的区别

微架构和指令集的区别

「微架构」和「指令集」的区别是【0】。

阅读更多 →
指令集为什么很难改

指令集为什么很难改

一个流行的指令集几乎不会删指令。原因是【0】。

阅读更多 →
编译器和指令集的关系

编译器和指令集的关系

编译器和指令集之间的关系是【0】。

阅读更多 →
⚠️ 该取数据的地方取成了地址

⚠️ 该取数据的地方取成了地址

把「寄存器间接」写成了「寄存器直接」——少走了一步。⚠️ 它不会报错,把两版的结果都打出来。

阅读更多 →
两条路取同一个数,对一遍账

两条路取同一个数,对一遍账

同一个数,用「直接寻址」和「寄存器间接寻址」各取一次,看是不是同一个。

阅读更多 →
用寻址取出数组的第 k 个

用寻址取出数组的第 k 个

数组的基地址在寄存器里,下标是立即数。用「基址加下标」的方式取出第 2 个和第 3 个元素。

阅读更多 →
自己写:四种寻址

自己写:四种寻址

补全 fetch_operand:按模式取出操作数。0 立即数、1 寄存器、2 直接、3 寄存器间接。

阅读更多 →
四种寻址,取到四个不同的数

四种寻址,取到四个不同的数

运行下面这段程序,填写它打印出来的结果。 MEM = [9, 71, 131, 192, 5, 6, 7, 8] R = [4, 6] imm = 3 reg = R[0] direct = MEM

阅读更多 →
为什么要有这么多种寻址

为什么要有这么多种寻址

一个指令集要提供好几种寻址方式,根本原因是【0】。

阅读更多 →