一章数制与编码.ppt

上传人:本田雅阁 文档编号:3247457 上传时间:2019-08-05 格式:PPT 页数:49 大小:472.04KB
返回 下载 相关 举报
一章数制与编码.ppt_第1页
第1页 / 共49页
一章数制与编码.ppt_第2页
第2页 / 共49页
一章数制与编码.ppt_第3页
第3页 / 共49页
一章数制与编码.ppt_第4页
第4页 / 共49页
一章数制与编码.ppt_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《一章数制与编码.ppt》由会员分享,可在线阅读,更多相关《一章数制与编码.ppt(49页珍藏版)》请在三一文库上搜索。

1、第一章 数制与编码,前言,认识数字逻辑 数字逻辑,即数字电路逻辑设计。是计算机专业硬件课程的基础课程。学好该课程,可为以后学习计算机组成原理、微机原理、系统结构等计算机核心课程打下坚实基础。 模拟量:连续变化的物理量,如声音、速度、温度等。 数字量:间断变化的物理量,如电子表。 讲述内容 应用数字电路进行数字系统逻辑设计的方法。分为“分析”与“设计”。 第一、二章为基础知识,第三、四、五章为本书重点,第六章为应用。其余章节为选讲章节。,数制及其转换 带符号数的代码表示 数的定点表示与浮点表示 数码和字符的代码表示,数制及其转换,1.数制 1.1 概念 基数:每个进位制的符号个数,及进位规则。

2、权:某一进位制中各位“1”所表示的值为该位的权。 例如:十进制数,基数为10 ,第i位权值为10i-1 推广:R进制数,基数为R,第i位权值为(R)i-1,表示方法(X)R,1.2 二进制数及其运算规则 二进制数即基数为 2,计数规则为“逢二进一”。 (1)加法规则:0+0 = 0 0+1 = 1 1+0 = 1 1+1 = 0(有进位) (2)减法规则:0 - 0 = 0 0 1 = 1(有借位) 1- 0 = 1 1- 1 = 0 (3)乘法规则:00 = 0 01 = 0 10 = 0 11 = 1 (4)除法规则:01 = 0 11 = 1,例1. 计算1101+1011 1 1 0

3、1,10,+ 1 0 1 1,10,10,11,1,0,- 1 0 0 1 1,例2. 计算11101 10011 1 1 1 0 1,1,1,0,1,0 0 0 0,1 1 0 1,1 1 0 1,1 1 0 1,1 0 1 1,1 1 1 0,1,1 0 1 1,1 1 0 1,1 0 1 1,1 0,0,1,1,(2)多项式表示法 (N)R=(An-1Rn-1+ An-2Rn-2+A0R0+A-1R-1+A-2R-2+A-mR-m)R n-1 =(AiRi) (其中,n为整数位数,m为小数位数,R为基数,0AiR-1) 如(27)10=(2101+7100)10=(124+123+022

4、+121+120)2 =(1161+10160)16,i=-m,1.3 表示方法 (1)并列表示法 (N)R=(An-1An-2A1A0.A-1A-2A-m)R 如:(27)10=(11011)2=(1B)16,2. 数制转换 (1)二进制数到十进制数 方法:按权值展开法 (1011)2=123+022+120=8+2+1=(11)10 (2)十进制数到二进制数 方法:整数部分,除2取余;小数部分,乘2取整,例1:将(693)10转换成二进制数,由于是整数,用除2取余法,即用整数部分不断去除2,并记下每次的余数,直到商为0为止。余数从下至上即为转换结果。,693 余数,2 346 1,2 17

5、3 0,2 86 1,2 43 0,2 21 1,2 10 1,2 5 0,2 2 1,2 1 0,2 0 1,(639)10=(1010110101)2,练习:(73)10 转换为二进制数。,73 余数 2 36 1 18 0 2 9 0 4 1 2 2 0 1 0 (73)10=(1001001)2 0 1,十进制整数转换为R进制数用“除基取余”法。,例2:将十进制数0.625转换为二进制数。,用小数部分连续与 2 相乘,并记下乘积的整数部分,直到结果小数部分为 0 ,或精度达到要求为止。所得整数部分从上至下即为转换结果。,0.625 整数, 2,.250 1, 2,.500 0, 2,.

6、000 1,(0.625)10=(0.101)2,练习:将(0.364)10转换为二进制数,结果保留4位小数。,0.364 整数 2 .728 0 2 .456 1,0.456 整数 2 .912 0 2 .824 1,(0.364)10=(0.0101)2,十进制小数转换为R进制数用“乘基取整”法。 总结:十进制数转换为R进制数,整数部分用除基取余法,小数部分用乘基取整法。,练习:将(685.235)10转换为十六进制数。(保留3位小数),整数部分 685 余数 16 42 D 2 A 0 2,小数部分 0.235 整数 16 .760 3 16 .216 1 16 .456 3,(685.

7、235)10=(2AD.313)16,(3)二进制数与八进制数、十六进制数之间的转换。 方法:直接转换法。 3 位二进制数与 1 位八进制数一一对应,4 位二进制数与 1 位十六进制数一一对应。 对于十六进制数,整数部分将二进制数从右到左以4位为一组分成若干组,最后一组不足4位在高位补 0 ;小数部分将二进制数从左到右以4位一组分成若干组,最后一组不足4位在右端补 0 。按一一对应关系即可转换。,例2:(1)将(11001011011.11001)2 转换成十六进制数。 (2)将(734.25)8 转换成二进制数。 (0110 0101 1011.1100 1000)2=(65B.C8)16

8、(734.25)8=(111 011 100.010 101)2,总结: 整:除2取余,小:乘2取整 十 二 按 按权展开 权 乘/除 直接转换 展 16法 开 十六,带符号数的代码表示,1.真值与机器数 真值:在算术运算中,用“+”“-”符号表示正、负的数据。 机器值:与真值相对应,且便于计算机识别处理的数据。一般用“0”表示“+”,用“1”表示“-”。 一个n位的带符号二进制机器数bn-1bn-2b1b0,最高位bn-1为符号位,bn-2bn-3b1b0为数值位。 表数范围:- 2n-1 2n-1,2.三种机器数 2.1原码 机器数原码表示,最高位是符号位,0表正号,1表负号 , 以下各位

9、是数值的绝对值。X原= 符号位 + |X| 原码表示中,0有两种形式:+0原=000 - 0原=100,原码表示的特点 优点:与数的真值之间的对应关系简单;用原码实现乘除 运算规则简单。 缺点:减法运算的实现不方便。,2.2 反码 最高位为符号位,其余为数值位。 正数:反码形式同原码形式; 负数:符号位为1,数 值位为原码的数值按位取反。 反码中0有两种形式:+0反=0000 - 0反=1111 反码运算不方便,一般不用。,2.3 补码 最高位为符号位。 正数的补码形式同原码形式,负数补码符号位为1,数值位为 原码数值位各位取反,再末位加1(即反码加1)。 补码中0只有一种形式:+0补=- 0

10、补=0000。 - 1补=1000。 对于负数,若已知补码求原码,末位减1,再按位求反。 补码便于减法运算。,总结: (1)当真值X为n位整数时,机器数X原、X反、X补都为n+1位的数,可为字长为n+1位的计算机所表示。 (2)当真值X为正时,X原、X反、X补最高位都等于0,X为负时,其最高位均为1。 (3)当X为正值时,X原、X反、X补的数值位均与真值完全相同;当X为负值时,数值位:X原保持X的原样,X反是各位取反,X补是各位取反末位加1。 (4)当X为0时,X原和X反有两种形式,X补只有一种形式。,例1:已知X = +101101,Y = - 101101,分别求二数的原码、反码、补码。,

11、X原=X反=X补 = 0101101,Y原 = 1101101 Y反 = 1010010 Y补 = 1010011,例2:已知X原 = 1110001,Y补 = 1110001,求X,Y。,X = - 110001,Y反 = 1110000,Y原 = 1001111,所以,Y = - 001111,练习: 1、设真值X为- 24X24,写出下列真值的原码、反码和补码。 +1010 +1111 - 1010 - 0000,2 、写出下列机器数对应的真值 X1原 = 11011 X2反 = 11011 X3补 = 11011 X4原 = 00000 X5反 = 01111 X6补 = 01000,

12、X1 = - 1011,X2 = -0100,X3 = - 0101,X4 = +0000,X5 = +1111,X6 = +1000,3. 机器数的加、减运算 3.1 原码运算 运算规则:符号相同(同号相加或异号相减),直接相加,符号不变;符号相异(异号相加或同号相减),符号与绝对值较大值保持一致,值为两数相减的结果。符号不参与运算。,例. X = +1101,Y = - 0110,求 X+Y 与 X Y 的值。,分析:X+Y为异号相加,属符号相异情况,所以需比较两数绝对值。 X Y 为异号相减,属符号相同情况,直接相加。,解: X + Y 原 = 0 0111 X Y 原 = 0 0011

13、,用原码做加、减运算时,若符号相异,需比较其绝对值的大小关系。,3.2 反码运算 运算规则:X+Y反 = X反+Y反 X Y反= X反+-Y反 用反码进行运算时,减法运算可转换为加法运算。运算时,符号位和数值位一样参与运算,如果符号位产生了进位,则此进位 应加到和数的最低位,称之为“循环进位”。,解:X+Y反 = X反+Y反 = 00110+11101,0 0 1 1 0,+ 1 1 1 0 1,1 0 0 0 1 1,0 0 1 0 0,X Y反 = X反+- Y反 = 00110+00010 =01000 (+1000),用反码进行加减运算时,不需考虑两数的大小关系,但有最高位进位时,需“

14、循环进位”。,= 00100 (+0100),例1. X = +0110,Y = - 0010,求X+Y反、X Y反。,3.3 补码运算 运算规则:X+Y补 = X补+Y补 X Y补=X补+-Y补 用补码进行运算时,减法运算可转换成加法运算。符号位和数值位一样参与运算,如果符号位产生进位,则将此进位丢掉。,例2. X = +0110,Y = - 1010,求 X+Y补,X Y补。,解:X+Y补 = X补 +Y补 先求X补,Y补:X补 = 00110,Y补 = 10110,= 00110+10110 =,0 0 1 1 0,+ 1 0 1 1 0,1 1 1 0 0,11100,X Y补 = X

15、补+- Y补 =,00110+,- Y补 = +1010补 = 01010,01010,= 10000,结论:用补码做减法运算,既不需要绝对值比较,也不需要循 环进位,所以用补码做减法运算最简单。,练习:X = +0110,Y = - 1000,求 X+Y、X Y。,X+Y补 = X补+Y补,= 00110+11000,= 11110,所以,X+Y = - 0010,X Y补 = X补+- Y补,- Y补 = +1000补 = 01000,= 00110+01000,= 01110,所以,X Y = +1110,数的定点表示和浮点表示,数的按值表示,1. 定点表示 定点表示法,就是计算机中数的

16、小数点位置是固定不变的。 (1)机器中小数点不是由实际设备保存,只是一个约定的假想位置。 (2)对于字长为n的计算机表示带符号数时,最高位bn-1为符号位,bn-2b0为数值位。 (3) 小数点位置约定在最高位之前时,表示定点小数。 (-1 S 1) 小数点位置约定在最低位之后时,表示定点整数。 (- 2n-1 S 2n-1) 表示既有整数又有小数部分的数时,需事先选取一个 “比例因子”(2i),然后可用定点小数或定点整数表示。,(3)用浮点表示时,一个字的格式为 字长 = n+m+2,浮点表示中,基数默认为2, 所以无需表示。,(2)浮点表示源于“记阶表示法”,如:十进制数 5678 = 0

17、.5678104 0.005678 = 0.567810-2,2. 浮点表示,(1)浮点表示就是在计算机中数的小数点位置不是 固定的,而是浮动的。,(5)浮点数的规格化 浮点表示的数,其尾数部分用纯小数形式给出,且当尾数不为0时,其绝对值应大于或等于0.5(即小数点后第一位必为“1”)。若不符合,应通过修改阶码,并左右移动尾数实现。可节省存储空间,避免有效数字丢失。 (6)浮点表示与定点表示的比较 同一字长下,浮点表示法所能表示的数值范围较大。,以16位字长为例,浮点表示法的表数范围如下:,定点表示法的表数范围如下:,Sf,15 14 1 0,最小 0 0 1 最大 1 1 1 即 2-15

18、(1 2-15),同一字长下,定点表示法所能表示的有效数字位数较多。,数码和字符的代码表示,用二进制码来表示数字或字符 1. 十进制数的常用代码 BCD码(Binary Code Decimal)用二进制代码表示十进制数 的一种编码 。四位二进制代码可表示一位十进制数其组合有剩余,所以可有多种编码方案。,1.1 8421码(有权码) 用4 为二进制数表示一位十进制数,从左到右权值依次为8、4、2、1。,特点:排列规律自然,对应关系唯一。不允许出现1010,1011,1100,1101,1110,1111等六个代码。,1.2 2421码 (有权码) 用4 为二进制数表示一位十进制数,从左到右权值

19、依次为2、4、2、1。,特点:由于有两位权值都为2,所以编码方案不唯一。 2421码是对9 的补数,即每个代码取反后与原代码和为9。,1.3 余3码(无权码) 余3码由8421码加3所得。,特点:余3码也是一种对9互补的代码。,2. 可靠性编码 在代码的形成和传输过程中出现错误时,易于发现和矫正或可以避免错误的发生的代码称为可靠性编码。,2.1 格雷码 在一组数的编码中,任意两个相邻数的代码只有一位二进制数不同的编码。,可有多种编码方案,它所代表的数递增时,不会发生粗大错误。,2.2 奇偶校验码,由若干信息位加一位校验位生成,校验位的取值使整个代码中“1”的个数位奇数或偶数。,特点: 1.具有

20、发现一位错的能力,当存取过程中出现两位错时无法检验;,2.不能确定具体出错位的位置;,3.需要奇偶校验位形成电路和检测电路。,十进制数的补数,一、.对9 的补数 1.规则:正数符号位为0,数值位为十进制数本身 负数 N9补=10n-10-m+N (其中n是十进制数N整数位数+1,m是N小数的位数),例.89549补= -32509补= -25.6399补=,105-1-3250,08954,103-10-3-25.639,= 96749,= 974.360,2.运算 N1-N29补=N19补+-N29补 注:需要循环进位。,例. N1=5489,N2=3250,求N1-N2。,解: N1-N2

21、9补=N19补+-N29补,=05489+96749,=02239,二、对10的补数,1.规则 正数 符号位为0,数值位为十进制数本身 负数 N10补=10n+N ( 其中,n为N的位数+1。),2.运算 N1-N210补=N110补+-N210补 注:不需要循环进位。,例. N1=72532,N2=33256,求N1-N2。,解: N1-N210补=N110补+-N210补,=072532+966744,=39276,1.实现下列机器数间的转换 (1)x原=10110,求x反; (2)x反=10110,求x补; (3)x补=10110,求x原。 2.已知x原=01101,y原=10101,将x,y转换成补码,求 x+y,再将结果转换成原码。 3.完成下列代码间转换 (100000111001.01110101)8421=()10 (1011001111001001)余3=()2421 (752.18)10=()余3 4.确定下列二进制代码的偶校验码 1010101 , 100100100,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1