下载此文档

c 位运算.docx


文档分类:IT计算机 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
C 语言位运算符:与、或、异或、取反、左移和右移 语言位运算符:与、或、异或、取反、左移和右 移 位运算是指按二进制进行的运算。 在系统软件中, 常常需要处理二进制位的问题。 C 语言提 供
了 6 个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的 char,short,int
与 long 类型。
C 语言提供的位运算符列表: 运算符 含义 描述
& 按位与 如果两个相应的二进制位都为 1 ,则该位的结果值为 1 ,否则为 0
| 按位或 两个相应的二进制位中只要有一个为 1 ,该位的结果值为 1
A 按位异或 若参加运算的两个二进制位值相同则为 0, 否则为 1
~ 取反 ~是一元运算符,用来对一个二进制数按位取反,即将 0 变 1 ,将 1 变 0
<< 左移 用来将一个数的各二进制位全部左移 N 位 , 右补 0 >> 右移 将一个数的各二进制位右移 N 位 ,
移到右端的低位被舍弃 , 对于无符号数 , 高位 补 0
、“按位与”运算符( & )
按位与是指:参加运算的两个数据 , 按二进制位进行“与”运算。如果两个相应的二进 制位都为
1,则该位的结果值为 1; 否则为 0 。这里的 1 可以理解为逻辑中的 true,0 可以理
解为逻辑中的 false 。按位与其实与逻辑上“与”的运算规则一致。逻辑上的“与” ,要求运
算数全真,结果才为真。若, A=true,B=true, 则 A n B=true 例如: 3&5 3 的二进制编码是 11 (2) 。
(为了区分十进制和其他进制 , 本文规定 , 凡是非十进制的数据均在数据后面加上括号 , 括 号中注明
其进制,二进制则标记为 2)内存储存数据的基本单位是字节( Byte ) , 一个字节
由 8 个位( bit ) 所组成。位是用以描述电脑数据量的最小单位。二进制系统中,每个 0 或 1
就是一个位。将 11 (2)补足成一个字节,则是 00000011 (2)。 5 的二进制编码是 101 (2), 将
其补足成一个字节,则是 00000101 ( 2 ) 按位与运算:
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 。然后使二者进行 &运算,即可达到清零目
的。 00101011 ( 2 )
00000000 ( 2)
c 语言源代码:
#include <>
main()
{
int a=43;
int b = 148;
printf("%d",a&b);
} (2)取一个数中某些指定位 若有一个整数 a(2byte) , 想要取其中的低字节,只需要将 a 与 8个 1 按位
与即可。
b 00000000 11111111 (3)保留指定位: 与一个数进行“按位与

c 位运算 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息