arrays - 向地址添加直接值

标签 arrays mips memory-address mars-simulator

我在火星上写了一个MIPS程序。 我正在循环访问地址数组。

我这样写:

addi $t4, $t4, 8

其中 $t4 包含地址数组的基地址,并且每次循环运行时它都会移动 8。然后,循环完成后,我在该位置存储一个地址。

我的问题:我加8对吗?或者我应该添加1(1字节=8位,不确定添加到地址时使用什么数字...)

最佳答案

您应该添加数组每个元素的大小(以字节为单位)。由于 MIPS 上的地址是 32 位(4 字节),因此您应该添加 4。

关于arrays - 向地址添加直接值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9474712/

相关文章:

c++ - 使用锁 C++ 锁定数组的元素

c - 如果 C 有指针,为什么它需要数组?

assembly - MIPS 系统调用和 $t 寄存器

c - c中的数组名到底是什么?

c - 指针如何在 C 中工作 "under the hood"?

sinatra - Sinatra 应用程序中的绑定(bind)地址

java - 如何比较两个对象数组元素?

javascript - 从文本文件获取数据到多维数组 Javascript

C 中的调用堆栈回溯

assembly - 从MIPS切换到x86组装时我应该知道什么?