负数的补码的一种证明方法.doc_第1页
负数的补码的一种证明方法.doc_第2页
负数的补码的一种证明方法.doc_第3页
负数的补码的一种证明方法.doc_第4页
全文预览已结束

下载本文档

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

文档简介

负数的补码的一种证明方法叶 嘉 黄珍生(广西广播电视大学理工学院广西南宁530022) 摘要本文首先介绍了负数补码和反码的定义,并用例子验证定义的正确性,然后从负数补码、反码的定义出发,给出了负数的补码等于该负数的反码与末位加1之和这一命题的一种证明方法与验证。关键词补码;反码;证明中图分类号TP311.1文献标识码A文章编号10087656(2005)03006502任意一个二进制数真值在计算机中用机器数来表示,最基本的机器数有三种,即原码、补码和反码。1在计算机的运算过程中,根据不同的运算运用不同的机器数,可以简化计算机运算过程并很快得到运算结果。如乘法和除法用原码参与运算比较方便,符号位通过异或运算即得结果的符号位;而加法与减法运算用补码参与运算比较方便,它使符号位不用单独处理,可以一起参与运算。在计算机中,三种机器数能方便、容易地进行转换,这给使用带来极大方便。其转换要点有三:(1)将一个数的二进制真值的最高位置上符号位(正数用0,负数用1表示),就是这个数的原码。(2)对于一个正数,其原码、补码、反码在计算机中的表示代码相同,其代码不用改变。(3)对于一个负数,将原码的符号位(即二进制数的最高位,也即原码最左边的那一位)保持不变,数值位逐位取反(变为反码),末位(即最右边的那一位)加1,即得补码。也就是说,一个负数的补码等于该负数的反码与末位加1之和。1本文要讨论的问题即第三个要点。这一要点在许多计算机原理的教材中使用,但很少见到这一命题的完整推导或证明过程,这给学生在学习本章节内容时只能被动地接受命题,不了解例题的理论依据。因此,教师在教学中适当地从理论的高度论述原码、补码和反码之间的转换关系很有必要。本文从补码、反码的定义出发,给出这一命题的简单证明,与同行分享与讨论。一、对于定点负整数(一)、补码的定义2如下:X补=2nXMOD(2n)(1)从定义知,一个n位二进制定点负整数,求其补码时,用2n为模数加上该负数即可。例如:已知n=8,X=1010101,则X补=2nX=28(1010101)=1000000001010101=10101011(说明:28的二进制为100000000,简记:28的二进制为1个1后有8个0)(二)、反码的定义2如下:X反=(2n1)XMOD(2n1)(2)从定义知,一个n位定点负整数,求其反码时,用2n1为模数加上该负数即可。例如:已知n=8,X=1010101,则X反=(2n1)X=(281)(1010101)=111111111010101=10101010。有了以上定点负整数补码,反码的定义,我们就很容易地证明,对于任一定点负整数,其补码等于其反码末位加1。由(2)式,X反=(2n1)X,得:X=X反2n1将其代入(1)式,有X补=2nX=2nX反2n1=X反1(A)根据以上推导,命题对于定点负整数是成立的。二、对于定点负小数(一)、补码的定义2如下:X补=2XMOD(2)(3)从定义知,一个n位二进制定点负小数,求其补码时,用2为模数加上该负数即可。例如:已知n=8,X=0.1010101,则X补=2X=2(0.1010101)=100.1010101=10.00000000.10101011=1.0101011(说明:2的二进制为10,写成小数即10.0000003)(二)、反码的定义2如下:X反=22(n1)XMOD(22(n1)(4)从定义知,一个n位定点负小数,求其反码时,用22(n1))为模数加上该负数即可。例如:已知n=8,X=0.1010101,则X反=22(n1)X=227(0.1010101)=100.00000010.1010101=1.11111110.1010101=1.0101010。(说明:27的二进制为0.0000001,简记为:27的二进制为小数点后第7位为1,其余位为0。(小数点后第7位即为8位二进制负小数的最末最右的一位)3同理,有了以上定点负小数补码,反码的定义,我们也能很容易地证明,对于任一定点负小数4,其补码等于其反码末位加1。由(4)式,X反=22(n1)X,得:X=X反22(n1)将其代入(3)式,有X补=2X=2X反22(n1)=X反2(n1)(B)上式中,2(n1)的二进制即为小数点后第n1位为1,其余位为0,小数点后第n1位为1,即n位定点小数最右最末的一位为14。因此上式:X补=X反2(n1),也就是X的补码等于其反码与末位加1之和)根据以上推导,命题对于定点负小数同样是成立的。综合(A)式和(B)式,可得我们要推导证明的命题成立。 参考文献1俸远祯.计算机组成原理与汇编语言程序设计M.北京:中央广播电视大学出版社,2001:3.2李明慧.计算机组成原理M.北京:中央广播电视大学出版社,1997:10.3白中英,韩兆轩.计算机组成原理教程M.北

温馨提示

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

评论

0/150

提交评论