正在进行安全检测...


C语言位运算符:与、或、异或、取反
、左移和右移语言位运算符:与、或、异或、取反、左移和右移
位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位 的问题。
C语言提供了 6个位操作运算符。这些运算符只能用于整型操作数,即只能 于带符号或无符号的 char,short,int long 类型。
C 语言提供的位运算符列表: 运算符含义描述
& 按位与如果两个相应的二进制位都为 1,则该位的结果值为 1,否则为 0| 位或两个相应的二进制位中只要有一个为 1,该位的结果值为 1
按位异或若参加运算的两个二进制位值相同则为 0,否则为1
~取反~是一元运算符,用来对一个二进制数按位取反,即将 01,将 1 0<<左移用来将一个数的各二进制位全部左移 N位,右补0
>>右移将一个数的各二进制位右移 N位,移到右端的低位被舍弃,对于无 符号,高位补 0
1、“按位与”运算符( &
按位与是指:参加运算的两个数据,按二进制位进行 “与”运算。如果两个 应的二进制位都为1,则该位的结果值为 1;否则为0。这里的1可以理解为 逻辑中的true,0可以理解为逻辑中的false。按位与其实与逻辑上 与”的运算规 则一致。
逻辑上的 与”要求运算数全真,结果才为真。若, A=true,B=true An Btrue例如:3&5 3的二进制编码是112。(为了区分十进制和其他进制,
文规定,凡是非十进制的数据均在数据后面加上括号,括号中注明其进制, 二进制则标记为2)内存储存数据的基本单位是字节(Byte, 一个字节由8 位(bit所组成。位是用以描述电脑数据量的最小单位。二进制系统中,每个 0 1 就是一个位。将 11(2补足成一个字节,则是 00000011(25 的二进 制编码是 101( 2将其补足成一个字节,则是 00000101( 2
1/ 9



按位与运算: 00000011(2 &00000101(2 00000001(2 由此可知 3&5=1 c 语言代码: #include main( {
int a=3; int b = 5; printf("%d",a&b; }

按位与的用途: (1清零
若想对一个存储单元清零,即使其全部二进制位为 0,只要找一个二进制 数,其中各个位符合一下条件:
原来的数中为 1 的位,新数中相应位为 0。然后使二者进行 &运算,即可达 清零目的。
例:原数为 43,即 001010112),另找一个数,设它为 148,即 100101002),将两者按位与运算:
001010112 &100101002 000000002
2/ 9


《正在进行安全检测....doc》
将本文的Word文档下载,方便收藏和打印
推荐:
下载文档
热门推荐
相关推荐