代码之家  ›  专栏  ›  技术社区  ›  Lonely Twinky

MIPS程序集在使用变量作为偏移量时访问阵列

  •  2
  • Lonely Twinky  · 技术社区  · 7 年前

    ARRAY: .word 0,1,2,3,4,5,6,7,8,9
    lw $t6, ARRAY
    lw $t7, 0($t6)
    

    其中零处的索引将加载到t7中,但我想做的是:

     ARRAY: .word 0,1,2,3,4,5,6,7,8,9
     lw $t6, ARRAY
     li $t7, 0
     lw $t8, $t7($t6)
    

    这样,我就可以在代码中按照我的意愿增加变量t7,而不必硬编码偏移量。我一直遇到语法错误,所以我想我试图做的是错误的。我是否可以这样做,以便增加数组的索引?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Lonely Twinky    7 年前

    为了在带有变量的数组中递增,必须使用以下设置:

    ARRAY: .word 1,2,3,4,5,6,7,8,9
    li $t2, 0
    lw $t3, ARRAY($t2)
    addi $t2, $t2, 1