单片机C语言中a=~(1<<b)
C语言中a=~(1<<b)是什么意思?P1&=0xff;P1|=0x01中的&=和|=是什么意思单片机C语言新手求指教...
C语言中
a=~(1<<b)是什么意思?
P1&=0xff;P1|=0x01中的&=和|=是什么意思
单片机C语言新手求指教 展开
a=~(1<<b)是什么意思?
P1&=0xff;P1|=0x01中的&=和|=是什么意思
单片机C语言新手求指教 展开
4个回答
展开全部
~是取反,<<是左移,将1左移a位后赋值给a;
变量 符合赋值运算符 表达式
其功能等价于
变量=变量 运算符 变量;
例如:P1&=0xff等价于p1=p1&0xff
变量 符合赋值运算符 表达式
其功能等价于
变量=变量 运算符 变量;
例如:P1&=0xff等价于p1=p1&0xff
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你学过AVR单片机,就会明白这个是将b位取反的命令
这种命令虽然不好读,但能提高程序的移植性
这种命令虽然不好读,但能提高程序的移植性
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a=~(1<<b)是移位取反吧;&=是与后赋值,|=是或后赋值
追问
1、如果b=4的话,那a等于多少呀?
2、P1&=0xff是和自身求与么?是不是就相当于P1&P1呀?经常在程序开始时看到这样的语句#define xxx P1&=0xff;P1|=0x01非常费解....如果是赋值直接P1=0xff不就好了,P1&=0xff;P1|=0x01不知道是什么意思
小弟是初学者,问的也许有点幼稚,望指教
追答
<<是变量的左移,一般写作b<<1,至于1<<b就不太清楚了
P1&=0xff是p1=p1&0xff ,p1与0xff做与运算然后再赋值给p1,也就是p1口值不变
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询