51单片机c语言中 P2&=0x0F; P2|=(1<<4+c); 是什么意思
答案:5 悬赏:30
解决时间 2021-01-27 07:03
- 提问者网友:沦陷
- 2021-01-26 10:31
51单片机c语言中 P2&=0x0F; P2|=(1<<4+c); 是什么意思
最佳答案
- 二级知识专家网友:酒醒三更
- 2021-01-26 11:38
第一句,位与操作,把p2的8个管脚与00001111 相位与,得到结果,p2.4到p2.7输出低电平,p2.0到p2.3维持不变。任何数与0相与结果为0,与1相与结果为它本身。
..那是我弄错了。。。还是1楼的正确
第二句,把1左移四位,那就0001 0000 ,然后加上c的值,然后在位或,任何数与1或结果为1,与0或结果为它本身。
..那是我弄错了。。。还是1楼的正确
第二句,把1左移四位,那就0001 0000 ,然后加上c的值,然后在位或,任何数与1或结果为1,与0或结果为它本身。
全部回答
- 1楼网友:北城痞子
- 2021-01-26 15:28
第一条其他答案都说完了;
第二条,应该是4+C,然后把位1向左移动(4+C)个位,再把结果与P2进行“或”操作。(C是某一个作者预设的值)
第二条,应该是4+C,然后把位1向左移动(4+C)个位,再把结果与P2进行“或”操作。(C是某一个作者预设的值)
- 2楼网友:七十二街
- 2021-01-26 14:38
P2&=0x0F即为P2=P2&0x0F含义为P2和十六进制数0F位与,值赋给P2。 P2|=(1<<4+c)即为P2=P2|(1<<4+c)先进行括号里面的运算1<<4为0x01向左移四位变为0x10(十进制数为16)然后和c相加 最后和P2相或将最终结果赋给P2
- 3楼网友:人類模型
- 2021-01-26 13:23
P2&=0x0F;就是 P2=P2&0x0F;就是将高4位清空;
P2|=(1<<4+c); 等效于:P2=P2|((1<<(4+c));就是将P2的第4+c位 赋值1;
P2|=(1<<4+c); 等效于:P2=P2|((1<<(4+c));就是将P2的第4+c位 赋值1;
- 4楼网友:一秋
- 2021-01-26 11:46
P2&=0x0F;就是 P2=P2&0x0F;就是将高4位清空;---------这句好像没异议。
P2|=(1<<4+c); 等效于:P2=P2|((1<<(4+c));就是将P2的第4+c位 赋值1; -----------这句我怎么觉得不对啊,我理解P2|=(1<<4+c); 表示,4加上c的和左移一位,然后和P2进行或运算,再赋给P2口。
P2|=(1<<4+c); 等效于:P2=P2|((1<<(4+c));就是将P2的第4+c位 赋值1; -----------这句我怎么觉得不对啊,我理解P2|=(1<<4+c); 表示,4加上c的和左移一位,然后和P2进行或运算,再赋给P2口。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯