嵌入式 请问 LEDW=LEDW & (~0XF0) | (0X01<<i)

?LEDW&(~0XF0)达到什么样的效果(前四位可以达到清0前四位什么效果??)?知道1<<4相当于至第4位为高电平但(0X01<<4)是什么意思?0x01<<i//i... ? LEDW & (~0XF0) 达到什么样的效果(前四位可以达到清0 前四位什么效果??)

? 知道 1<<4 相当于至第4位为高电平 但(0X01<<4) 是什么意思
? 0x01<<i //i是一个变量 0 1 2 3循环 是0000 1110 0000 1100这种形式 还是0000 1110 00001101这种形式
?LEDW & (~0XF0) | (0X01<<i) 中的& 与前面(~0XF0) 也与后面的(0X01<<i)??
?| 在这里是不是 把LEDW & (~0XF0) 的值与 (0X01<<i) 的值相或??
展开
 我来答
wolf_lhy
2013-03-27 · TA获得超过6609个赞
知道大有可为答主
回答量:1090
采纳率:66%
帮助的人:550万
展开全部
第一个问题:
前四位清零达到什么结果?
假设你的LEDW是8位的,原来的数值是XXXX XXXX,那么,执行完那个“&”后,结果是 LEDW = 0000 XXXX,XXXX表示后四位结果与执行前一致,没有变化。

第二个问题,1<<4表示第4位是高电平,其余位为低电平,0x01<<4,也是一样的,难道你认为 1和0x01不是同一个东西?只是表现的形式不一样罢了,就像你,在你父母眼里是儿子,在老师眼里是学生,但是你还是你,只不过表现形式不一样罢了。

第三个问题: 0x01<<i,当i等于0的时候,是 0000 0001,当i是1的时候,是 0000 0010,
当i是2的时候,是 0000 0100,当i是2的时候,是 0000 1000,

如果你的那个函数写在for循环里,i从0--3,最终的结果是 0000 1111

第四个问题:你的那个表达式,是先计算 LEDW&(~0xF0),然后,得到的结果再和(0x01<<i)进行位或计算,如果是 LEDW=LEDW &( (~0XF0) | (0X01<<i))才是先计算后面的位或,然后得到的结果与LEDW位与计算。因为位与“&”的优先级比位或“|”要高。

最后一个问题,你的说法是正确的。
意法半导体(中国)投资有限公司
2023-06-12 广告
STM32F103是一款高性能的嵌入式芯片,由意法半导体(STMicroelectronics)公司生产。它是STM32系列芯片之一,具有紧凑、低功耗、高性能等特点,被广泛应用于嵌入式系统中。STM32F103的主要特点包括:1. 集成了A... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式