问题描述
解决方案
1.volatile是说该变量的值可能被意想不到的修改,让编译器不要做优化,其实就是让编译器不要用寄存器来缓存该变量,每次都从内存读取该变量。
2.寄存器变量使用register修饰,就是建议编译器使用寄存器来存储该变量。
3.端口数据,我猜测可能是指io映射的内存地址中的数据,这种数据可能被外设修改。
时间: 2024-10-03 13:01:36
1.volatile是说该变量的值可能被意想不到的修改,让编译器不要做优化,其实就是让编译器不要用寄存器来缓存该变量,每次都从内存读取该变量。
2.寄存器变量使用register修饰,就是建议编译器使用寄存器来存储该变量。
3.端口数据,我猜测可能是指io映射的内存地址中的数据,这种数据可能被外设修改。