欢迎来到天天文库
浏览记录
ID:32001299
大小:285.00 KB
页数:12页
时间:2019-01-30
《全国计算机等级考试实用应试教程二级c语》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、本章重点15.1位运算符15.2位运算符的运算功能第15章位运算15.1位运算符1.数在计算机中的存放形式(1)字和字节(2)原码(3)补码2.位运算符所谓位运算是指进行二进制位的运算。C语言提供了六种位运算符说明:(1)位运算符中除~以外,都是二元运算符,即要求运算符两侧各有一个运算量(操作数)。(2)位运算只能作用于整型或字符型数据,不能是实型数据。(3)位运算符的优先性从高到低的顺序为:“~”→“>>、<<”→“&”→“^”→“
2、”。(4)位运算符与赋值运算符结合组成扩展的赋值运算符,即<<=、>>=、&=、
3、^=和
4、=。其功能如表15.2所示。(5)两个长度不同的数据进行位运算时,系统先将二者最低位(最右位)对齐,然后将短的一方按符号位扩充,无符号数则以0扩充。运算符名称示例示例说明优先次序&按位与a&ba和b位与从左向右
5、按位或a
6、ba和b位或从左向右^按位异或a^ba和b位异或从左向右~按位取反~a求a的位反从右向左<<左移a<<2a左移2位从左向右>>右移a>>3a右移3位从左向右表15.1C语言中的位运算符说明:(1)位运算符中除~以外,都是二元运算符,即要求运算符两侧各有一个运算量(操作数)。(2)位运算只能
7、作用于整型或字符型数据,不能是实型数据。(3)位运算符的优先性从高到低的顺序为:“~”→“>>、<<”→“&”→“^”→“
8、”。(4)位运算符与赋值运算符结合组成扩展的赋值运算符,即<<=、>>=、&=、^=和
9、=。其功能如表15.2所示。(5)两个长度不同的数据进行位运算时,系统先将二者最低位(最右位)对齐,然后将短的一方按符号位扩充,无符号数则以0扩充。15.2位运算符的运算功能1.位逻辑运算符(1)位与运算符(&)。(2)位或运算符(
10、)。(3)异或运算符(^)。(4)取反运算符(~)。与运算符参与运算的数以
11、补码方式出现。例如:9&5并不等于14,而应该是按位与,算式如下:00001001(9的二进制补码)&00000101(5的二进制补码)——————00000001(1的二进制补码)或运算符参与运算的两个数均以补码出现。例如:9
12、5可写算式如下:00001001
13、00000101——————00001101(十进制为13)异或运算符参与运算数仍以补码出现。例如9^5可写成算式如下:00001001^00000101——————00001100(十进制为12)取反运算符例如~9的运算为:~(0000000000001
14、001)=>11111111111101102.位移位运算符(1)左移运算符(<<)。(2)右移运算符(>>)。3.位自反赋值运算&=(自反位与运算)如:a&=b相当于a=a&b。
15、=(自反位或运算)如:a
16、=b相当于a=a
17、b。>>=(自反右移位运算)如:a>>=b相当于a=a>>b。<<=(自反左移位运算)如:a<<=b相当于a=<
18、运算符的优先级低,比关系运算符的优先级高。(3)位逻辑运算符的优先级比关系运算符的优先级低,比逻辑运算符的优先级高。(4)3个位逻辑运算符的优先次序为:&优于^优于
19、。(5)位自反值运算符和赋值运算符、算术自反值运算符是同级的。5.位数不同的运算数之间的运算规则位运算的对象可以是整型和字符型数据。当两个运算数类型不同时位数也会不同。此时,系统将自动进行如下处理:(1)先将两个运算数右端对齐。(2)再将位数短的一个运算数往高位扩充,即无符号数和正整数左侧用0补全;负数左侧用1补全;然后对位数相等的两个运算数按位进行运
20、算。
此文档下载收益归作者所有