单片机C语言中比如led=~led,波浪线什么意思?

来源:百度知道 编辑:UC知道 时间:2024/06/04 22:12:46
如题,在做单片机开发中,用C语言,有一句看不懂,led=~led,~在这里代表什么意思?

~在这里是按位取反的意思。
按位取反是C语言位操作的一种,其操作符为~。该操作为单目操作,即只有一个操作数。
~与其后的数值或变量相结合,执行取反计算。

取反是按照二进制位进行计算的,当原操作数的第i位为0时,结果的第i位为1;否则该位值为0。

比如,char a = 0x12;
0x12转为二进制位 B0001 0010
其按位取反的结果为B1110 1101
于是 ~a = 0xED。

取反。对led来说就是原来亮的灭,原来灭的亮

好好看一下C语言的运算符,这是最基本的运算哦!取反,还有!是非运算,自己好好对比一下区别,写个程序试一试,这样印象会深一点。

就是取反啊,C语言的基础知识。就是1变0,或者0变1。

把LED的状态 置反 亮的变不亮,不亮的变亮