扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:宋宝华 来源:天极网 2007年11月22日
关键字:
const int a; int const a; const int *a; int * const a; int const * a const; |
const int SIZE = 10; char a[SIZE]; /* 非法:编译阶段不能用到变量 */ |
int a,b,c; a = inWord(0x100); /*读取I/O空间0x100端口的内容存入a变量*/ b = a; a = inWord (0x100); /*再次读取I/O空间0x100端口的内容存入a变量*/ c = a; |
int a,b,c; a = inWord(0x100); /*读取I/O空间0x100端口的内容存入a变量*/ b = a; c = a; |
volatile int a; |
typedef unsigned char BYTE; typedef unsigned int WORD; /* 函数功能:读NVRAM中字节 * 参数:wOffset,读取位置相对NVRAM基地址的偏移 * 返回:读取到的字节值 */ extern BYTE ReadByteNVRAM(WORD wOffset) { LPBYTE lpAddr = (BYTE*)(NVRAM + wOffset * 2); /* 为什么偏移要×2? */ return *lpAddr; } /* 函数功能:读NVRAM中字 * 参数:wOffset,读取位置相对NVRAM基地址的偏移 * 返回:读取到的字 */ extern WORD ReadWordNVRAM(WORD wOffset) { WORD wTmp = 0; LPBYTE lpAddr; /* 读取高位字节 */ lpAddr = (BYTE*)(NVRAM + wOffset * 2); /* 为什么偏移要×2? */ wTmp += (*lpAddr)*256; /* 读取低位字节 */ lpAddr = (BYTE*)(NVRAM + (wOffset +1) * 2); /* 为什么偏移要×2? */ wTmp += *lpAddr; return wTmp; } /* 函数功能:向NVRAM中写一个字节 *参数:wOffset,写入位置相对NVRAM基地址的偏移 * byData,欲写入的字节 */ extern void WriteByteNVRAM(WORD wOffset, BYTE byData) { … } /* 函数功能:向NVRAM中写一个字 */ *参数:wOffset,写入位置相对NVRAM基地址的偏移 * wData,欲写入的字 */ extern void WriteWordNVRAM(WORD wOffset, WORD wData) { … } |
图1 CPU与NVRAM地址线连接 |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者