mshd.net
当前位置:首页 >> 请问 C语言中 ((1 << 8) & 0xFF00) 什么意思 >>

请问 C语言中 ((1 << 8) & 0xFF00) 什么意思

1左移8位与后面那个做与操作。

楼主使用了按位与运算,全都转换成二进制看:(为了方便计算,可以填充前导0,补齐位数) 注:按位与(&)优先级低于加法(+) 0x393a=11100100111010;0xff00=1111111100000000;0x0130=100110000; 0xFF00+0x0130=1111111100000000+100110000=10000...

两个字节16位,高8位置1就是和1111111100000000进行按位或运算,所以表达式就是x|=0xff00

.........................................................

#define ADR(x) (*(volatile unsigned char *)ADR_8254_ARRAY[(x)]) uint16_t ADR_8254_ARRAY[4] = {0xFF00 , 0xFF01 , 0xFF02 , 0xFF03}; ADR(3)=0x32; ADR(3)=0x72; 相当于将存储器地址为0xff03的地址里存放一个字节型指针0x32,然后又将0xff03...

网站首页 | 网站地图
All rights reserved Powered by www.mshd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com