新闻资讯  快讯  焦点  财经  政策  社会
互 联 网   电商  金融  数据  计算  技巧
生活百科  科技  职场  健康  法律  汽车
手机百科  知识  软件  修理  测评  微信
软件技术  应用  系统  图像  视频  经验
硬件技术  知识  技术  测评  选购  维修
网络技术  硬件  软件  设置  安全  技术
程序开发  语言  移动  数据  开源  百科
安全防护  资讯  黑客  木马  病毒  移动
站长技术  搜索  SEO  推广  媒体  移动
财经百科  股票  知识  理财  财务  金融
教育考试  育儿  小学  高考  考研  留学
您当前的位置:首页 > IT > 程序开发 > 语言 > C/C#

C语言的位级运算

时间:2019-06-06 13:03:38  来源:  作者:
C语言的位级运算

 

二进制是计算机编码、存储和操作信息的核心,围绕数值0和1的研究已经演化出了丰富的数学知识体系。这起源于1850年前后乔治•布尔(George Boole)的工作,布尔注意到将逻辑值True(真)和False(假)编码为二进制值1和0,能够设计出一种代数,以研究逻辑推理的基本原则。因此也称为布尔代数(Boolean algebra)。

最简单的布尔代数是在二元集合{0,1}基础上的定义。下图是这种布尔代数中的几种运算。

C语言的位级运算

 

用来表示这些运算的符号与C语言位级运算使用的符号是相匹配的。

  • 布尔运算 ~ 对应于逻辑运算:非 NOT。在命题逻辑中,当P等于0时,~P等于1,反之亦然。
  • 布尔运算 & 对应于逻辑运算:且 AND。在命题逻辑中,当P=1且Q=1时,P&Q才等于1。
  • 布尔运算 | 对应于逻辑运算符:或 OR。在命题逻辑中,当P=1或Q=1时,P|Q等于1。
  • 布尔运算 ^ 对应于逻辑运算符 :异或。在命题逻辑中,当P=1且Q=0,或 P=0且Q=1时,P^Q等于1。

后来创立信息论的Claude Shannon首先建立了布尔代数和数字逻辑之间的联系。他在1937年的硕士论文中表明了布尔代数可以用来设计和分析机电继电器网络。

C语言的一个很有用的特性就是它支持按位布尔运算,在布尔运算中使用的符号(~、&、|、^)能运用到任何整型的数据类型上。

C语言的位级运算

 

确定一个位级表达式的结果的最好办法就是将十六进制的参数用二进制表示再执行二进制运算,然后再转回十六进制。
 



Tags:C语言   点击:()  评论:()
声明:本站部分内容来自互联网,如有任何版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▌相关评论
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
▌相关推荐
C语言中的C怎么来的?各位,我们天天讲C语言,学C语言,那你知道C语言中的C是怎么来的吗?请接着往下看,读完你不仅会知道C是怎么来的,也会对C语言的历史有更加详细的认识。C的真正由来(...【详细内容】
2019-06-11 C语言  点击:(11)  评论:(0)  加入收藏
二进制是计算机编码、存储和操作信息的核心,围绕数值0和1的研究已经演化出了丰富的数学知识体系。这起源于1850年前后乔治•布尔(George Boole)的工作,布尔注意到将逻辑值T...【详细内容】
2019-06-06 C语言  点击:(4)  评论:(0)  加入收藏
在 C 语言中,内存分配方式有以下三种形式:1、从静态存储区域分配由编译器自动分配和释放,在程序编译的时候就已经分配好内存,这块内存在程序的整个运行期间都存在,直到整个程序...【详细内容】
2019-05-05 C语言,内存  点击:(12)  评论:(0)  加入收藏
C运行时库函数是指C语言本身支持的一些基本函数,通常是汇编直接实现的。...【详细内容】
2019-04-17 C语言  点击:(8)  评论:(0)  加入收藏
推荐资讯
相关文章
栏目更新
栏目热门
'); })();