第04章 数据运算.ppt
《第04章 数据运算.ppt》由会员分享,可在线阅读,更多相关《第04章 数据运算.ppt(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第0404章章 数据运算数据运算本章内容安排本章内容安排&逻辑运算&移位运算&算术运算2逻辑运算逻辑运算&逻辑运算的分类v位层次位层次上的逻辑运算:对上的逻辑运算:对1位位二进制位执二进制位执行逻辑运算行逻辑运算v模式层次模式层次上的位运算:对上的位运算:对n位位模式位位模式逐位逐位执行逻辑运算执行逻辑运算31、位层次上的逻辑运算、位层次上的逻辑运算&位和逻辑运算v一个位可能是一个位可能是一个位可能是一个位可能是0 0 0 0或或或或1 1 1 1,假设,假设,假设,假设0 0 0 0代表代表代表代表“假假假假”,1 1 1 1代表代表代表代表“真真真真”v可以运用可以运用可以运用可以运用布
2、尔代数布尔代数布尔代数布尔代数中定义的运算去操纵二进制位,中定义的运算去操纵二进制位,中定义的运算去操纵二进制位,中定义的运算去操纵二进制位,从而处理逻辑运算。从而处理逻辑运算。从而处理逻辑运算。从而处理逻辑运算。&基本运算v非非非非(NOTNOTNOTNOT):一元运算,只有):一元运算,只有):一元运算,只有):一元运算,只有1 1 1 1个输入。个输入。个输入。个输入。v与与与与(ANDANDANDAND):二元运算。):二元运算。):二元运算。):二元运算。v或或或或(OROROROR):二元运算。):二元运算。):二元运算。):二元运算。v异或异或异或异或(XORXORXORXOR)
3、:二元运算。):二元运算。):二元运算。):二元运算。4真值表真值表5非(非(NOT)&只有1个输入,输出为输入的反转v输入输入0 0,输出为,输出为1 1v输入输入1 1,输出为,输出为0 06与(与(AND)&2个输入,真值表有4行v只有当只有当两个输入都为两个输入都为1 1时,输出为时,输出为1 1v其它情况,输出为其它情况,输出为0 0For x=0 or 1 x AND 0 0 0 AND x 0ANDAND即即“和和”是是并且并且的的意思,意思,同时成立为真同时成立为真只要一边为只要一边为0 0则则结果为结果为0 07或(或(OR)&2个输入,真值表有4行v只有当只有当两个输入都为
4、两个输入都为0 0时,输出为时,输出为0 0v其它情况,输出为其它情况,输出为1 1For x=0 or 1 x OR 1 1 1 OR x 1OROR即即或者或者的意思,的意思,两者有两者有一个为真则结果为真一个为真则结果为真只要一边为只要一边为1 1则则结果为结果为1 18异或(异或(XOR)&2个输入,真值表有4行v两个输入不同(相异)时,输出为两个输入不同(相异)时,输出为1 1v两个输入相同时,输出为两个输入相同时,输出为0 0For x=0 or 1 1 XOR x NOT x x XOR 1 NOT xXORXOR为为异或异或,其逻,其逻辑为辑为相异为真相异为真只要一边为只要一边
5、为1 1则结则结果为另一边取反果为另一边取反92、模式层次上的逻辑运算、模式层次上的逻辑运算&相同的运算符(NOT、ADN、OR、XOR)可以运用到n位位模式上v对对对对n n n n位位模式逐位执行相同的逻辑运算位位模式逐位执行相同的逻辑运算位位模式逐位执行相同的逻辑运算位位模式逐位执行相同的逻辑运算多以若干字节为多以若干字节为操作对象操作对象10逻辑运算示例逻辑运算示例&问题v对位模式对位模式1001100010011000执行执行NOTNOT运算运算&解答11逻辑运算示例逻辑运算示例&问题v对位模式对位模式1001100010011000和和0010101000101010执行执行AND
6、AND运算运算&解答For x=0 or 1 x OR 1 1 1 OR x 112逻辑运算示例逻辑运算示例&问题v对位模式对位模式1001100110011001和和0010111000101110执行执行OROR运算运算&解答13逻辑运算示例逻辑运算示例&问题v对位模式对位模式1001100110011001和和0010111000101110执行执行XORXOR运算运算&解答143、应用、应用&求反v通过通过NOTNOT运算可以对整个模式运算可以对整个模式求反求反&对指定位复位(置0)v通过构造第二个输入(掩码),执行通过构造第二个输入(掩码),执行ANDAND运运算,可以对一个位模式的
7、指定位复位算,可以对一个位模式的指定位复位v掩码中设置为掩码中设置为0 0的位的位,ANDAND运算后第一个输入运算后第一个输入中中对应位被复位对应位被复位;掩码中为;掩码中为1 1的位,运算后的位,运算后第一个输入对应位保持不变。第一个输入对应位保持不变。利用利用ANDAND逻辑逻辑只要一边只要一边为为0 0则结果为则结果为0 0特性特性15复位示例复位示例&问题v设置掩码,复位设置掩码,复位8 8位位模式的最左位位模式的最左5 5位,以位,以1010011010100110为例进行验证为例进行验证&解答掩码为:0000011116应用应用&对指定位置位(置1)v构造掩码,执行构造掩码,执行
8、构造掩码,执行构造掩码,执行OROROROR运算,可以对位模式指定位置位。运算,可以对位模式指定位置位。运算,可以对位模式指定位置位。运算,可以对位模式指定位置位。v掩码中设置为掩码中设置为掩码中设置为掩码中设置为1 1 1 1的位的位的位的位,运算后第一个输入,运算后第一个输入,运算后第一个输入,运算后第一个输入对应位被置对应位被置对应位被置对应位被置位位位位;掩码中设置为;掩码中设置为;掩码中设置为;掩码中设置为0 0 0 0的位,运算后第一个输入对应位的位,运算后第一个输入对应位的位,运算后第一个输入对应位的位,运算后第一个输入对应位保持不变。保持不变。保持不变。保持不变。&对指定位反转
9、v构造掩码,执行构造掩码,执行构造掩码,执行构造掩码,执行XORXORXORXOR运算,可以对位模式指定位反转。运算,可以对位模式指定位反转。运算,可以对位模式指定位反转。运算,可以对位模式指定位反转。v掩码中设置为掩码中设置为掩码中设置为掩码中设置为1 1 1 1的位的位的位的位,运算后第一个输入,运算后第一个输入,运算后第一个输入,运算后第一个输入对应位被反对应位被反对应位被反对应位被反转转转转;掩码中设置为;掩码中设置为;掩码中设置为;掩码中设置为0 0 0 0的位,运算后第一个输入对应位的位,运算后第一个输入对应位的位,运算后第一个输入对应位的位,运算后第一个输入对应位保持不变。保持不
10、变。保持不变。保持不变。利用利用OROR逻辑逻辑只要一边只要一边为为1 1则结果为则结果为1 1特性特性利用利用XORXOR逻辑逻辑只要一边为只要一边为1 1则则结果为另一边取反结果为另一边取反特性特性17置位示例置位示例&问题v设置掩码,置位设置掩码,置位8 8位位模式的最左位位模式的最左5 5位,以位,以1010011010100110为例进行验证为例进行验证&解答掩码为:1111100018反转示例反转示例&问题v设置掩码,反转设置掩码,反转8 8位位模式的最左位位模式的最左5 5位,以位,以1010011010100110为例进行验证为例进行验证&解答掩码为:1111100019应用应
11、用&检测指定位*v构造掩码,执行构造掩码,执行构造掩码,执行构造掩码,执行ANDANDANDAND运算运算运算运算,可以检测位模式指定位。,可以检测位模式指定位。,可以检测位模式指定位。,可以检测位模式指定位。v掩码中设置为掩码中设置为掩码中设置为掩码中设置为1 1 1 1的位的位的位的位,运算后第一个输入,运算后第一个输入,运算后第一个输入,运算后第一个输入对应位被取对应位被取对应位被取对应位被取得得得得;掩码中;掩码中;掩码中;掩码中设置为设置为设置为设置为0 0 0 0的位的位的位的位,运算后第一个输入,运算后第一个输入,运算后第一个输入,运算后第一个输入对应位对应位对应位对应位被置被置
12、被置被置0 0 0 0。v如如如如结果等于掩码则所测位均为结果等于掩码则所测位均为结果等于掩码则所测位均为结果等于掩码则所测位均为1 1 1 1,否则所测位有为,否则所测位有为,否则所测位有为,否则所测位有为0 0 0 0的。的。的。的。利用利用ANDAND逻辑逻辑只要一边为只要一边为1 1则则结果保持不变结果保持不变特性特性X X X X X X X X X X X X X X X XAND)AND)0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 掩码掩码掩码掩码0 0 0 0 0 0 0 0 X X 0 0 X X 0 020逻辑运算小结逻辑运算小结&非非:&与与:0&0=
13、0 1&0=0 0&1=0 1&1=10&0=0 1&0=0 0&1=0 1&1=1&或或:0|0=0 0|1=1 1|0=1 1|1=10|0=0 0|1=1 1|0=1 1|1=1&异或异或:0 0 0=0 00=0 0 1=1 11=1 1 0=1 10=1 1 1=01=0例例一一 -1101 0010 例例二二 1011&0101 0001例三例三 1110|1010 1110 例四例四 1110 1010 0100 可用十进制表示:可用十进制表示:11&5=1可用十进制表示:可用十进制表示:14|10=14可用十进制表示:可用十进制表示:1410=4非非(NOT):(NOT):反转
14、反转数位数位与与(AND(AND逻辑乘逻辑乘):):并且并且的的意思意思,同时成立为真同时成立为真或或(OR(OR逻辑加逻辑加):):或者或者的的意思意思,两者有一真为真两者有一真为真,同时假为假同时假为假异或异或(XOR):(XOR):相异为真相异为真用于置用于置0 0:如一边为如一边为0 0则结果为则结果为0;0;否则为另一边原值否则为另一边原值用于置用于置1 1:如一边为如一边为1 1则结果为则结果为1;1;否则为另一边原值否则为另一边原值用于置反用于置反:如一边为如一边为1 1则结果为另一边取反则结果为另一边取反;否则原值否则原值21本章内容安排本章内容安排&逻辑运算&移位运算&算术运
15、算22移位运算移位运算&基本概念v移位运算移动位模式中的位,改变其位置移位运算移动位模式中的位,改变其位置v逻辑移位逻辑移位运算:运算:不考虑符号位不考虑符号位的移位运算的移位运算v算术移位算术移位运算:运算:考虑符号位考虑符号位的移位运算的移位运算231、逻辑移位运算、逻辑移位运算&逻辑移位运算应用于无符号整数v逻辑移位逻辑移位逻辑右移:每位向右移动,左侧补0逻辑左移:每位向左移动,右侧补024逻辑移位运算逻辑移位运算&循环移位运算应用于无符号整数v循环移位循环移位循环右移:每位向右移动,移出的位补充到左侧循环左移:每位向左移动,移出的位补充到右侧25逻辑移位示例逻辑移位示例&问题v对位模式
16、对位模式10011000执行逻辑左移运算执行逻辑左移运算&解答DiscardedAdded26循环移位示例循环移位示例&问题v对位模式对位模式10011000执行循环左移运算执行循环左移运算&解答272、算术移位运算、算术移位运算&算术移位运算应用于二进制补码格式的带符号整数v算术右移算术右移:移动过程中:移动过程中保留符号位保留符号位,产生,产生除除2的效果的效果v算术左移算术左移:移动过程中:移动过程中丢弃符号位丢弃符号位,如果新,如果新的符号位与原来的符号相同,运算成功,否的符号位与原来的符号相同,运算成功,否则产生溢出;算术左移产生则产生溢出;算术左移产生乘乘2的效果。的效果。28算术
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第04章 数据运算 04 数据 运算
限制150内