括号在MIPS中起什么作用?

问题描述 投票:0回答:1

我一直在研究一本项目书,作为对MIPS的介绍,但遇到了一个问题。本书中的代码行之一是lb $t3, ($t2)。我不知道括号是做什么的,因为在此之前,我还没有看到它们的用处,而书中只是没有提到它们。为什么代码不只是lb $t3, $t2

assembly mips addressing-mode
1个回答
0
投票

这将是间接寻址,在我曾经编程的所有处理器上都可用。

“ lb $ t3,$ t2”(如果有效)将导致$ t3等于$ t2。

“” lb不用于将一个寄存器设置为另一个寄存器的值,而是将一个寄存器设置为保存在内存中的值。

当($ t2)括号语法出现时,是指我们所设置的值不是直接在寄存器本身中的值。直接在寄存器本身中的值只是保存实际值的内存地址。

假设$ t2 = 57。

lb $ t3,($ t2)不会将$ t3设置为57,而是查找内存地址57,并将$ t3(低字节)设置为该内存地址的值。

[($ t2)表示寄存器$ t2间接引用了我们真正想要的值,而$ t2(不带括号)表示$ t2直接引用了我们想要的值。

© www.soinside.com 2019 - 2024. All rights reserved.