寄存器和指针

时间:2016-11-30 10:32:37

标签: bit memory-address cpu-registers

你可以在寄存器中存储除存储器地址之外的任何东西吗?我试图在Google上找到答案,但我发现只有你可以存储指针。这种意味着你也可以存储其他东西,但是如果一个寄存器只有32位长,你怎么能存储一个64位的值呢?

1 个答案:

答案 0 :(得分:0)

  

你可以在寄存器中存储除存储器地址以外的任何东西吗?

没有。寄存器是CPU现在实际用于操作的内容。

在您可能知道的大多数体系结构中,CPU实际上并不关心寄存器的内容是否是地址,或者例如,计算的整数。事实上,通常以某种方式计算地址...

  

如何存储64位值,例如,如果寄存器只有32位长?

显然,不在那个登记册中。我不知道你指的是什么架构,但是对于好的'x86(思考:PC)架构,有不同长度的寄存器,其中一些可能是64位或更长。

另外,如果你的CPU实际上没有足够大的数据类型的寄存器,那么你需要将该数据类型加载到多个寄存器中或以某种方式顺序处理它。