首页 第2讲数据表示

第2讲数据表示

举报
开通vip

第2讲数据表示nullnull计算机组成原理Principles of Computer Organization广义双语教学课程http://211.64.192.109/skyclass25/青岛理工大学 校级精品课程http://jx.qtech.edu.cn/ec/C84/null第6章 计算机的运算方法数据表示运算方法运算部件The data types found in the registers of digital computers may be classified as being one of the ...

第2讲数据表示
nullnull计算机组成原理Principles of Computer Organization广义双语教学课程http://211.64.192.109/skyclass25/青岛理工大学 校级精品课程http://jx.qtech.edu.cn/ec/C84/null第6章 计算机的运算方法数据表示运算方法运算部件The data types found in the registers of digital computers may be classified as being one of the following categories: (1) numbers used in arithmetic computations, (2) letters of the alphabet used in data processing, and (3) other discrete symbols used for specific purposes. All types of data (plural of "datum"), except binary numbers, are represented in computer registers in binary-coded form.null§6.1 无符号数和有符号数计算机中的数据信息可划分成两大类:数值数据和非数值数据数值数据表示数的大小,有确定的值。非数值数据一般用来表示符号、文字或逻辑变量等,没有值。无符号数Unsigned Number浮点数原码表示法反码表示法补码表示法移码表示法符号文字逻辑变量声音图象视频null无符号数和有符号数 无符号数是把所有的数位都用来表示数据的数值,通常作为正数处理。n位无符号的纯整数,其表示范围为0 ~(2 n-1)。Because of hardware limitations computers must represent everything with 1’s and 0’s, including the sign of a number. Positive integers, including zero, can be represented as unsigned numbers. However, to represent negative numbers, we need a notation for negative values. In ordinary arithmetic, a negative number is indicated by a minus sign and a positive number by a plus sign. It is customary to represent the sign with a bit placed in the leftmost position of the number. The convention is to make the sign bit equal to 0 for positive and to 1 for negative.null机器数和真值 一个数在机器中的表示形式叫做机器数,而把这个数本身叫做该机器数的真值。 例如,01101011 和 10010001 分别是真值 +1101011B 和 -10001B的机器数。 带符号的机器数的编码方法有原码表示法,反码表示法和补码表示法。此外,浮点数的阶码还可采用移码表示法。真值机器数X[X]原[X]反[X]补+0.11010110.11010110.11010110.1101011-0.11010111.11010111.00101001.0010101§6.1.2 有符号数null数的定点表示与浮点表示 数值数据的小数点在计算机中并不数码化,而采用两种指定小数点位置的方法:定点表示法(Fixed-Point Representation),即小数点的位置是固定不变的,这样表示的数称为定点数。浮点表示法(Floating-Point Representation),即小数点的位置不是固定的,而是根据需要浮动的,这样表示的数称为浮点数。The position of the binary point is needed to represent fractions, integers, or mixed integer-fraction numbers. The representation of the binary point in a register is complicated by the fact that it is characterized by a position in the register. There are two ways of specifying the position of the binary point in a register: by giving it a fixed position or by employing a floating-point representation.null定点表示法 Fixed-Point RepresentationThe fixed-point method assumes that the binary point is always fixed in one position. The two positions most widely used are(1) a binary point in the extreme left of the register to make the stored number a fraction, and(2) a binary point in the extreme right of the register to make the stored number an integer.定点小数计算机约定小数点的位置隐含在符号位之后,最高数值位之前。定点整数计算机约定小数点隐含在最低数值位的右边。 采用定点表示法的计算机称为定点机。null定点数的表示范围 定点数可表示的数值范围取决于采用的是原码,补码或反码表示。如果机器数超出定点数所能表示的最大值,称为“溢出”或上溢;发生溢出Overflow时就有运算出错。如果小于定点数所能表示的最小值,称为“下溢” Underflow。In either case, the binary point is not actually present, but its presence is assumed from the fact that the number stored in the register is treated as a fraction or as an integer.An overflow is a problem in digital computers because the width of registers is finite. Many computers detect the occurrence of an overflow, and when it occurs, a corresponding flip-flop is set which can then be checked by the user.null原码表示法 Signed-Magnitude Representation对于n+1位的原码,其最高一位是符号位,其余n个数位是数值的绝对值。 (1) 小数的原码表示定义:(2) 整数的原码表示定义:例1:X1=+0.01101[X1]原=0.01101X2= -0.01101[X2]原=1.01101例2:X3=+101110[X3]原=0101110X4= -101101[X4]原=1101101N=5N=6null原码表示法 Signed-Magnitude Representation小数的原码表示整数的原码表示 (3) 零的原码表示真值零的原码表示有正零和负零两种表示形式。 小数: [+0]原=0.00……0, [-0]原=1.00……0 整数: [+0]原=000……0, [-0]原=100……0(4) 原码表示的数值范围n+1位原码小数能表示的数的范围:+(1-2-n)~-(1-2-n)n+1位原码整数能表示的数的范围是:+(2n-1)~-(2n-1)n+1位原码只能表示2n+1-1个数null反码表示法 Signed-1’s complement Representation(1) 小数的反码表示定义: (2) 整数的反码表示定义:正数的反码表示与原码表示相同。负数的反码表示是符号位为1,其余数位逐位变反,0变1,1变0。例3:X1=+0.01001[X1]反=0.01001X2= -0.01001[X2]反=1.10110N=5例4:X3=+101010[X3]反=0101010X4= -101101[X4]反=1010010N=6null反码表示法 Signed-1’s complement Representation小数的反码表示整数的反码表示(3) 零的反码表示真值零的反码表示也有正零和负零两种表示形式。 小数: [+0]反=0.00……0, [-0]反=1.11……1 整数: [+0]反=000……0, [-0]反=111……1反码表示的数值范围与原码相同:n+1位反码只能表示2n+1-1个数null补码表示法 Signed-2’s complement Representation1.模和同余 一个计量器的容量或一个计量单位叫做模数(Module),简称模,记作M或mod。一个n位的二进制计数器的模是2n。 对于两个整数a、b,若用某一正数M去除,所得的余数相同,则称a、b对模M是同余的。当a、b对模M同余时,就称a、b在以M为模时是相等的,记作 a=b (mod M)。可推出,a+M=a (mod M)当a为负数时,例如a=-2 例如,a=14,b=24,M=10,则用10去除a和b,余数都是4,所以14和24在以10为模时是同余的,记作 14=24 (mod 10)。a+2M=a (mod M)当a=0时,有0=M (mod M)。-2+10=-2 (mod 10) 8=-2 (mod 10)null2.小数的补码表示定义:实际上,二进制纯小数的模是1,但如果把符号位也算作一位数时,模就是2。所以,无论X是正数还是负数,[X]补=2+X 都成立。3.整数的补码表示定义:例5:X1=+0.01001[X1]补=0.01001X2= -0.01001[X2]补=1.10111N=5例6:X3=+101010[X3]补=0101010X4= -101100[X4]补=1010100N=6对于任意一个数X,[X]补=X+M (mod M)。null小数的补码表示整数的补码表示4.零的补码表示零的补码只有一种形式小数: [0]补= 0.00…0 整数: [0]补= 0000…05.补码表示的数值范围小数: +(1-2-n)~-1, 1.0>X≥-1.0整数: +(2 n-1)~-2 n , 2 n>X≥-2 nn+1位补码可表示2n+1个数。补码表示法 Signed-2’s complement Representationnull8位二进制整数补码能表示的范围是-128~+127。 注意,小数-1.0的补码是1.0000000,整数-128的补码是10000000,-2 n的补码是100…00,这些数是原码所不能表示的。已知真值求补码的方法: 正数的原码、补码和反码的形式是相同的,可根据其真值直接写出原码、补码和反码。负数,先求出其反码,然后在最低位加1即可。已知X的补码求其真值的方法与由真值求补码的方法相同, 即“正数不变,负数除符号位外逐位变反再在最低位加1”。 在计算机中,通常采用补码进行加减法运算,这是因为补码加减法运算的规则简单,无需判断符号和绝对值大小,而且符号位与数值部分一同运算。8位二进制小数补码能表示的范围是-1.0~ +(1-2-7)null移码表示法定义:[X]移=2n+X -2n≤X<2n 移码(Biased Exponent)就是在真值X上加一个常数2n,相当于X在数轴上向正方向平移了2n个单位。常数2n称为偏置值。移码又称为增码、偏码与补码的定义比较:当0≤X<2n时,[X]移=2n+X = 2n+[X]补 当-2n≤X<0时,[X]移=2n+X=(2n+1+X)-2n = [X]补-2n 移码表示和补码表示的符号位正好相反,正数移码的符号位为1,负数移码的符号位为0。除符号位相反外,其它各位相同。因此,只要把[X]补的符号位变反,即得[X]移。null例:X1=+10101[X1]补=[X1]移=(N+1=6)X2= -100000[X2]补=[X2]移=移码的特点:① 最高位为符号位,1表示正,0表示负。移码的表示范围与补码相同,n+1位移码可表示2n+1个数。② 移码为全0时对应的真值最小(绝对值最大的负数);全1时对应的真值最大。移码直观地反映了真值的大小。③ 真值零的移码表示形式唯一。[+0]移=[-0]移=100……0。④ 移码把真值映射到一个正数域,可看作无符号数。在浮点运算中,可以象比较无符号数一样比较两个用移码表示的阶码的大小。⑤ 同一数值的移码和补码除符号位相反外,其它各位相同。010101110101100000000000null移码、补码、原码和真值对照表真值X [X]原码 [X]补码 [X]移码 +127 … +1 +0 -1 … -127 -128 -0 01111111 … 00000001 00000000 10000001 … 11111111 — 1000000001111111 … 00000001 00000000 11111111 … 10000001 10000000 0000000011111111 … 10000001 10000000 01111111 … 00000001 00000000 10000000(N+1=8)null§6.3.1 移位运算 移位(Shift)是计算机中的一种基本操作,各种计算机的指令系统都设置有移位操作命令。移位操作可分成两大类,逻辑移位和算术移位。在逻辑移位中,只有数码位置的变化而无数量概念的变化。无论是数值数据还是非数值数据,在逻辑移位时都看作一串代码。在算术移位中,应保持数据的符号不变,只改变数据的值。如果不产生溢出,数据左移一位相当于乘2;数据右移一位相当于除以2。可利用移位操作实现乘以或除以2(或2的整数次幂)的运算。无符号数的算术移位没有保持符号的问题,可用逻辑移位实现。当数据以原码、补码或反码表示时,算术移位的规则有所不同。原则是必须保持真值正确。一、逻辑移位和算术移位null二、 补码表示的数的移位规则①左移 尾数部分逐位左移一位,最高有效位MSB移入符号位,最低位LSB补0。②右移 符号位保持不变,尾数部分逐位右移一位,最低有效位LSB移出舍去,符号位移入MSB。 如果移位后符号位改变,表明发生溢出,这在算术移位中是不允许的。Most Significant bitLeast Significant bitnull三、 原码表示的数的移位规则①左移对于原码表示的正数,移位规则为:对于原码表示的负数,移位规则为: 尾数部分逐位左移一位,最高有效位MSB移入符号位,最低位LSB补0。如果移位后符号位改变,表明发生溢出。 尾数部分逐位左移一位,最高有效位MSB移出后变反移入符号位,最低位LSB补0。如果移位后符号位改变,表明发生溢出。null②右移 符号位保持不变,尾数部分逐位右移一位,最低有效位LSB移出舍去,最高位MSB补0。三、原码表示的数的移位规则null四、 反码表示的数的移位规则①左移对于反码表示的正数,移位规则为:对于反码表示的负数,移位规则为: 尾数部分逐位左移一位,最高有效位MSB移入符号位,最低位LSB补1。如果移位后符号位改变,表明发生溢出。 尾数部分逐位左移一位,最高有效位MSB移入符号位,最低位LSB补0。如果移位后符号位改变,表明发生溢出。null②右移四、反码表示的数的移位规则 符号位保持不变,尾数部分逐位右移一位,最低有效位LSB移出舍去,符号位移入MSB。nullHomework6 - 1, 2, 3, 4, 5, 7 , 9 , 17思考 6- 6, 10, 18本课程在9月17日和20日各停一次课null今日要点1、无符号数和带符号数2、机器数和真值3、定点表示法4、原码表示法5、补码表示法6、移码表示法7、移位
本文档为【第2讲数据表示】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_209677
暂无简介~
格式:ppt
大小:236KB
软件:PowerPoint
页数:0
分类:理学
上传时间:2011-12-01
浏览量:22