Arm 什么是+;3“;在while(*(MPcore_private_timer_ptr+;3)==0)中表示什么?

Arm 什么是+;3“;在while(*(MPcore_private_timer_ptr+;3)==0)中表示什么?,arm,fpga,intel-fpga,soc,Arm,Fpga,Intel Fpga,Soc,我目前正在阅读DE0纳米SoC计算机系统 在ARM Cortex-A9用户指南中,我发现了一个c代码,我不明白“*(MPcore\u private\u timer\u ptr+3)”中的“+3”是什么意思 *(MPcore\u private\u timer\u ptr+3)与MPcore\u private\u timer\u ptr[3]相同。 取消对递增指针的引用。*(MPcore\u private\u timer\u ptr+3)与MPcore\u private\u timer\u

我目前正在阅读DE0纳米SoC计算机系统 在ARM Cortex-A9用户指南中,我发现了一个c代码,我不明白“*(MPcore\u private\u timer\u ptr+3)”中的“+3”是什么意思

*(MPcore\u private\u timer\u ptr+3)
MPcore\u private\u timer\u ptr[3]
相同。 取消对递增指针的引用。

*(MPcore\u private\u timer\u ptr+3)
MPcore\u private\u timer\u ptr[3]相同。

取消对递增指针的引用。

在@yar的回答之后,
MPcore\u private\u timer\u ptr
是指向内存映射计时器基址的指针,即计时器的寄存器都从该地址开始。+3偏移量会将您带到该计时器的另一个寄存器(在本例中为中断状态寄存器)。

继@yar的答案之后,
MPcore\u private\u timer\u ptr
是指向内存映射计时器基址的指针,即计时器的寄存器都从该地址开始。+3偏移量将您带到该计时器的另一个寄存器(在本例中为中断状态寄存器)

大宗报价

*(MPcore_private_timer_ptr+3)=1;//复位定时器标志位

是关于:

*(&MPcore_private_timer_ptr[3])=1;//复位定时器标志位

大宗报价

*(MPcore_private_timer_ptr+3)=1;//复位定时器标志位

是关于:

*(&MPcore_private_timer_ptr[3])=1;//复位定时器标志位

while (1)
{
*HPS_GPIO1_ptr = HPS_LEDG; // turn on/off LEDG
while (*(MPcore_private_timer_ptr + 3) == 0)
; // wait for timer to expire
*(MPcore_private_timer_ptr + 3) = 1; // reset timer flag bit
HPS_LEDG ^= bit_24_pattern; // toggle bit that controls LEDG
}