数据表示方法学习教案.pptx
《数据表示方法学习教案.pptx》由会员分享,可在线阅读,更多相关《数据表示方法学习教案.pptx(73页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、会计学1数据表示方法数据表示方法(fngf)第一页,共73页。2 21 1 数据表示方法数据表示方法数据表示方法数据表示方法(fngf(fngf)和运算器和运算器和运算器和运算器 2 21 11 1计算机中数据的表示方法计算机中数据的表示方法 当当前前的的计计算算机机所所采采用用的的存存储储器器件件都都是是两两态态器器件件,所所以以适适合合于于存存放放二二进进制制数数据据。尽尽管管为为了了方方便便起起见见,也也使使用用其其他他进进制制,如如十十进进制制、十十六六进进制制,但但是是在在计计算算机机内内部部数数据据还还是是以以二二进进制制的的形形式式存存放放和和处处理理。二二进进制制只只使使用用了
2、了两两个个不不同同的的数数字字符符号号,易易于于用用物物理理器器件件来来实实现现:在在物物理理世世界界中中具具有有两两个个稳稳定定状状态态(zhungti)(zhungti)的的物物理理器器件件很很多多,如如晶晶体体管管的的“截截止止”与与“导导通通”、电电容容的的“充充电电”与与“放放电电”、电电压压信信号号的的“高高”与与“低低”、脉脉冲冲的的“有有”与与“无无”,电电磁磁单单元元的的“正正向向磁磁化化”与与“反反向向磁磁化化”等等等等,只只要要规规定定其其中中一一种种稳稳定定状状态态(zhungti)(zhungti)表表示示“1”“1”,另另一一种种稳稳定定状状态态(zhungti)(
3、zhungti)表表示示“0”“0”,就就可可以以用用来来表表示示二二进进制制数数位位了了。其其次次,二二进进制制的的运运算算规规则则非非常常简简单单,易易于于用用电电子子器器件件来来实实现现。数数据据的的类类型型多多种种多多样样,如如文文件件、图图、表表、树树、阵阵列列、链链表表、栈栈、向向量量、串串、实实数数、整整数数、布布尔尔数数、字字符符等等。计计算算机机里里用用到到的的数数据据类类型型主主要要可可分分为为两两类类:表表示示数数量量的的数数值值数数据据和和非非数数值值性性的的符符号号数数据据。所所有有的的数数据据都都是是以以二二进进制制的的形形式式在在计计算算机机里里处处理理和和存存储
4、储。本本节节主主要要讲讲述述数数值值数数据在计算机里的表示方法。据在计算机里的表示方法。第1页/共73页第二页,共73页。1 1数值数据表示方法数值数据表示方法 在计算机中表示数时,需要考虑以下几个因素:要表示的数的在计算机中表示数时,需要考虑以下几个因素:要表示的数的类型类型(小数、整数、实数和复数小数、整数、实数和复数(fsh)(fsh)、符号如何表示以及小数、符号如何表示以及小数点的位置;可能遇到的数值范围;数值精确度;数据存储和处理点的位置;可能遇到的数值范围;数值精确度;数据存储和处理所需要的硬件代价。计算机中表示数值符号的方法是占用一位二所需要的硬件代价。计算机中表示数值符号的方法
5、是占用一位二进制位,进制位,1 1表示负号、表示负号、0 0表示正号。常用的数值数据表示格式有两表示正号。常用的数值数据表示格式有两种,根据小数点的位置是固定不变还是浮动变化的分为定点格式种,根据小数点的位置是固定不变还是浮动变化的分为定点格式和浮点格式。一般来说,定点格式容许的数值范围有限,但要求和浮点格式。一般来说,定点格式容许的数值范围有限,但要求的处理硬件比较简单。而浮点格式容许的数值范围很大,但要求的处理硬件比较简单。而浮点格式容许的数值范围很大,但要求的处理硬件比较复杂。的处理硬件比较复杂。(1)(1)定点数的表示方法定点数的表示方法 所谓定点格式,即约定机器中所有数据的小数点位置
6、是固定不所谓定点格式,即约定机器中所有数据的小数点位置是固定不变的。由于约定在固定的位置,小数点就不再使用记号变的。由于约定在固定的位置,小数点就不再使用记号“”来来表示。原理上讲,小数点位置固定在哪一位都可以,但是通常将表示。原理上讲,小数点位置固定在哪一位都可以,但是通常将数据表示成纯小数或纯整数。数据表示成纯小数或纯整数。第2页/共73页第三页,共73页。例如用一个例如用一个n n1 1位字来表示一个定点位字来表示一个定点(dn din)(dn din)数数x x,其中一位,其中一位x0 x0用来表示数的符号,其余位数代表它的量值。为了将整个用来表示数的符号,其余位数代表它的量值。为了将
7、整个n n1 1位统一位统一处理起见,符号位处理起见,符号位x0 x0放在最左位置,并用数值放在最左位置,并用数值 0 0和和1 1分别代表正号和负分别代表正号和负号,这样,对于任意定点号,这样,对于任意定点(dn din)(dn din)数数x=x0 x1x2xnx=x0 x1x2xn,在定点,在定点(dn(dn din)din)机中可表示为如下形式机中可表示为如下形式:x0 x1 x2 xn-1 xn符号 数量值 第3页/共73页第四页,共73页。如果数x表示的是纯小数,那么小数点位于x0和x1之间。当x0 x1x2xn各位均为0时,数x的绝对值最小,当各位均为1时,x的绝对值最大,故数的
8、表示范围为 0 x12n 如果数x表示的是纯整数,那么小数点位于最低位xn的右边,此时数x的表示范围为 0 x2n1,目前计算机中多采用定点纯整数表示,因此将定点数表示的运算简称为整数运算。(2)浮点数的表示方法 采用浮点表示法表示的数据叫做浮点数,采用浮点数进行运算的机器(j q)叫做“浮点机”。浮点数是指小数点位置可以改变的数,显然浮点数可用来表示带符号的实数。例如:表示8位字长的二进制浮点数可以写成 0.10110101 2111 尾 数 阶码 第4页/共73页第五页,共73页。任意一个十进制数N可以写成 N=10ZX,同样,在计算机中一个任意进制数N可以写成 N=Bz X其中X称为浮点
9、数的尾数,是一个纯小数。z是比例因子的指数,称为浮点的指数,是一个整数。比例因子的基数(jsh)B是一个常数,一般规定只为2,8或16。在机器中表示一个浮点数时,一是要给出尾数,用定点小数形式表示。尾数部分给出有效数字的位数,因而决定了浮点数的表示精度。二是要给出指数,用整数形式表示,常称为阶码,阶码指明小数点在数据中的位置,因而决定了浮点数的表示范围。浮点数也要有符号位。因此一个机器浮点数应当由阶码和尾数及其符号位组成:第5页/共73页第六页,共73页。32位 浮 点 数 的 标 准(biozhn)格式为:Z0Z1 Z2 Zn-1 ZnX0X1 X2 Xn-1 Xn阶符 阶码 数符 尾数 3
10、130 2322 032位浮点数F Z X 64位浮点数的标准(biozhn)格式为:6362 5251 064位 浮 点数F Z X 第6页/共73页第七页,共73页。不不论论是是3232位位浮浮点点数数还还是是6464位位浮浮点点数数,规规定定基基数数B B2 2。由由于于基基数数2 2是固定常数,不必用显示方式来表示它。是固定常数,不必用显示方式来表示它。3232位位的的浮浮点点数数中中,F F是是浮浮点点数数的的符符号号位位,占占1 1位位,安安排排在在最最高高位位,F F0 0表表示示正正数数,F F1 1表表示示负负数数。X X是是尾尾数数,放放在在低低位位部部分分,占占用用232
11、3位位,用用小小数数表表示示,小小数数点点放放在在尾尾数数域域的的最最前前面面。Z Z是是阶阶码码,占占用用8 8位位,阶阶符符采采用用(ciyng)(ciyng)隐隐含含方方式式,即即采采用用(ciyng)(ciyng)移移码码方方法法来来表表示示正正负负指指数数。移移码码方方法法对对两两个个指指数数大大小小的的比比较较和和对对阶阶操操作作都都比比较较方方便便,因因为为阶阶码码域域值值大大者者其其指指数数值值也也大大。采采用用(ciyng)(ciyng)这这种种方方式式时时,将将浮浮点点数数的的指指数数值值z z变变成成阶阶码码Z Z时时,应应将将指指数数z z加加上上一一个个固固定定的的偏
12、偏移移值值127(01111111)127(01111111),即即Z Zz z127127。一一个个规规格格化化的的3232位位浮浮点点数数X X的的值值可可表表示示为为X X(1)F(11)F(1X)2EX)2E127 127 其其中中尾尾数数域域所所表表示示的的值值是是1 1X X。因因为为规规格格化化的的浮浮点点数数的的尾尾数数域域最最左左位位也也即即最最高高有有效效位位总总是是1 1,故故这这一一位位经经常常不不予予存存储储,而而认为隐藏在小数点的左边。认为隐藏在小数点的左边。第7页/共73页第八页,共73页。6464位位的的浮浮点点数数中中符符号号位位1 1位位,阶阶码码域域111
13、1位位,尾尾数数域域5252位位,指指数数偏偏移值是移值是10231023。因此规格化的。因此规格化的6464位浮点数位浮点数X X的真值为的真值为X=(X=(1)F (11)F (1X)2E1O23 zX)2E1O23 zE E10231023 若若不不对对浮浮点点数数的的表表示示作作出出明明确确规规定定,同同一一个个浮浮点点数数的的表表示示就就不不 是是 惟惟 一一 的的。例例 如如 0 0 5 5也也 可可 以以(ky)(ky)表表 示示 成成 0 0 0510105101,5010250102等等等等。为为了了提提高高数数据据的的表表示示精精度度,当当尾尾数数的的值值不不为为0 0时时
14、,其其绝绝对对值值应应005 5,即即尾尾数数域域的的最最高高有有效效位位应应为为1 1,否否则则要要以以修修改改阶阶码码同同时时左左右右移移小小数数点点的的办办法法,使使其其变变成成这这一一要要求求的的表表示示形形式式,这称为浮点数的规格化表示。这称为浮点数的规格化表示。当当一一个个浮浮点点数数的的尾尾数数为为0 0,不不论论其其阶阶码码为为何何值值,或或者者当当阶阶码码的的值值遇遇到到比比它它能能表表示示的的最最小小值值还还小小时时,不不管管其其尾尾数数为为何何值值,计计算算机机都都把把该该浮点数看成零值,称为机器零。浮点数看成零值,称为机器零。浮浮点点数数所所表表示示的的范范围围远远比比
15、定定点点数数大大的的多多。假假设设(考考虑虑符符号号位位)机机器器中中的的数数由由8 8位位二二进进制制数数表表示示时时:在在定定点点机机中中这这8 8位位全全部部用用来来表表示示有有效效数数字字(包包括括符符号号);在在浮浮点点机机中中若若阶阶符符阶阶码码占占3 3位位,数数符符尾尾数数占占5 5位位。在在此此情情况况下下,若若只只考考虑虑正正数数值值,定定点点机机小小数数表表示示的的数数的的范范围围是是0 000000000000000到到0 011111111111111,相相当当于于十十进进制制数数的的0 0到到127127,而而浮浮点点机机所所能能表表示示的的数数的的范范围围是是2
16、211011000010001到到2110211011111111,相相当当于于十十进进制制数数的的1 11281287 75 5。显显然然,都都用用8 8位位,浮浮点点机机能能表表示的数的范围比定点机大得多。示的数的范围比定点机大得多。第8页/共73页第九页,共73页。一一台台计计算算机机中中究究竟竟采采用用定定点点表表示示还还是是浮浮点点表表示示,要要根根据据计计算算机机的的使使用用条条件件来来确确定定。一一般般在在高高档档微微机机以以上上(yshng)(yshng)的的计计算算机机中中同同时时采采用用定定点点、浮浮点点表表示,由使用者进行选择。而单片机中多采用定点表示。示,由使用者进行选
17、择。而单片机中多采用定点表示。【例例2 21 1】若若浮浮点点数数X0X0的的二二进进制制存存储储格格式式为为(43240000)16(43240000)16,求求其其3232位位浮浮点点数数的十进制值。的十进制值。解:解:将将1616进制数展开后,可得二制数格式为进制数展开后,可得二制数格式为 0 100 0011 0 010 0100 0000 0000 0000 0000 0 100 0011 0 010 0100 0000 0000 0000 0000 F F 阶码阶码(8(8位位)尾数尾数(23(23位位)指数指数z z阶码阶码1271271000011001111111100001
18、10011111110000011100000111(7)10(7)10。包括隐藏位包括隐藏位1 1的尾数的尾数1 1X X1 1010 0100 0000 0000 0000 0000010 0100 0000 0000 0000 00001 1010010010010 于是有于是有 X0 X0(1)F 1(1)F 1X 2zX 2z(1(1010010)27010010)271010010010100100(187)10(187)10。第9页/共73页第十页,共73页。【例22】将十进制数1659375转换成32位浮点数的二进制格式来存储(cn ch)。解:首先分别将整数和分数部分转 换
19、成 二 进 制 数:16 593751000010011移动小数点,使其在第1位和第2位之间10000 10011 1 000010011 24 z4 所以:F=0,E=4127=131,X=000010011 则得到的32位浮点数的二进制存储(cn ch)格式为:0100 0001 1000 0100 1100 0000 0000 0000=(4184C000)16 第10页/共73页第十一页,共73页。(3)定点数据的编码方法 真值与机器码机器码是数在计算机中的表示形式。对于数值数据而言,无论以定点形式表示或是以浮点形式表示,都需要通过某种编码 方法,以计算机所能处理的0和1二进制位来表示
20、其数值大小。通常一个数值数据的机内表示形式称为(chn wi)其机器码,而一个机器码所代表的数值称为(chn wi)该机器码的真值。计算机中只有机器码,不存在数的真值。假设机器码的宽度为n,最高位为符号位,下面分别介绍实际应用中常见的4种机器码编码方法:原码、反码、补码和移码。原码表示法定点整数原码表示法定点整数原码的定义如下所示:第11页/共73页第十二页,共73页。X X 原原=X 0X=X 0X2n2n1 1 X X 原原=2n=2n1 1X X 2n2n1 1X0X0 由定义可以看出,正整数的原码就是其自身,负整数的由定义可以看出,正整数的原码就是其自身,负整数的原码只需把其绝对值的原
21、码的符号位置为原码只需把其绝对值的原码的符号位置为1 1即可。即可。(用用0 0表示正表示正号,用号,用1 1表示负号表示负号)。原码表示方法的定点整数的取值范围为。原码表示方法的定点整数的取值范围为(2n(2n1 1)X2n)X2n1 11 1。注意注意(zh y)(zh y)在原码表示法中,零有正零和负零之分。在原码表示法中,零有正零和负零之分。000000000000,001000010000。定点小数的原码表示法定点小数的原码表示法定点小数原码的定义如下所示:定点小数原码的定义如下所示:X X 原原 X 0X X 0X1 1X X 原原1 1X X 1 1X0X0第12页/共73页第十
22、三页,共73页。正正的的纯纯小小数数的的原原码码就就是是其其自自身身,而而负负的的纯纯小小数数的的原原码码可可以以通通过过把把其其绝绝对对值值的的原原码码的的符符号号(fho)(fho)位位置置1 1来来得得到到。其其取取值值范范围围为为(1(12 2(n(n1)X(11)X(12 2(n(n1)1)。综综上上可可以以看看出出一一个个数数的的原原码码是是由由符符号号(fho)(fho)位位加加上上数数值值位位绝绝对对值值组组成成,符符号号(fho)(fho)位位为为0 0代代表表正正数数,符符号号(fho)(fho)位位为为1 1代代表表负负数数。由由于于0 0有有0 0和和0 0两两种种表表
23、示方法,示方法,n n位二进制数可以表示位二进制数可以表示2n2n1 1个原码。个原码。用用原原码码实实现现乘乘除除运运算算规规则则较较简简单单,但但做做加加减减运运算算不不方方便便。原原码码表表示示法法的的一一个个主主要要优优点点在在于于其其真真值值和和机机器器码码表示之间对应关系很直观,容易转换。表示之间对应关系很直观,容易转换。补码表示法补码表示法定点整数的补码表示定点整数的补码表示定点整数补码的定义如下所示:定点整数补码的定义如下所示:X X 补补 X X 0X 0X2n2n1 1X X 补补2n2nX X 2n2n1X1X0 0第13页/共73页第十四页,共73页。正正整整数数的的补
24、补码码就就是是(jish)(jish)其其自自身身,负负整整数数的的补补码码可可以以通通过过对对其其绝绝对对值值部部分分逐逐位位求求反反,并并在在最最低低位位加加1 1求求得得。同同样样,在在补补码码表表示示法法中中,符符号号位位为为0 0表表示示正正号号,为为1 1表表示示负负号号。其其表表示示的的真真值值X X的的范范围围为为 2n2n1X2n1X2n1 11 1。在在补补码码表表示示中中,0 0的机器码是惟一的,没有的机器码是惟一的,没有0 0和和0 0之分。之分。定点小数的补码表示定点小数的补码表示定点小数补码的定义如下所示:定点小数补码的定义如下所示:X X 补补 X 0X X 0X
25、1 1X X 补补2 2X X 1X1X0 0定点小数的补码求解方法与定点整数的补码求解方法相定点小数的补码求解方法与定点整数的补码求解方法相类似。其表示的真值类似。其表示的真值X X的范围为的范围为1X11X12-(n-1)2-(n-1)。当。当n n8 8时,时,1 1的定点小数补码表示为:的定点小数补码表示为:1000000010000000,而用定,而用定点整数的补码表示点整数的补码表示1 1,则为,则为1111111111111111。在补码表示方法中,在补码表示方法中,0 0的编码是惟一的,所以的编码是惟一的,所以n n位二进位二进 制数可以表示制数可以表示2n2n个补码。个补码。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 表示 方法 学习 教案
限制150内