第二章、计算机数据表示方法内容摘要:

er 非零 1xxxx 255 0/1 表示 尾数 阶码 符号位 51 IEEE754 规格化 浮点数表示范围 Emax=2046, f=… ,… 1 220461023 =21023 (2252) Emin=1, M=0, 211023 =21022 双精度 Emax=254, f=… , … 1 2254127 = 2127 (2223) Emin=1, M=0, 21127 = 2126 单精度 最大值 最小值 格式 52 一个奇怪的程序 main() { double a,b,c。 int d。 b=。 c=。 a=b/c。 d=b/c。 printf(%f,%d,a,d)。 if (!=a) printf(\nReally? !a)。 } ,2 ?????????? Really?!=a 二进制存储 浮点数不是精确数 53 一个奇怪的程序 main() { float a,b,c。 int d。 b=。 c=。 a=b/c。 d=b/c。 printf(%f,%d,a,d)。 if (!=a) printf(\nYeah!)。 } ,2 54 数值数据表示方法 计算机数值数据表示的特点 进位制数 数的定点、浮点表示 机器数 55 机器数 /机器码  真值 (书写用 )  将用 + 表示正负的二进制数称为符号数的真值  机器不能识别书写格式,计算机如何表示负数。  机器码 (机器内部使用 )  将符号和数值一起编码表示的二进制数称为机器码  原码 Signed magnitude 反码 One’ s plement  补码 Two’ s plement 移码 Biased notation 56 原码表示法( Signed magnitude)  计算机如何表示数的正负 ?  增加符号位 Add a sign bit  最高位为符号位, 0为正, 1为负,数值位不变 57 原码表示示例  [+0]原 =… 0  [0]原 =1. 000… 0  []原 =  [ ]原 =  [ 1110]原 = 01110  [1110]原 = 11110 58 [X] 原 = X 0≤X2n 2n- X 2n X ≤ 0 [X] 原 = X 0≤X1 1 X 1 X ≤ 0 求值方法 x = (1)X0( x12n1 + … + xn12 +Xn) 求值方法 x = (1)X0( x121 + … + xn12(n1) +Xn2n) 原码表示法 59 原码在数轴上的表示 数值 0 0 7 7 15 7 编码  7~+7 7个正数, 7个负数,两个零  (2(n1) 1) ~2(n1) 1 60 Signed Magnitude  Both positive and negative zero  Equal number of positives and negatives  Easy to interpret  First bit is the sign  Remaining bits are number  Sounds ideal? But…  01011001+11001101=??? 61 Signed Magnitude? 010110012 = 8910 + 110011012 = 7710 001001102 = 3210 If signs are different sign of result will be sign of larger operand 62 Shortings of signed magnitude?  Arithmetic circuit plicated  Also, two zeros  0x00000000 = +0ten  0x80000000 = –0ten  What would two 0s mean for programming?  Therefore sign and magnitude abandoned 63 反码表示法 所谓反码 ,就是二进制的各位数码取反 符号位表示方法与原码相同  Example: 710 = 001112 ; 710 =110002  Called One’s Complement 64 反码 0的表示  [+0]反 =… 0  [0]反 =… 1  []反 =  []反 =  [1110]反 =01110  [1110]反 =10001 65 反码公式证明  1x=0时  假设 x=… xn  假 [x]反 = … xn  [x]反 +|x|=… 1 =… 1+… … 1 =… … 1 =22n  [x]反 =22n|x|=22n+x 66 反码公式证明  2nx=0时  假设 x= x1x2… xn  假设 [x]反 = 1x1x2… xn  [x]反 +|x|= 111… 1 = 111… 1+000… 1000… 1 = 1000… 0000… 1 = 2n+11  [x]反 = 2n+11 |x|= 2n+11 +x 67 [X] 反 = X 0≤X2n 2n+1- 1+X 2n X ≤ 0 [X] 反 = X 0≤X1 2 2- n+X 1 X ≤ 0 求值方法 ([X]反 = x0x1 … xn1 Xn) x = x0( 2n 1) + x12n1 + … + xn12 +Xn 反码表示法 … 68 反码在数轴上的表示 数值 7 15 7 7 0 0 编码  7~+7 正数 7个,负数 7个,零两个  (2n 1) ~2n 1 69 原码 amp。 反码 数值 0 0 7 7 15 7 编码 数值 7 15 7 7 0 0 编码 70 Shortings of One’s plement?  Arithmetic still a somewhat plicated.  Still two zeros  0x00000000 = +0ten  0xFFFFFFFF = 0ten  Although used for awhile on some puter products, one’s plement was eventually abandoned because another solution was better. 71  3与 1 9等效 有趣的时钟 12 3 6 9 12 3 6 9 12 3 6 9 72 同余的概念  假定有两个数 a和 b,若用某一个整数 m去除,所得的余数相同,就称 a,b两个数对 m同余 ,记作: a≡b (mod m)  假设 X,Y,Z三个数,满足下列关系: Z=nX+Y (n为整数 ),则称 Z和 Y对模 X是同余的,记作: Z≡Y (mod X) Y≡Z (mod X) 73 例子  Z=nX+Y X为模数  以 12为模  3=12+3=24+3=36+3  3, 15, 27, 39 都是相等的  9=129=3  9与 3是相等的  0=12 74 例子(减法变成加法)  7+(4)  =7+(12。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。