计算机中的信息表示-数的计算_第1页
计算机中的信息表示-数的计算_第2页
计算机中的信息表示-数的计算_第3页
计算机中的信息表示-数的计算_第4页
计算机中的信息表示-数的计算_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

1、Ver:1.00第三章:计算机中信息的表示(二)主讲:何皑13.4 逻辑运算3.4 逻辑运算逻辑运算又叫布尔运算。布尔用数学方法研究逻辑问题,成功地建立了逻辑演算。他用等式表示判断,把推理看作等式的变换。这种变换的有效性不依赖人们对符号的解释,只依赖于符号的 组合规律 。逻辑运算是表示和处理事物之间各种逻辑关系的一种数学工具。例如:1、能抓到老鼠的猫就是好猫。2、必须带“介绍信”或“身份证”方可进机房。3、必须不是苹果味的糖,她才吃。这三句话,分别表示了三种不同的逻辑关系。23.4 逻辑运算3.4.1 逻辑运算式的计算逻辑 与 运算。(AND运算,逻辑乘法)例:能抓到老鼠的猫就是好猫。是否猫能

2、抓到结果是能好猫是不能非好猫否能非好猫否不能非好猫ABC111100010000这种逻辑关系的计算结果是:同真为真,否则为假。假设我们设是否是猫为A,是否能抓到老鼠为B,能否是好猫为C。那么上面的关系可以表示为:C = A B或C = A B或C = A and B。称为与运算,或称逻辑乘法。 33.4 逻辑运算3.1 逻辑运算式的计算逻辑 或 运算。(OR运算,逻辑加法)例:必须带“介绍信”或“身份证”方可进机房。介绍信身份证结果己带己带能进己带未带能进未带己带能进未带未带不能进ABC111101011000这种逻辑关系的计算结果是:有真为真,否则为假。假设我们设是否带介绍信为A,是否带身份

3、证为B,能否进机房为C。那么上面的关系可以表示为:C = A B或C = A + B或C = A or B。称为或运算,或称逻辑加法。 43.4 逻辑运算3.1 逻辑运算式的计算逻辑 非 运算。(not运算,逻辑非)例:必须不是苹果味的糖,她才吃。苹果味结果是不吃不是吃AB1001这种逻辑关系的计算结果是:条件为假则结果为真,条件为真则结果为假。假设我们设是否是苹果味为A,吃不吃为B。那么上面的关系可以表示为:B = A或B = not A。称为非运算,或称逻辑非。 53.4 逻辑运算与、或、非是逻辑代数的三个基本运算。逻辑代数是这样一种代数系统:它有两个基本逻辑值:0(假)和1(真)。而且经

4、过逻辑运算得到的结果仍是这两个基本值之一,即具有封闭性。有一组基本运算:and(与),or(或),not(非)。逻辑代数满足下面的基本定律:(1)交换率:A or B = B or A,A and B = B and A(2)结合率:( A or B ) or C = A or ( B or C )( A and B ) and C = A and ( B and C )(3)幂等率:A and A = A,A or A = A(4)吸收率:A and ( A or B ) = A,A or (A and B ) = A(5)分配率:A and ( B or C ) = A and B or

5、A and CA or ( B and C ) = ( A or B ) and ( A or C )(6)存在单位元素:A or 0 = A,A or 1 = 1A and 1 = A,A and 0 = 063.4 逻辑运算按位逻辑运算在计算机中,除了单位的0和1可以进行逻辑运算,整数和小数,同样也可以进行逻辑运算。217 and 156 = ?25 or -52=?在对整数和小数进行逻辑计算之前,先将其转换成二进制,然后将小数点对齐,按照每一位进行逻辑运算。再将结果转换成相应的进制。(217)10 = (11011001)2(156)10 = (10011100)21 1 0 1 1 0

6、 0 1 and1 0 0 1 1 1 0 01 0 0 1 1 0 0 0(10011000)2 = (152)10(25)10 = (00011001)2(-52)10 = (10110100)20 0 0 1 1 0 0 1 and1 0 1 1 0 1 0 01 0 0 1 0 0 0 0(10010000)2 = (-16)1073.5 算术运算3.5 算术运算算术运算就是对数字的计算。在加、减、乘、除四种运算中,最基本的运算是加法。大家已经知道,乘法可以由加法实现,除法可以由减法实现。其实在计算机中,减法也是由加法实现的,方法是使用补码。既然如此,除法自然也可以由加法实现。因此,从

7、原理上说,计算机只要做加法运算即可完成各种数值计算。 例如:7 + 6 = 127 6 = 7 + (-6) = 17 X 6 = 7 + 7 + 7 + 7 + 7 + 7 = 4218 3 = 18 3 3 3 3 3 3,减了6次,得结果6实际的除法并不是这样计算,是使用到减法和移位两种运算进行计算的。83.5 算术运算数的表示方式:为了方便计算,数在计算机中,并不是完全以真值的2进制码来表示数。在计算机中,数的表示方式主要有3种:原码、补码和反码。原码:用真实的二进制值直接表示的数码就叫原码。原码表示法在数值前面增加了一位符号位,该位为0表示正数,该位为1表示负数。反码:正整数的反码就

8、是其自身,而负整数的反码可以通过对其绝对值逐位求反来求得。补码:机器数的补码可由原码得到。如果机器数是正数,则该机器数的补码与原码一样;如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在未位加1而得到的。93.5 算术运算原码上节课讲到的:为了表示数的符号,可在数的最高位之前增设一位符号位,符号位为 0 表示正数,符号位为 1 表示负数,这样规定的二进制码,我们称为原码。原码的表示范围是(-127-0 +0127)共256个。例如:(假设机器字长为 8 位)X1 = + 1011010 则 X1原 = 0X2 = - 1011010 则 X2原 = 1很快人们发现用带符

9、号位的原码在加减运算的时候,会出现了问题。如下: 假设字长为8bits:( 1 )10- ( 1 )10= ( 1 )10+ ( -1 )10= ( 0 )10(00000001)原+ (10000001)原= (10000010)原= ( -2 )显然不正确.103.5 算术运算反码因为在两个整数的加法运算中是没有问题的,于是就发现问题出现在带符号位的负数身上。对除符号位外的其余各位逐位取反就产生了反码。反码所表示的数和原码相同且一一对应。下面是反码的减法运算:( 1 )10- ( 2 )10= ( 1 )10+ ( -2 )10= ( -1 )10(00000001)反+ (1111110

10、1)反= (11111110)反= ( -1 )不难看到,这个结果是正确的。可是我们再看一道题:( 1 )10- ( 1 )10= ( 1 )10+ ( -1 )10= ( 0 )10(00000001)反+ (11111110)反= (11111111)反= ( -0 ) 虽然结果是-0,也就是0,没有什么问题。可是这样反码中就出现了两个0:+0(00000000)反与-0(11111111)反11补码反码的问题出现在(+0)和(-0)上,在人的计算概念中零是没有正负之分的。于是就引入了补码概念。负数的补码就是对反码加一,而正数不变,正数的原码、反码和补码都是一样的。在补码中用(-128)代

11、替了(-0)。所以补码的表示范围为(-1280127)共256个。注意:(-128)没有相对应的原码和反码。( 1 )10- ( 1 )10= ( 1 )10+ ( -1 )10= ( 0 )10(00000001)补+ (11111111)补= (00000000)补= ( 0 )( 1 )10- ( 2)10= ( 1 )10+ ( -2 )10= ( -1 )10(00000001)补+ (11111110)补= (11111111)补= ( -1 ) 不难看到,这两个结果都是正确的。12二进制的乘法两个二进制数相乘与十进制数相乘类似,可以用乘数的每一位去乘被乘数,乘得的中间结果的最低有效位与相应的乘数对齐,最后把这些中间结果同时相加即可。被乘数: 1 1 1 0乘数:X ) 0 1 1 0 0 0 0 0 1 1 1 0 1 1 1 0+ ) 0 0 0 0积: 1 0 1 0 1 0 013上述方法要求几个中间结果同时相加,但计算机一次只能实现两个二进制数相加。因此,实际上,计算机内对两个二进制数进行乘法运算时,通常采用边乘边移位相加的办法。如101x110步骤如右边所示:不难看出,虽然步骤多了,但计算机1 0 11 1 00 0 00 0 00 0 00 0 0 01

温馨提示

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

评论

0/150

提交评论