如何使用MIPS阵列在特定位置存储数据?

时间:2015-09-25 18:27:27

标签: arrays mips

我希望设置一个数组,然后将整数存储在数组的特定元素中。例如,我想将数字7存储在数组的第21个元素中,将数字9存储在第27个元素中。我一直试图这样做:

       .data
array: .space 100

当我设置元素时:

la $t0, array
addi $v1, $0, 7
sw $v1, 84($t0)

我使用了4个多重偏移,因为存储了一个字但是我不确定错误(异常4和5)是否因为我试图将字存储在字节数组中。

1 个答案:

答案 0 :(得分:0)

你的代码很好。我想你的问题是array没有正确对齐。 内存总是被认为是一个字节数组,但MIPS不允许在未对齐的地址上加载/保存32位字(未对齐意味着该地址不是4的倍数)。

.align 2标签前使用指令array