原码反码及补码(师用)_第1页
原码反码及补码(师用)_第2页
原码反码及补码(师用)_第3页
原码反码及补码(师用)_第4页
原码反码及补码(师用)_第5页
全文预览已结束

下载本文档

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

文档简介

1、原码、反码和补码的概念本节要求掌握原码、反码、补码的概念 知识精讲数值型数据的表示按小数点的处理可分为定点数和浮点数;按符号位有原码、反码和补码三种形式的 机器数。计算机中数据的表示方法1、数的定点与浮点表示在计算机内部,通常用两种方法来表示带小数点的数,即所谓的定点数和浮点数。定点数:是小数点在数中的位置是固定不变的数,数的最高位为符号位,小数点可在符号位之后, 也可在数的末尾,小数点本身不需要表示出来,它是隐含的。缺点:只有纯小数或整数才能用定点数表示;浮点数:小数点在数中的位置是浮动的、不固定的数。一般浮点数既有整数部分又有小数部分,通常对于任何一个二进行制数N,总可以表示成:N = 2

2、PXSN、P、S均为二进制数,P为N的阶码,一般为定点整数,常用补码表示,阶码指明小数点在数据 中的位置,它决定浮点的表示范围;S称为浮点数N的尾数,一般为定点小数,常用补码或原码表示,尾 数部分给出了浮点数的有效数字位数,它决定了浮点数的精度,且规格化浮点数0.5WISK1; 在计算机中表示一个浮点数其结构为:阶码部分尾数部分阶符阶数尾符尾数-EfE1E2Em鸟S1S2Sn假设用八个二进制位来表示一个浮点数,且阶码部分占4位,其中阶符占一位;尾数部分占4位,尾 符也占一位。若现有一个二进制数N=( 101100) 2可表示为:2 110X0.1011,则该数在机器内的表示形式为:011001

3、101一个浮点形式的尾数S若满足0.5WISIV1,且尾数的最高位数为1,无无效的0,则该浮点数称为规 格化数;规格化数可以提高运算的精度。S为原码表示,则S 1=1规格化数S为补码表示J N为正数,则S1 =1I N为负数,则S1=0二、原码、反码和补码1、机器数与真值真值:用“+”、“一”号表示的二进制数。机器数:在计算机中数据和符号全部数字化,最高位为符号位,且用0表示正、1表示负,那么把包 括符号在内的一个二进制数我们称为机器数。如:将真值+11101B表示成机器数为011101B,11101B表示成机器数为111101B。2、原码、反码和补码的概念1)概念机器数有原码、反码和补码三种

4、表示方法。原码:是最简单的机器数表示法。其数符位用0表示正,1表示负,其余各位表示真值本身。1的原 码是 00000001,1 的原码是 10000001。反码:正数的反码同原码,负数的反码为除符号位外,其它各位按位取反。1的反码是00000001,1的反码是11111110。补码:正数的补码同原码,负数的补码为反码加1。1的补码是00000001,1的补码是111111102)转换方法当真值为正数时,3种机器数的最高位均为0,当真值为负数时该位为1,机器数的最高位为符号位, 其它位称为数值位。当真值为正数时,原码、反码和补码相同;当真值为负数时,三种机器数的符号位相 同,均为1,原码的数值位

5、保持“原”样,反码的数值位是原码数值位的“按位取反”补码的数值位是原码的数值位的“按位取反”后再加1,简称“取反加1 ”。例如:(1)假设码长为8位,写出下列数的原码、反码和补码。+0、 0、 +1、 1、 +127、 127、 128真值+0-0+1-1+127-127-128原码000000001000000000000001100000010111111111111111溢出反码00000000111111111000000011111111100111111110000000溢出补码0000000000000000000000011111111110111111110000001100

6、00000根据本题可得到结论:0的原码、反码各有两种表示方法,而补码是唯一的全0表示。(2)假设码长为8位,写出原码、反码和补码所能表示定点整数和定点小数的范围。二进制定点整数十进制定点整数二进制定点小数十进制定点小数原码1111111卜 01111111-127+1271.1111111 0.1111111-127/128+127/128反码1000000001111111-127+1271.1111111 0.1111111-127/128+127/128补码1000000001111111-128+1271.1111111 0.1111111-1 -127/128由此可见:n位的二进制数

7、用原码表示,则可表示的数的个数为如个;n位的二进制数用反码表示, 则可表示的数的个数为2n二1个;n位的二进制数用补码表示,则可表示的数的个数为业个。3、算术运算计算机中的算术运算一般可采用补码进行,用补码表示的两个操作数进行算术运算,符号位可直接参 加运算,结果仍为补码。定点补码加法运算运算规则:x+y补=叫土叫定点补码减法运算运算规则:xy补=x+(-y)补=幻补+ y补y补的求法是将y补的各位(包括符号位)全取反,最末位加1,即将y补连同符号位一起取反加1 便可得到y补。如:y补=10001010,叮一y补=01110110; y补=0100,则y补=UW。注意:在进行运算时有时会发生溢

8、出。定点补码运算的溢出处理采用补码运算时若结果的数值超出了补码所能表示的范围,则此种情况称为溢出。若计算结果比能表 示的最大数还大则称为上溢,上溢时一般作溢出中断处理;若计算结果比能表示的最小数还小则称为下溢, 下溢时一般作机器零处理。下面介绍用双符号判断溢出方法:引入两个符号位Cs+1、CsCs+1用来表示两个符号位向更高位进位时的状态,有进位时Cs+1=1,无进位时Cs+1=0;C;九来表示两数值的最高位向符号位进位时的状态,有进位时Cs=1,无进位时Cs=0;当C =00或11时,无溢出;当C =01或10时,有溢出,当双符号位为0时正溢出,当双符号 位为10时负溢出;例如:x补=100

9、11100, y补=10011000,则x+y补=。溢出,因为Cs+1Cs=10。故溢出逻辑表达式为v=Cs+1Cs溢出的判断-直观判断:两个符号相同的数相加,和的符号相反溢出;两个符号不同的数相减,差的符号和遍数相同溢出;无符号数的运算无符号数的运算实际上是指参加运算的操作数X、Y均为正数,且整个字长全部用于表示数值部分。当两个无符号数相加时,其值在字长表示的范围内,其结果为正数。当两个无符号数相减时,其值的符号位取决于两数绝对值的大小。另外,地址在计算机中用无符号数表示。典型例题一、选择题1、一个四位二进制补码的表示范围是()A、015B、-87C、-77D、-782、(10题)十进制数-

10、48用补码表示为()A、10110000 B、11010000C、11110000 D、11001111分析:求某个负数的补码,可利用模的定义,所以求-48的补码,只需求-80的原码即可,因为-48+(-80) =-128,而-80原=11010000,故选B,注,传统做法是在原码的基础上“取反加1”。答案:B泉3、(09年镇江三模)如果X为负数,由x补求-x补是将()A、x补各值保持不变B、x补符号位变反,其他各位不变C、x补除符号位外,各位变反,末位加1D、x补连同符号位一起各位变反,末位加1分析:不论X是正数还是负数,由X补求-X补的方法是对X补求补,即连同符号位一起按位取反,末 位加1

11、。答案:D二、判断题计算机中一个浮点数N可用2PXS表示,那么用规格化数表示,则尾数S必须满足0.5WISIV1。【答案】对【解题指导】一个浮点形式的尾数S若满足0.5WISIV1,且尾数的最高位数为1,无无效的0,则该 浮点数称为规格化数;规格化数可以提高运算的精度。三、填空题1 .二进制数0 .011011的规格化数为1111111101101100,二进制数一11011的规格化数为 0000010110010100。(尾数、阶码均用8位二进制补码表示)分析:0.011011可表示为O.11011X2-1,即规格化数为O.11011X2-1-11011可表示为一0 .11011X25,即规

12、格化数为0 .11011X21012、已知X、Y为两个有符号数的定点整数,它们的补码为:x补=00010011B,y补=11111001B,则X+Y=B。补 分析:X+Y补=乂补+ Y补,X为正数,Y为负数,故列式结果不溢出为00001100。答案:00001100原码、反码和补码的概念当堂练习一、选择题()1、机器数80H所表示的真值是-128,则该机器数为 形式的表示。A、原码B、反码C、补码D、移码()2、在浮点数中,阶码、尾数的表示格式是。A、阶码定点整数,尾数定点小数B、阶码定点整数,尾数定点整数C、阶码定点小数,尾数定点整数D、阶码定点小数,尾数定点小数()3、已知x补=10110

13、111,y补=01001010,则xy补的结果是。A、溢出B、01101010C、01001010 D、11001010()4、某机字长8位,含一位数符,采用原码表示,则定点小数所能表示的非零最小正数为A、2-9B、2-8C、-1D、2-7()5、(08年)下列数中最小的数_C。A. 10010101原B. 10010101反C. 10010101补D. 100101012()6、(12年)8位补码表示的定点整数的范围是B 。补A、 -128+128B、 -128+127 C、 -127+128 D、 -127+127 ()7、(11年盐城二模)已知X的补码为10110100,Y的补码为011

14、01010,贝0X-Y的补码为 。A) 01101010B) 01001010 C) 11001010 D) 溢出()8、将-33以单符号位补码形式存入8位寄存器中,寄存器中的内容为()。A. DFHB. A1HC. 5FHD. DEH()9、在机器数的三种表示形式中,符号位可以和数值位一起参加运算的是()A )原码B)补码 C )反码 D )反码、补码二、判断题()1、16位的补码表示的定点整数的最小值是-32768。()2、(10年南京二模)一个数在计算机中分别用原码、反码、补码表示时一定各不相同。()3、(10年常州三模)字长相同,定点法表示数的范围比浮点法小。()4.若用八位二进制数来

15、表示一个有符号数,则原码、反码和补码表示的数的个数与范围均相同。三、填空题1、 十进制数-27对应的8位二进制补码为。2、(11年)已知X、Y为两个带符号的定点整数,它们的补码为:X补=00010011B,Y补=11111001B,则X+Y补=00001100B。3、 数*;的真值为-0.1011B,其原码表示为,补码表示为。4、 八位定点整数,采用二进制补码表示时,所能表示真值的十进制数的范围 。5、 (09 年)已知X补=01110111B,YL=01100010B,则X-Y补=00010101 。6、 (11年)一个含有6个“1”、2个“0”的八位二进制整数原码,可表示的最大数为7EH(

16、用十六进制表示)7、(12 年)已知X补=10000000B,则 X= -10000000 Bo8、(10年盐城二模)二进制数10110000,若看成纯小数,且为补码,则其对应真值的十进制数是o原码、反码和补码的概念课后练习一、选择题()1、(10年盐城二模)“溢出”一般是指计算机在运算过程是产生的 oA、数据量超过内存容量B、文件个数超过磁盘目录区规定的范围C、数据超过了机器的位所能表示的范围D、数据超过了变量的表示范围()2、设有二进制数X=-1101110,若采用8位二进制数表示,则X补的结果是oA、11101101B、10010011 C、00010011D、10010010()3、假

17、设有一个16机的某存储单元存放着数1101101101001000,若该数作为原码表示十进制有符 号整数(其中最高位为符号位)时,其值为 oA、-55510B、-23368C、-18762 D、56136()4、计算机内的数有浮点和定点两种表示方法。一个浮点法表示的数由两部分组成,即A)指数和基数B)尾数和小数C)阶码和尾数D)整数和小数二、判断题()1.负数的补码就是原码逐位取反后的结果。()2. X补是一个正数还是一个负数,是根据X补的符号位是“0”还是“1”确定的。三、填空题1、 (11年盐城二模)已知X补=11111111 X对应的真值 -1。2、已知x补=10111011,y补=01

18、101101,则x+y补=3、 (10年南京二模).已知X补=10000000B,则X= (十进制)。第二节数制及数制的转换巩固练习一、选择题 (1110)2x(1011)2=。A)11010010B)10111011 C)10110110 D)10011010 十六进制数(AB)16变换为等值的八进制数是。A)253 B)35lC)243D)101 下列数中最大的数是。A)(227)8 B) (1FF) 16 C) (10100001) 2 D)(1789) 10 十进制数87转换成二进制数是。A)(1010111)2 B)(1101010)2 C)(1110011)2 )D、(1010110)2 十进制数1385转换成十六进制数为。 A)568B)569C)D85D)D55 (12年)下列不同进制数中最大的数 。A、 10111001BB、 257QC、

温馨提示

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

评论

0/150

提交评论