数据信息的二进制表.ppt_第1页
数据信息的二进制表.ppt_第2页
数据信息的二进制表.ppt_第3页
数据信息的二进制表.ppt_第4页
数据信息的二进制表.ppt_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

1、第一章 数据信息的二进制表示,数字系统逻辑设计 Digital System and Logic Design,主编:王维华、曲兆瑞,山东大学出版社,主讲人:李 新 山东大学 计算机科学与技术学院,2,内容提要,1.3 定点数和浮点数,1.2 带符号的二进制数表示,1.1 进位记数制,1.5 校验码,1.4 编码,3,进位记数制是按一定的规则和符号表示数量的方法 生活中的数制 六十进制: 1小时=60分, 1分=60秒 十二进制: 1英尺=12英尺,1年=12月 十进制:符合人们的习惯, 10 =,1.1 进位记数制,4,进位记数制三要数:数码、基数、位权 数码:每个数位上允许的数的集合 基数

2、:进制中允许每个数位上选用基本数码的个数 位权:数码“1”在不同数位上代表的数值例如:十进制 数码:0 - 9十个数码 基数:10,逢十进一,借一当十 位权:第i位的权值为10i (143.75)10=1102+4101+3100+710-1+ 510-2任意十进制数 N=di10i,1.1.1 进位计数制的基本概念,5,任意r进制数 (N)r=qnRn+qn-1Rn-1+q0R0+q-1R-1+q-2R-2+q-mR-m =qiRi (qi为0,1,r-1中的一个数)其中:R 基数 qi 第 i 位的系数(N种数码) Ri 第 i 位的权,6,1 二进制 Binary (5bainEri)

3、例如: (1001)2 1001B2 八进制 Octal 5Cktl 例如: (317)8 317Q 3 十六进制 Hexadecimal (heksE5desIm(E)l) 例如: (9A1)16 9A1H 4 十进制 Decimal(5desimEl) 例如: (531)10 531D,1.1.2 数字系统中常用的数制,7,(1)二进制 Binary 数码:0和1两个数码 进位规则:逢二进一例如:(101.11)2 =122+021+120+121+122 = (5.75)10 任何二进制数 D=Ki 2i表示范围:?,1.1.2.1 二进制,0(2n-1),8,(被加数) 1 0 1 0

4、 1 1 0 1 + (加数) 0 0 1 1 1 0 0 1 (进位) 1 1 1 1 (和) 1 1 1 0 0 1 1 0,运算过程:,(被减数) 1 0 1 0 1 1 0 1 (减数) 0 0 1 1 1 0 0 1 (借位) 1 1 1 (差) 0 1 1 1 0 1 0 0,9,数码:0,1,2,3,4,5,6,7 进位规则:逢八进一例如: (23.71)8=281+380+78-1+18-2 =(19.890625)10,(2) 八进制 Octal,10,(被加数) 1 0 1 0 1 1 0 1 + (加数) 0 0 1 1 1 0 0 1 (进位) 1 1 1 1 (和)

5、1 1 1 0 0 1 1 0,运算过程:,(被减数) 1 0 1 0 1 1 0 1 (减数) 0 0 1 1 1 0 0 1 (借位) 1 1 1 (差) 0 1 1 1 0 1 0 0,11,(3)十六进制数,特点:基数为16,有0-9和A(10)、B(11)、C(12)、D(13)、E(14)、F(15)共16个数码 逢16进一,借一当16 对于任意十六进制数 H=hnhn-1h0.h-1h-2h-m可以表示为: (H)16=hn16n+hn-116n-1+h0160+h-116-1+h-m16-m -m = bi16i i=n,举例: BF3CH=11163+15162+3161+1

6、2160 =114096+15256+316+121 =48956D,12,(4)不同进制表示16以内的数,13,1.1.3 数制之间的转换,非十进制数转换为十进制数 按权相加法:先将各位数码与权值相乘,再将各位的乘积值相加,得到十进制数 十进制数转换为任意进制数 整数小数分别转换 整数部分:除基取余法 小数部分:乘基取整法 转换举例 任意进制转为十进制 十进制转为其他十进制 二进制、八进制与十六进制互转,14,(1) 任意进制转换为十进制,转换方法: 按权相加法(掌握) 特点:比较直观,适于手算 逐次乘基相加法 特点:适合于编程实现,例:按权相加法 (1011)2=123+022+121 +

7、120 =(11)10,例:(0.1011)2=12-1+02-2+12-3+12-4 =0.5+0.125+0.0625 =(0.6875)10,15,(2a)十进制整数转换为二进制整数,十进制数转换成等值的二进制数。 转换方法: 除2取余法 P4(掌握) 减权定位法,117 余数, (117)10 = (1110101)2,2,58 1,2,29 0,14 1,2,2,2,7 0,3 1,2,1 1,2,例:(117)10=(?)2,0 1,或 117D = 1110101B,16,(2b)十进制小数转换为二进制小数,转换方法: 乘2取整法 P26(掌握) 减权定位法,注:1.若出现乘积的

8、小数部分一直不为“0”,根据计算精度的要求截取一定的位数即可; 2.一个十进制数不一定有对应的二进制数。,小数部分乘以2 整数部分 小数部分 0.6252=1.25 1 0.25 0.252=0.5 0 0.5 0.52=1 1 0,例:(0.625)10=(?)2,17,转换方法:分组转换(掌握),(3)二/八/十六进制数的互换,二进制-十六进制 原则:四位二进制对应一位十六进制 0011 0101 1011 1111 3 5 B F 0011010110111111B = 35BFH 十六进制-二进制 A 1 9 C 1010 0001 1001 1100 A19CH = 10100001

9、10011100B,18,作业,P26练习一 1、2、3、4、9,19,内容提要,1.3 定点数和浮点数,1.2 带符号的二进制数表示,1.1 进位记数制,1.5 校验码,1.4 编码,20,1.2 带符号数的二进制表示,真值 用正、负符号加绝对值表示的二进制数值 机器数 在计算机内部使用的、符号数码化的定长二进制数 计算机硬件能够直接识别、处理,例如: +9的真值:+1001 -9的真值:-1001,21,机器数的实现需要解决三个问题 进制:只能采用二进制 Why? 将符号为数字化 采用什么编码方法表示数值,22,带符号数的编码方式 原码表示(掌握) 反码表示 补码表示(重点),对于正数,三

10、种表示方式一样,其区别在于负数的表示,23,原码(true code)表示法:符号位 + 数值 (1)表示定点整数 P7 图 n位原码表示范围: -2(n-1)-1X2(n-1)-1,1.2.2 原码表示法,11111111 -(27-1),01111111 (27-1),0,例:n = 8bit +3原码 = 0 0000011 = 03H -3原码 = 1 0000011 = 83H +0原码 = 0 0000000 = 00H -0原码 = 1 0000000 = 80H,例如: n=8, 0 的表示不惟一,24,(2)表示定点小数 P8 图 范围: 正数部分 -(1-2-(n-1) -

11、(2- (n-1) ) 负数部分 (2- (n-1) ) (1-2- (n-1) ),1.2.2 原码表示法,例: X=+0.1011 X原=0.1011 X=-0.1011 X原=1.1011,1.1111111 -(1-2-7),0.1111111 (1-2-7),0,1.0000001,0.0000001,例如: n=8,25,1.2.2 原码性质,原码为符号位加数的绝对值,0正1负 符号和数值无关 0可分+0和-0 +0 为 000 -0为 100 用原码做加减运算比较复杂,但乘除方便 比较直观 电路设计时,需要对最高位和其他位分别处理,26,1.2.3 补码表示法,正数的补码: 同原

12、码 负数的补码:(1)写出与该负数相对应的正数的补码 (2)按位求反 (3)末位加一,补码(Twos Complement),27,例: 机器字长8位,- 46补码 = ? 46补码 = 0 0 1 0 1 1 1 0 1 1 0 1 0 0 0 1 1 1 0 1 0 0 1 0 = D2H 当机器字长16位,- 46补码 = FFD2H,按位求反,末位加一,2.由真值、原码转化为补码,特例:-128补=10000000B,+1补=00000001B,-1补=11111111B,求补规则: 正数的补码符号位为0,数值部分就是真值。 负数的补码符号位为1,数值部分可由真值的数值部分按位取反,末

13、位加一得到。,28,2. 由真值、原码转化为补码,例 若X原=1.1010,求X补,X补 = 1.0110,末尾加1 + 1,尾数变反 1.0101,X原 = 1.1010,29,0 0 0 0 0 0 0 0 取反 1 1 1 1 1 1 1 1 + 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0,例: +0补码 = 0 0 0 0 0 0 0 0 -0补码 = ?,0的补码, 补码中0 的表示惟一,- 0补码 = 0 0 0 0 0 0 0 0 = +0补码,进位,30,十进制 二进制 十六进制 十进制 十六进制 n=8 n=16 +127 0111 1111 7F +

14、32767 7FFF +126 0111 1110 7E +32766 7FFE . . . +2 0000 0010 02 +2 0002 +1 0000 0001 01 +1 0001 0 0000 0000 00 0 0000 -1 1111 1111 FF -1 FFFF -2 1111 1110 FE -2 FFFE . . . -126 1000 0010 82 -32766 8002 -127 1000 0001 81 -32767 8001 -128 1000 0000 80 -32768 8000,n位二进制补码整数的表数范围: - 2n-1 N 2n-1-1,补码比原码多表

15、示一个数!,31,提问:Java中Short类型的表示范围?,-32768+32767,32,X补 = 1.0110 尾数变反 1.1001 末位加1 + 1 X原= 1.1010 真值 -0.1010 =(-0.625)10,规则: 若补码的符号位为0,则真值为正,真值的数值部分等于补码的数值部分; 若补码的符号位为1,则真值为负,真值的数值部分由补码的数值部分取反加一得到。, 由补码求真值,例:X补 = 1.0110,求X原与真值,33,性质:X补 -X补 X补, 117补=01110101 对117求补: 取反得: 10001010 加一得: 10001011 -1 1110101 -1

16、17补= 10001011 对-117求补: 取反得: 01110100 加一得: 01110101,例:,求补运算 :对一个补码表示的机器数(可以是正数或负数),连同符号位一起按位变反后,在最低位加1.,求补,求补,3. 由x的补码求-x的补码,34,补码的运算:加法和减法,64 (-46) 18,+,0100 0000 1101 0010 0001 0010,+,例: X=64D, Y=46, 求X-Y,补码减法可转换为补码加法,因此加减法可以使用同一个电路实现,加法规则:X+Y补码 = X补码 + Y补码 减法规则:X-Y补码 = X补码 + -Y补码,35,补码的优势,满足(-x)+(

17、+x)=0 (-6)+(+6)=0110+1010=0000,0110,+1010,10000,36,反码(ones complement code)表示法 正数的反码同原码,负数的反码数值位与原码相反 例:n = 8bit +5反码 = 0 0000101 = 05H -5反码 = 1 1111010 = FAH +0反码 = 0 0000000 = 00H -0反码 = 1 1111111 = FFH 0 的表示不惟一,1.2.4 反码表示法,*反码不能直接进行两数的加减运算,37,小结,原码 0与0不归一; 8位原码表示数的范围为: -127 +127; 原码不能直接进行两数的加减运算 反码 0与0不归一; 8

温馨提示

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

评论

0/150

提交评论