每条指令单独验一遍
运行下面这段程序,填写它打印出来的结果。
PROG = [0b00001001, 0b01000111, 0b10000011, 0b11000000]
def decode(w):
return (w >> 6) & 3, (w >> 5) & 1, w & 31
def step(R0, w):
op, rd, imm = decode(w)
if op == 0:
return imm
if op == 1:
return (R0 + imm) & 255
if op == 2:
return (R0 - imm) & 255
return R0
print("/".join(str(step(9, w)) for w in PROG))
全部评论