C语言第11章位运算.ppt_第1页
C语言第11章位运算.ppt_第2页
C语言第11章位运算.ppt_第3页
C语言第11章位运算.ppt_第4页
C语言第11章位运算.ppt_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言第11章 位运算 哈尔滨理工大学 计算中心 CProgramming 二、八、十、十六进制换算表 十进制二进制八进制十六进制 0000000 1000111 2001022 3001133 4010044 5010155 6011066 7011177 81000108 91001119 10101012A 11101113B 12110014C 13110115D 14111016E 15111117F 2 CProgramming 位运算 q计算机中的信息是以二进制0、1存储的 q每个0或1称为一个“位“(bit) q在C语言中提供了对二进制位(bit)的直接操作 ,使C具有了某些汇编语言才有的功能 3 CProgramming 位运算符 qC语言的位运算符有以下几个 v qprintf(“%o“,a1 a1=0177即二进制的00000000 00111111 a2=0177即二进制的00000000 01101000 qprintf(“%x“,a1|a2); a1=0x07即二进制的 00000111 a2=0xd0即二进制的 11100000 | 11100111 即十六进制的0xd7 9 CProgramming 按位异或运算() q“异或“运算的规则如下: a 0 0 1 1 b 0 1 0 1 ab 0 1 1 0 a,b值相异结果为1,否则结果为0 10 CProgramming “异或“运算举例 qunsigned char a1=0x20,a2=0x35; qprintf(“%x“,a1a2); a1=0x07即二进制的 00100000 a2=0xd0即二进制的 00110101 00010101 即十六进制的0x15 11 CProgramming 按位取反运算() q“取反“运算的规则如下: a 0 1 a 1 0 “1“变成“0“,“0“变成“1“ 12 CProgramming “取反“运算举例 qunsigned char a1=0x20; qprintf(“%x“,a1); a1=0x07即二进制的 00100000 11011111 即十六进制的0xdf 13 CProgramming 左移运算() q“右移“运算的格式如下: v表达式1表达工2 v表达式1为移位的对象,表达式2为移位的位数 v对于无符号数,右移后,左边的空位补“0” v对于带符号数,若符号位为0,右移后,左边的空位补 “0”;若符号位为1,右移后,左边的空位补“0”或补“1” 随计算机系统不同,补“0”的称为逻辑右移,补“1”的称 为算术右移 16 CProgramming 右移运算举例 qunsigned char a1=0x12; qprintf(“%x“,a13); a1=0x07即二进制的 00010010 3 右移三位后变为: 00000010010 即十六进制的0x02 舍掉补0 17 CProgramming 位运算应用举例 q取一整数从右端开始的47位。 074815 0000 右移4位 unsigned b:6; unsigned c:4; unsigned d:4; int i; data; v此时,变量data的各个成员中,a,b,c,d分别占2位、6位、4位、4 位,i占16位,整个data占的空间为4bytes v当位域成员所占空间不足一个字节时,系统自动将空余部分闲置 不用 20 CProgramming 位域说明 q位域成员的类型只能为unsigned 或int q在存储单元中,位域的分配方式因机器而异,可 不关心 q位域可当做整型变

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论