#define MAKEWORD(a, b) ((WORD)(((BYTE)(a)) | ((WORD)((BYTE)(b))) << 8))

来源:互联网 发布:软件开发大学排名 编辑:程序博客网 时间:2024/06/05 03:16

"|" 是按位或运算符,对整型数进行二进制按位取或运算。比如 0110 0011 | 0011 0101-------------------- = 0111 0111定义MakeWord(a, b) 的含义应该是将a b合成一个字(双字节),比如 MakeWord(0xaa, 0xbb) 结果应该是0xbbaa,a在低字节,转换成BYTE只留下一字节的内容,b也留下一字节并左移做高字节,通过按位或运算符将两者合并到一起。

高八位和低八位组合成一个word是一个宏        #define   MAKEWORD(a,   b)             ((WORD)(((BYTE)(a))   |   ((WORD)((BYTE)(b)))   <<   8))可以从字面理解就是生成一个WORD类型的值,第一个参数是高8位的值,第二个参数是低八位的值。
 
 

 

原创粉丝点击