访问内存地址
嵌入式系统经常会要求程序员去访问某些特定的内存位置,要求读取地址的里面的内容或者向改地址写入新值,特别是在嵌入式处理器的开发中操作寄存器时经常出现这种问题,比如要求设置一绝对内存地址为0x40020800的位置,将该地址里面的内容设置为整形值0x3456,编写代码并且完成这一任务.
int *pt;
pt = (unsigned long *)0x40020800;
*pt = 0x3456;
*(unsigned long *)0x40020800 = 0x3456;
#define ADDR (*(volatile unsigned long *)0x40020800)
ADDR = 0x3456;