程序中if(P1&0x01)怎么理解?
时间:10-02
整理:3721RD
点击:
if(x>y)或者if(a==6)像这种条件语句很好理解,但问题是如图所示的if(P1&0x01)怎么理解?
这条语句只是P1和0x01求与,但没有说两者求与之后要满足什么条件?各位大神指点下。
举例,如果P1_0=1,则P1&0X01=1, 等效于if(1),此处注意非0即1;同理,如果P1_0=0,则等效于if(0),不执行下面的语句.此句与WHILE句一起,模拟了一个触发的行为。
谢谢你的解答,多交流
完全正确
弱弱问句,要是程序是 if(P1&0x80) 这个又怎么算啊
最高位要为一的话 if(真)执行里面的。为其他的,就跳过if
楼上回答很清楚了,这个主要用来判断对应位是否为1
楼上各位高手解答非常perfect
长见识了
就是判断p1_7了
楼上的答案都很正确啊
好好学习天天向上谢谢lz
xiexie受教了,谢谢啦。
抱歉挖坟,
要是程序是 if(P1&0x80) 这个又怎么算啊
这个为什么判断的是P1^7呢,我认为这个是判断P1^6的。
P1端口是P1^0-P1^7,0x80是16进制数,换算成2进制数是10000000,最高位是1,那么就应该是P1^7
举例,如果P1_7=1,则P1&0X80=1, 等效于if(1),此处注意非0即1;同理,如果P1_7=0,则等效于if(0),不执行下面的语句.此句与WHILE句一起,模拟了一个触发的行为。