两种编码,结果必须一样

两种编码,结果必须一样

同一件事用两套指令算:一套五条精简指令,一套两条复杂指令。把两边的结果和总字节数都打出来。

阅读更多 →
自己写:算两种编码的总字节数

自己写:算两种编码的总字节数

给一段程序的每条指令长度,算出总字节数。定长那边每条一律 4 字节,变长那边按给的长度算。

阅读更多 →
定长下,第几条在哪个地址

定长下,第几条在哪个地址

运行下面这段程序,填写它打印出来的结果。 for i in range(4): print(i * 4, end="/")

阅读更多 →
同一段程序,两种编码各占多少字节

同一段程序,两种编码各占多少字节

运行下面这段程序,填写它打印出来的结果。 risc = 5 * 4 cisc = 2 + 3 + 4 print(str(risc) + "/" + str(cisc) + &qu

阅读更多 →
定长指令好在哪

定长指令好在哪

每条指令都一样长,最直接的好处是【0】。

阅读更多 →
CISC 的主张是什么

CISC 的主张是什么

CISC 这一派的主张是【0】。

阅读更多 →
RISC 的主张是什么

RISC 的主张是什么

RISC 这一派的主张是【0】。

阅读更多 →
自己写:带跳转的执行循环

自己写:带跳转的执行循环

补全执行循环:遇到跳转就把 PC 改成立即数,其余指令让 PC 加一。⚠️ 模板里已经埋了步数上限 guard,别删——跳转一旦回到前面,程序就不会自己停了。

阅读更多 →
自己写:指令分类器

自己写:指令分类器

补全 kind:按操作码把指令归进「传送 / 算术 / 控制」三类。操作码 0 是传送,1 和 2 是算术,3 是控制。

阅读更多 →
加一条跳转,程序开始绕圈

加一条跳转,程序开始绕圈

运行下面这段程序,填写它打印出来的结果。 PROG = [0b00001001, 0b01000111, 0b11000001] def decode_a(w): return (w >

阅读更多 →