中国科技大学电子科学与技术系:《C语言程序设计》 第9章 位运算

第9章位运算 白雪飞 baixfaustc. edu.cn 中国科学技术大学电子科学与技术系 Dept of Elec. Sci. Tech, USTC Fal22003
白 雪 飞 baixf@ustc.edu.cn 中国科学技术大学电子科学与技术系 Dept. of Elec. Sci. & Tech., USTC Fall, 2003 第9章 位 运 算

目录 位运算和位运算符 ●位运算举例 C语言程序设计-第9章位运算2
C语言程序设计 - 第9章 位运算 2 目 录 ⚫ 位运算和位运算符 ⚫ 位运算举例

位运算 。按二进制位进行运算 位运算的运算对象是二进制的位 位运算速度快,效率高,节省存储空间 只能对整型数据(包括字符型)进行位运算 负数以补码形式参与运算 注意与逻辑运算区别 C语言程序设计-第9章位运算3
C语言程序设计 - 第9章 位运算 3 位运算 ⚫ 按二进制位进行运算 ⚫ 位运算的运算对象是二进制的位 ⚫ 位运算速度快,效率高,节省存储空间 ⚫ 只能对整型数据(包括字符型)进行位运算 ⚫ 负数以补码形式参与运算 ⚫ 注意与逻辑运算区别

位运算符( Bitwise Operators 运算符名称 举例 优先级 按位取反 wflag (高) (算术运算符) >3 (关系运算符) 6按位与1aq60x37 按位异或|f1ag^0xc4 按位或1ag10x5A (低) (赋值运算符) C语言程序设计-第9章位运算4
C语言程序设计 - 第9章 位运算 4 位运算符 (Bitwise Operators) 运算符 名称 举例 优先级 ~ 按位取反 ~flag (高) (算术运算符) > 右移 b >> 3 (关系运算符) & 按位与 flag & 0x37 ^ 按位异或 flag ^ 0xC4 | 按位或 flag | 0x5A (低) (赋值运算符)

按位与( Bitwise and) 运算规则 0&0=0; ■0&1 0 1&0=0 1&1=1; 用法 按位清零 ■保留某些指定位 C语言程序设计-第9章位运算5
C语言程序设计 - 第9章 位运算 5 按位与 (Bitwise AND) ⚫ 运算规则 ◼ 0 & 0 = 0; ◼ 0 & 1 = 0; ◼ 1 & 0 = 0; ◼ 1 & 1 = 1; ⚫ 用法 ◼ 按位清零 ◼ 保留某些指定位

按位与举例 运算举例 1010,1101(0xAD) 0110,1001(0x69) 0010,1001(0x29) ●按位清零、保留 XXXX 0110,0010(0x62) 0x0,00x0 C语言程序设计-第9章位运算6
C语言程序设计 - 第9章 位运算 6 按位与举例 ⚫ 运算举例 1010,1101 (0xAD) & 0110,1001 (0x69) 0010,1001 (0x29) ⚫ 按位清零、保留 xxxx,xxxx_____ & 0110,0010 (0x62) 0xx0,00x0_____

按位或( Bitwise inclusive or) 运算规则 0011 0101 0111 用法 按位置 C语言程序设计-第9章位运算7
C语言程序设计 - 第9章 位运算 7 按位或 (Bitwise Inclusive OR) ⚫ 运算规则 ◼ 0 | 0 = 0; ◼ 0 | 1 = 1; ◼ 1 | 0 = 1; ◼ 1 | 1 = 1; ⚫ 用法 ◼ 按位置一

按位或举例 运算举例 1010,1101(0xAD) 0110,1001(0x69) 1110,1101(0xED) ●按位置 XXXX 0110,0010(0x62) x11x xxix C语言程序设计-第9章位运算8
C语言程序设计 - 第9章 位运算 8 按位或举例 ⚫ 运算举例 1010,1101 (0xAD) | 0110,1001 (0x69) 1110,1101 (0xED) ⚫ 按位置一 xxxx,xxxx_____ | 0110,0010 (0x62) x11x,xx1x_____

按位异或( Bitwise exclusive or,XOR) 运算规则 0 0011 0101 0 说明 相“异”则为1,相“同”则为0 相当于按位且无进位的加法 C语言程序设计-第9章位运算9
C语言程序设计 - 第9章 位运算 9 按位异或 (Bitwise Exclusive OR, XOR) ⚫ 运算规则 ◼ 0 ^ 0 = 0; ◼ 0 ^ 1 = 1; ◼ 1 ^ 0 = 1; ◼ 1 ^ 1 = 0; ⚫ 说明 ◼ 相“异”则为1,相“同”则为0 ◼ 相当于按位且无进位的加法

按位异或用法举例 特定位翻转 1010;1101(0xAD) 0110,1001(0x69) 1100,0100(0xC4) 与0相异或,保持原值不变 与自身相异或,则全部位清零 交换两个整数值 ■a=a^b;b=b^a;a=a^b; C语言程序设计-第9章位运算10
C语言程序设计 - 第9章 位运算 10 按位异或用法举例 ⚫ 特定位翻转 1010,1101 (0xAD) ^ 0110,1001 (0x69) 1100,0100 (0xC4) ⚫ 与0相异或,保持原值不变 ⚫ 与自身相异或,则全部位清零 ⚫ 交换两个整数值 ◼ a=a^b; b=b^a; a=a^b;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第三篇 并行数值算法 第九章 稠密矩阵运算.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第三篇 并行数值算法 第八章 并行数值算法.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第二篇 并行算法的设计 第七章 并行算法的一般设计过程.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第二篇 并行算法的设计 第六章 并行算法的基本设计技术.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第二篇 并行算法的设计 第五章 并行算法的一般设计方法.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第二篇 并行算法的设计 第四章 并行算法的设计基础.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第四篇 并行程序设计 第十五章 并行程序设计环境与工具.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第四篇 并行程序设计 第十四章 分布存储系统并行编程.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第四篇 并行程序设计 第十三章 共享存储系统编程.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第四篇 并行程序设计 第十二章 并行程库设计基础.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第三篇 并行数值算法 第十一章 快速傅里叶变换.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第三篇 并行数值算法 第十章 线性方程组的求解.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)第一篇 并行计算的基础 第一章 并行计算机系统及结构模型、第二章 当代并行机系统、第三章 并行计算性能评测.ppt
- 中国科学技术大学:《并行计算 Parallel Computing》课程教学资源(PPT课件讲稿)课程简介(英文).ppt
- 广东工业大学:《计算机操作系统》课程电子教案(PPT教学课件)课程简介(主讲:傅秀芬).ppt
- 广东工业大学:《计算机操作系统》课程电子教案(PPT教学课件)第九章 系统安全性.ppt
- 广东工业大学:《计算机操作系统》课程电子教案(PPT教学课件)第八章 网络操作系统.ppt
- 广东工业大学:《计算机操作系统》课程电子教案(PPT教学课件)第七章 作业管理与OS接口.ppt
- 广东工业大学:《计算机操作系统》课程电子教案(PPT教学课件)第六章 文件管理概论.ppt
- 广东工业大学:《计算机操作系统》课程电子教案(PPT教学课件)第五章 设备管理概述.ppt
- 中国科技大学电子科学与技术系:《C语言程序设计》 第10章 文件操作.ppt
- 中国科技大学电子科学与技术系:《C语言程序设计》 第一章 C语言程序设计概述.ppt
- 中国科技大学电子科学与技术系:《C语言程序设计》 第1章(1-2) C语言的程序结构.ppt
- 中国科技大学电子科学与技术系:《C语言程序设计》 第2章 数据类型、运算符和表达式.ppt
- 中国科技大学电子科学与技术系:《C语言程序设计》 第3章 C语言的基本语句 和程序结构设计.ppt
- 中国科技大学电子科学与技术系:《C语言程序设计》 第4章 数组.ppt
- 中国科技大学电子科学与技术系:《C语言程序设计》 第5章 函数.ppt
- 中国科技大学:电子科学与技术系《C语言程序设计》 第6章 预处理.ppt
- 中国科技大学:电子科学与技术系《C语言程序设计》 第7章 指针.ppt
- 中国科技大学:电子科学与技术系《C语言程序设计》 第8章 结构体.ppt
- 《电子商务实用教程》课程教学资源(PPT课件讲稿)第一章 电子商务概述.ppt
- 《电子商务实用教程》课程教学资源(PPT课件讲稿)第二章 Internet商务.ppt
- 《电子商务实用教程》课程教学资源(PPT课件讲稿)第三章 EDI商务.ppt
- 《电子商务实用教程》课程教学资源(PPT课件讲稿)第四章 企业电子商务应用.ppt
- 《电子商务实用教程》课程教学资源(PPT课件讲稿)第五章 网上支付与安全交易.ppt
- 《电子商务实用教程》课程教学资源(PPT课件讲稿)第六章 网络营销.ppt
- 《电子商务实用教程》课程教学资源(PPT课件讲稿)第七章 电子商务与物流.ppt
- 《电子商务实用教程》课程教学资源(PPT课件讲稿)网站设计(案例:艺海拾贝).ppt
- 高等学校计算机教材:《Visual Basic 6.0》课程教学资源(PPT课件讲稿)第一章 概述.ppt
- 高等学校计算机教材:《Visual Basic 6.0》课程教学资源(PPT课件讲稿)第七章 数组.ppt