没这样用过,分析错了还请指出来,共同进步
对volatile我不熟悉,是一种类型修饰吧,查了一下,就是告诉编译器被volatile修饰的变量是可以其他程序修改的,每次读取数据都要从原地址读取数据,不能使用系统中的备份
那么(*(volatile unsigned *)0x4a000000)就好理解了
首先volatile unsigned *说明是不稳定无符号整形指针
其次(volatile unsigned *)0x4a000000说明将0x4a000000d强制类型转换成一个不稳定无符号整形指针类型
最后(*(volatile unsigned *)0x4a000000)说明取0x4a000000d那个地址中的值