注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Leo

笑:胸怀,傲:实力,才能笑傲江湖。

 
 
 

日志

 
 

C语言—单片机—位操作及其表达式  

2011-08-17 11:37:13|  分类: 大学留笔 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

为操作运算符:

&          按位“与”;

|           按位“或”;

^          按位“异或”;

~         按位“取反”;

<<       按位“左移”;

>>      按位“右移”。

除了“~”以外,其它都是双目运算符。

一、“按位与”运算符“&”

运算规则:参加运算的两个运算对象,若两者相应得位都为1,则该位运算的结果是1,否者为0。

0 & 0 = 0;

0 & 1 = 0;

1 & 0 = 0;

1 & 1 = 1;

a:            01010100   (54H)

b:    &      00111011    (3BH)

结果:     00010000   (10H)

 

二、“按位或”运算符“|”

运算规则:参加运算的两个对象,若两者相应位中有一个为1,这结果为1,否则为0;

0 | 0 = 0;

0 | 1 = 1;

1 | 0 = 1;

1 | 1 = 1;

 

三、“异或”运算符“^”

运算规则:参加运算的两个对象中,对应的位值相同,则结果为0,否则为1;

0 ^ 0 = 0;

0 ^ 1 = 1;

1 ^ 0 = 1;

1 ^ 1 = 0;

 

四、“位取反”运算符“~”

若a = (0FH)= 00001111B

则~a = (F0H)= 11110000B    取反。

 

五、“位左移”和“位右移”运算符“<<”“>>”

若a = EAH = 11101010B

则表达式a = a << 2 ,将a值左移2位,其结果是A8H :

 

                     C语言—单片机—位操作及其表达式 - leo - Leo
 
表达式a = a >> 2 ,同理。
 
                   C语言—单片机—位操作及其表达式 - leo - Leo
 
  评论这张
 
阅读(514)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017