准备工作

位运算在单片机操作中非常普遍,所以先写一下关于位运算的知识。

1.位运算操作符 | & ^ ~ << >>   分别对应 按位或 按位与  按位异或  按位取反  左移  右移

 ==按位或==:有1即为1,全0才为0;例如10 | 1   

  1010

0001

-------------------

1011

即10|1 = 11;tips:某个数在或1时,可将这个数的最后一位置1,再减1必使最后一位清0.

==按位与==:有0则为0;全1才为1;例如10 | 1

1010

0001

--------------------

0000

即10 & 1 = 0;tips:某个数在与1时,得到的是最后一位,可以快速的判断这个数的奇偶。

==按位异或==:同一位相同则为0;不同则为1;例如 10 ^ 2

1010

0010

--------------------

1000

即10 ^ 2 = 8;tips:如果10 ^ 2 之后再 ^ 2的话,则结果又返回到以前的结果

==按位取反==:将每一位的值做非运算


==左移,右移==:左移是将某个数的最右位补0;右移最某个数的最左位补0;例如1 << 1和1 >> 1

0001   0001

<<1 >>1

0010 = 2  0000 = 0


2.负数在内存中怎么储存。

http://blog.csdn.net/olddreamhyn/article/details/52003581,这位博主说的很详细很容易理解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值