- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五课 原码、反码和补码的概念
第五课 原码、反码和补码的概念
[课 题] 原码、反码和补码的概念
[课 型] 新课
[授课课时]
[教学目标]
掌握原码、反码和补码的概念
掌握定点数据与浮点数的表示方法
[教学重点]
原码、反码和补码的概念
补码运算规则及溢出判断
[教学难点]
浮点数的表示方法
[教学过程]
一、数的定点与浮点表示
在实际应用中,数一般有整数和小数两部分构成,即数是带小数点的,那么在计算机中小数点问题是如何解决的呢?
1.数的定点表示法
数的定点表示法指将数中小数点的位置固定,约定在数值的某个位置上,可分成定点整数法和定点小数法。
2.数的浮点表示法
数的浮点表示法指数中小数点的位置是变化的,并不固定。
众所周知,在十进制数中,数12345可写成1.2345×104;同理,一个R进制数M,也可写成M=S×Rn。其中,S称为尾数,n称为阶码。
由于计算机采用的进制数是基本固定的,因此在存储浮点数时,基数R无需存储,只需存储尾数和阶码。浮点数的存储形式如下:阶码 尾数。需指出的是阶码和尾数都是有符号数,采用机器数的形式。
浮点数的精度由尾数的位数决定,数的表示范围由阶码的位数决定。为了最大限度的使用计算机的精度,充分利用尾数的位数表示有效数据,一般采用规格化的形式表示浮点数的尾数。一个规格化后的浮点数尾数满足:1/2≤|M|<1。
注:在字长相同的情况下,定点数表示的范围比浮点数表示的范围小。
二、 原码、反码及补码
机器数与真值
一般规定用“0”表示正号,用“1”表示负号;并规定二进制数的最高位用于表示该数的符号位。
真值是指一个数的实际本身。如:-1011B,+234D。
机器数是指数的符号位数字化后得到的数。机器数的数值部分也用二进制表示。机器数一般有三种表示形式:原码、反码和补码。
2.原码
原码的定义如下.
0X (+X时)
[±X]原=
1X (-X时)
X是一个N-1位的无符号二进制数。[±X]原是一个N位的机器数。
原码的特点:
①原码中,0有两种表示形式。若取N=8,则[+0]原=0000 0000;[-0]原=1000 0000。
②字长为N的原码,定点整数的表示范围:+(2n-1-1)~ -(2n-1-1);定点小数的表示范围:+(1-2-(n-1)) ~ -(1-2-(n-1));所能表示的数据个数为2n-1。
3.反码
反码的定义如下.
0X (+X时)
[±X]反=
1X (-X时)
X是一个N-1位的无符号二进制数。[±X]反是一个N位的机器数。
①反码中,0有两种表示形式。若取N=8,则[+0]反=0000 0000;[-0]反=1111 1111。
②字长为N的反码,定点整数的表示范围:+(2n-1-1)~ -(2n-1-1);定点小数的表示范围:+(1-2-(n-1)) ~ -(1-2-(n-1));所能表示的数据个数为2n-1。
4.补码
补码的定义如下.
0X (+X时)
[±X]补=
2n-X (-X时)
X是一个N-1位的无符号二进制数。[±X]补是一个N位的机器数。
补码的特点:
①补码中,0只有一种表示形式。若取N=8,则[+0]补=0000 0000;[-0]补=0000 0000。
②字长为N的补码,定点整数的表示范围:+(2n-1-1)~ -(2n-1);定点小数的表示范围:+(1-2-(n-1)) ~ -1;所能表示的数据个数为2n。
三、补码的运算
1.补码的运算规则:
[X+Y]补=[X]补+[Y]补 [X-Y]补=[X]补+[-Y]补
[-X+Y]补=[-X]补+[Y]补 [-X-Y]补=[-X]补+[-Y]补
2.溢出
理论上讲,计算机的字长可以不受限制,但受客观条件限制(包括程序设计语言的规定),计算机所能表示的数具有一定的范围限制。例如,在QBASIC语言中,一个整型数采用双字节表示,数的范围为:-32768 -- +32767;一个双精度数采用8个字节表示。
溢出是指两数运算的结果超出了计算机所能表示数的最大范围。溢出分为上溢和下溢。
上溢是指运算结果超出了计算机所能表示的最大数。发生上溢时,计算机一般不再继续运算而转入“溢出”中断处理。
下溢是指运算结果超出了计算机所能表示的最小数。发生下溢时,运算结果一般作为机器零。
四、例题讲解
例1 X=-1101,其补码为 。(1998年题)
A)01101 B)11101 C)10010 D)10011
(1)本题的正确思维及答案:本题考查的知识点是求一个二进制数的补码,求补码的方法较多,可
文档评论(0)