加一条跳转,程序开始绕圈
运行下面这段程序,填写它打印出来的结果。
PROG = [0b00001001, 0b01000111, 0b11000001]
def decode_a(w):
return (w >> 6) & 3, (w >> 5) & 1, w & 31
r = 0
pc = 0
guard = 0
while pc < len(PROG):
guard = guard + 1
if guard > 8:
break
op, rd, imm = decode_a(PROG[pc])
if op == 0:
r = imm
pc = pc + 1
elif op == 1:
r = (r + imm) & 255
pc = pc + 1
else:
pc = imm
print(str(r) + "/" + str(guard))
全部评论