代码之家  ›  专栏  ›  技术社区  ›  Artemis

寄存器与指令之间的差异

  •  1
  • Artemis  · 技术社区  · 6 年前

    住店登记和住店登记有什么区别?

    我的理解是,live out寄存器意味着当前行中指定的寄存器包含一个与其后续行相同的变量。

    这是我的 编译器 有助于回答问题的考试

    L0 : lim z, 0
    L1 : jmp L6
    L2 : sub x, x, y
    L3 : mov t, z
    L4 : lim z, 0
    L5 : addi z, t, 1
    L6 : blth y, x, L2
    
    1 回复  |  直到 6 年前
        1
  •  3
  •   Johan    6 年前

    简而言之,对于程序中的给定指令,如果寄存器在指令执行之前处于活动状态,则寄存器处于活动状态;如果寄存器在指令执行之后处于活动状态,则寄存器处于活动状态。

    从一开始,如果寄存器的内容将在寄存器重置之前使用,则寄存器在程序中的给定点处于活动状态。例如,在 L2 L3 ,寄存器 z 是实时的,因为它将在将来使用(由 L3级 )但是 t 因为没有使用 t型 更改值之前。这意味着 z 是为 L3级 在外面生活 L2级 虽然 t型 不是。