找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6604|回复: 7
收起左侧

请问单片机P1=P1&(~(0x01<<i)) 是什么意思,谢谢!

[复制链接]
ID:490774 发表于 2019-6-25 16:07 | 显示全部楼层 |阅读模式
请教一下大家,谢谢了

回复

使用道具 举报

ID:560086 发表于 2019-6-25 18:16 | 显示全部楼层
P1&=0xf0 //把P1的0-3位变成0
回复

使用道具 举报

ID:514287 发表于 2019-6-25 18:32 | 显示全部楼层
0x01左移i個bit, 再反向 ,再與P1做and
回复

使用道具 举报

ID:571958 发表于 2019-6-25 18:43 | 显示全部楼层
清除 P1 的 i位 ,如i=3 ,就是 P1_3 输出低, 其他位状态不变
回复

使用道具 举报

ID:160500 发表于 2019-6-25 21:04 | 显示全部楼层
P1的第i位清零
回复

使用道具 举报

ID:511890 发表于 2019-6-25 21:31 | 显示全部楼层
0x01左移i位后按位取反,然后和P1进行逻辑与运算后把结果赋值给P1。
回复

使用道具 举报

ID:307505 发表于 2019-6-25 22:23 | 显示全部楼层
0x01先左移i位,在逐位取反,原来位移1的位变为0,再与P1与运算。最终结果是把P1的第i位清零,其他位保持不变。
回复

使用道具 举报

ID:207421 发表于 2019-6-26 01:00 | 显示全部楼层
1111 1111 (P1)
0000 0001 (0x01)
0000 0010 (<<1) i
1111 1101 (~)
1111 1111 (&)
1111 1101 (new P1)
i  SET 0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表