《第1章 数制及编码优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第1章 数制及编码优秀PPT.ppt(78页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第1章 数制及编码教师:李军 Email:dpi_L现在学习的是第1页,共78页教师:李军 Email:dpi_L前言课程的地位学习方法几个概念数字逻辑电路的分类数字逻辑电路中研究的主要问题现在学习的是第2页,共78页教师:李军 Email:dpi_L1.课程地位及主要内容课程地位:是计算机硬件技术系列的基础主要内容数制和编码、逻辑代数集成门电路及触发器组合电路分析与设计、时序电路分析与设计、六次实验计算机系统结构计算机组成原理数字逻辑计算机系统的软硬件功能分配计算机系统的逻辑实现计算机组成的物理实现前言前言课程地位及主要内容 1学习方法几个概念 2 3嵌入式系统计算机应用现在学习的是第3页,
2、共78页教师:李军 Email:dpi_L2.学习方法计算机学科是实践性极强的学科,重视实践环节,多动手。掌握研究型的学习方法,学会独立思考。熟练掌握典型电路的分析方法和设计方法。作业和实验独立完成。成绩比例:10(平时)20(实验)70(期末考试)前言前言课程地位及主要内容 1学习方法几个概念 2 3现在学习的是第4页,共78页教师:李军 Email:dpi_L3.几个概念逻辑:研究概念、判断、推理以及相互联系的关于思维形式及其规律的科学。数字逻辑:用以二进制为基础的数字化技术解决逻辑问题。数字信号是在两个稳定状态之间作阶跃式变化的信号,有时又称为离散信号。它有电位型和脉冲型两种表示形式。电
3、位型是用信号的电位高低表示数字“1”和“0”;脉冲型是用脉冲的有无表示数字“1”和“0”。前言前言学习方法 2几个概念数字逻辑电路的分类 3 4现在学习的是第5页,共78页教师:李军 Email:dpi_L3.几个概念数字电路对数字信号进行传递、变换、运算、存储以及显示等处理的电路称为数字电路。数字电路不仅能对信号进行数值运算,而且具有逻辑运算和逻辑判断的功能,所以又称为数字逻辑电路,或者逻辑电路。数字系统是由实现各种功能的数字电路互相连接构成的整体,它能交互式地处理用离散形式表示的信息。例如,数字计算机就是一种最典型的数字系统。显然,数字系统的功能、规模均远远超出一般的数字逻辑电路。前言前言
4、学习方法 2几个概念数字逻辑电路的分类 3 4现在学习的是第6页,共78页教师:李军 Email:dpi_L4.数字逻辑电路的分类有许多种不同的分类方法,常用的分类方法包括:根据所使用的元器件分类双极型逻辑电路:使用双极型半导体作为元件。速度高,集成度低,功耗较大。包括TTL、ECL、HTL等。单极型逻辑电路:使用MOS管作为元件,速度低、集成度高、功耗小。包括CMOS、VMOS、DMOS等。根据电路的功能特点分类根据集成规模分类前言前言几个概念 3数字逻辑电路的分类逻辑电路研究的主要问题 4 5现在学习的是第7页,共78页教师:李军 Email:dpi_L4.1 根据电路功能特点分类根据数字
5、逻辑电路有无记忆功能,可分为组合逻辑电路和时序逻辑电路两类。逻辑电路组合逻辑电路时序逻辑电路同步时序逻辑电路异步时序逻辑电路前言前言几个概念 3数字逻辑电路的分类逻辑电路研究的主要问题4 5现在学习的是第8页,共78页教师:李军 Email:dpi_L4.1 根据电路功能特点分类组合逻辑电路:在任意时刻产生的稳定输出值仅仅取决于该时刻电路输入值的组合,而与电路过去的输入值无关。如:数字系统中常用的译码器、数据选择器等。时序逻辑电路:在任意时刻产生的稳定输出值不仅与该时刻电路的输入值有关,而且与电路过去的输入值有关。例如:数字系统中常用的计数器等。时序逻辑电路又可根据电路中有无统一的定时信号进一
6、步分为同步时序逻辑电路和异步时序逻辑电路。前言前言几个概念 3数字逻辑电路的分类逻辑电路研究的主要问题4 5现在学习的是第9页,共78页教师:李军 Email:dpi_L4.2 根据电路集成规模分类目前,数字系统中的各种逻辑部件都是采用数字集成电路芯片构成的,按照芯片集成度的高低分类,可分为:超大规模集成电路(VLSI)小规模集成电路(SSI)中规模集成电路(MSI)大规模集成电路(LSI)逻辑电路数字集成电路通常有两个系列:TTL 系列和 MOS 系列,在这两个系列中集成规模划分的标准是不同的。前言前言几个概念 3数字逻辑电路的分类逻辑电路研究的主要问题4 5现在学习的是第10页,共78页教
7、师:李军 Email:dpi_L4.2 根据电路集成规模分类类别集成度应用电路TTLMOS小规模1-1010-100通常为基本逻辑单元电路中规模10-100100-1000通常为逻辑功能部件大规模100-10001000-10000为一个小的数字系统超大规模100010000可构成一个完整的数字系统前言前言几个概念 3数字逻辑电路的分类逻辑电路研究的主要问题4 5现在学习的是第11页,共78页教师:李军 Email:dpi_L4.2 根据电路集成规模分类相关术语:TTL-Transistor-Transistor Logic 晶体管-晶体管逻辑电路。ECL:射极耦合逻辑电路HTL:高阈值逻辑电
8、路MOS-Metal-oxide semiconductor.金属氧化物半导体CMOS:互补MOSVMOS:V型沟道的MOSDMOS:双扩散MOSSSI-small scale integration MSI-middle scale integration LSI-large scale integration VLSI-Very large scale integration.前言前言几个概念 3数字逻辑电路的分类逻辑电路研究的主要问题4 5现在学习的是第12页,共78页教师:李军 Email:dpi_L5.逻辑电路中研究的主要问题是研究逻辑电路中输入信号与输出信号之间的逻辑关系。研究内容
9、主要分为两个方面:逻辑电路分析:是了解一个给定电路所实现的逻辑功能。逻辑电路设计:是根据实际问题提出的功能要求,构造出实现指定功能的电路。分析和设计逻辑电路的理论基础是逻辑代数。前言前言几个概念 3数字逻辑电路的分类逻辑电路研究的主要问题4 5现在学习的是第13页,共78页教师:李军 Email:dpi_L第一章 数制及编码进位计数制数的定点及浮点表示二进制的原码、反码、补码编码现在学习的是第14页,共78页教师:李军 Email:dpi_L1.进位计数制计数制概述进位计数制的定义不同进位制的特点不同进位制数之间的转换二进制的四则运算现在学习的是第15页,共78页教师:李军 Email:dpi
10、_L1.1 计数制概述通常,我们在表示一个数值时,可以采用两种不同的方法:按“值”表示:是在某种进位制中表示出正确的数值。按“形”表示:是按照一定的编码方法表示出数值。例如数值“正十五点三”:按值表示,在十进制中可表示为+15.3;按形表示:用美国信息交换标准代码表示为:2B 31 35 2E 33。我们先介绍按 值 表示的方法。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第16页,共78页教师:李军 Email:dpi_L1.2 进位计数制采用按“值”的方式表示一个数,要选择适当的数字符号并规定其组合规律。也就是要确定所选用的进位计数制。进位计数制:就
11、是一种按进位方式实现计数的制度,简称进位制。我们最常使用的进位制是十进制,它是逢十进一的。在计算机中,我们经常使用的进制还有二进制、八进制与十六进制等。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第17页,共78页教师:李军 Email:dpi_L1.3 不同进位制的特点81010008八771117七661106六551015五441004四33113三22102二1111一0000零十六进制八进制二进制十进制数值第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第18页,共78页教师:李军 Email:dpi_L 数
12、值十进制二进制八进制十六进制九91001119十10101012A十一11101113B十二12110014C十三13110115D十四14111016E十五15111117F十六16100002010十七171000121111.3 不同进位制的特点第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第19页,共78页教师:李军 Email:dpi_L1.3.1 进位制的基数不难看出,每种进位制都有一个基本特征数,被称为进位制的“基数”,基数表示了进位制所具有的数字符号的个数及进位的规则。显然,十进制的基数为“十”,二进制的基数为“二”,一般地,对R进制而言:
13、R进制的基数为“R”,由R个数字符号组成,进位规则为“逢R进一”。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第20页,共78页教师:李军 Email:dpi_L1.3.2 不同进制的书写表示十进制的S表示成:(S)10 如:十进制的132写成(132)10二进制的S表示成(S)2 如:二进制的1001写成(1001)2十六进制的S表示成(S)16如:十六进制的A1F写成(A1F)16R进制的S表示成(S)R 如(15)8、(2D)16等第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第21页,共78页教师:李军 Em
14、ail:dpi_L1.3.3 进位制数的权 在同一个进制中,不同位置上的同一个数字符号所代表的值是不同的。例如:1111.11十进制10310210110010-110-2二进制232221202-12-2为了描述进位制数的这一性质,定义某一进位制数中各位“1”所代表的值为该位的“权”。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第22页,共78页教师:李军 Email:dpi_L1.3.4 不同进制数的按权展开式 有了权这个概念后,我们就可以把一个数按权展开。例如:(192.43)10=1*102+9*101+2*100+4*10-1+3*10-2 (
15、1001.01)2=1*23+0*22+0*21+1*20+0*2-1+1*2-2一般地,在R进制中可有n为整数的位数,m为小数的位数,Ki为0R-1中的数,称为R进制第i位的“系数”R称为“基数”Ri称为R进制第i位的“权”。等式左端称并列表示法,右端称多项式表示法。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第23页,共78页教师:李军 Email:dpi_L1.3.5 不同进制的作用不同的进位计数制都可以表示数值,使用十进制是人类的习惯。在数字系统中,为了便于工程实现,广泛采用二进制。这是因为它表示的数可以用两个不同稳定状态的电子元件来表示,并且数
16、据的存储和传送也可用简单而可靠的方式进行。但二进制数书写不方便,为此常采用八进制和十六进制来书写或打印,因为它们与二进制的转换较容易。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第24页,共78页教师:李军 Email:dpi_L1.4 不同进制数之间的转换我们主要介绍如下几种进制之间的转换:二十进制之间的转换二八进制之间的转换二十六进制之间的转换第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第25页,共78页教师:李军 Email:dpi_L1.4.1 二进制数转换成十进制数二进制数转换成十进制数:采用“多项式替代
17、法”,如:(1010)2=1*23+0*22+1*21+0*20=(10)10 同理:其它进制也可以采用类似的方法转换成十进制,如:(2A.4)16=2*161+10*160+4*16-1=(32.25)10R十:将R进制数的各位在十进制中按权展开并计算,所得结果即为R进制数对应的十进制数。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第26页,共78页教师:李军 Email:dpi_L1.4.2 十进制数转换成二进制数 十进制数转换成二进制数分整数和小数分别转换,转换方法不同,我们分别介绍:十进制整数转换成二进制数采用除2取余法如(7)10=(?)22|
18、7 余1 2|3 余1 2|1 余1 0 除到商为0止即有(7)10=(111)2第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第27页,共78页教师:李军 Email:dpi_L1.4.2 十进制数转换成二进制数又如(11)10=(?)22|11 余1 2|5 余1 2|2 余0 2|1 余1 0 除到商为0止即有(11)10=(1011)2第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第28页,共78页教师:李军 Email:dpi_L1.4.2 十进制数转换成二进制数同理:十进制整数转换成R进制数采用“除R取余法
19、”如(11)10=(?)88|11 余3 8|1 余1 0 除到商为0止即有(11)10=(13)8第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第29页,共78页教师:李军 Email:dpi_L1.4.2 十进制数转换成二进制数十进制小数转换成二进制数采用乘2取整法:如(0.25)10=(?)2 0.25*2=0.5 整数0 0.5*2=1.0 整数1 0.0 得到整数0结束即有(0.25)10=(0.01)2第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第30页,共78页教师:李军 Email:dpi_L1.4.
20、2 十进制数转换成二进制数又如(0.783)10=(?)20.7832=1.566 整数10.5662=1.132 整数10.1322=0.264 整数00.2642=0.528 整数00.5282=1.056 整数10.0562=无法结束,可利用转换精度来控制运算的结束,若规定二进制小数精确到5位,即有(0.783)10=(0.11001)2第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第31页,共78页教师:李军 Email:dpi_L1.4.2 十进制数转换成二进制数 同理:十进制小数转换成R进制数可采用“乘R取整法”。如:求(0.0125)10=(
21、?)80.0125 8=0.1 整数00.1 8=0.8 整数00.8 8=6.4 整数60.4 8=3.2 整数30.2 8=1.6 整数1(0.0125)10=(0.00631)8第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第32页,共78页教师:李军 Email:dpi_L1.4.2 十进制数转换成二进制数 任意十进制数转换成二进制数要求任意十进制数对应的二进制数,结合上述的整数部分除2取余法与小数部分的乘2取整法即可。如求:(7.783)10=(?)2 (7.783)10=(7)10+(0.783)10 =(111)2+(0.11001)2 =(
22、111.11001)2第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第33页,共78页教师:李军 Email:dpi_L1.4.3 二八进制数之间的转换由于数23=8,所以一位八进制数可以用三位二进制数表示,因此,二进制与八进制之间的转换极为方便。如:(67.34)8=(110111.011100)2(1010111.0101)2=(127.24)8即将二进制数以小数点为界按三位一组进行划分,不足三位的用0 补足,然后分别转换。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第34页,共78页教师:李军 Email:dp
23、i_L1.4.4 二十六进制数之间的转换由于数24=16,所以一位十六进制数可以用四位二进制数表示,因此,二进制与十六进制之间的转换极为方便。如:(B7.A4)16=(10110111.101001)2(111110111.01011)2=(1F7.58)16即将二进制数以小数点为界按四位一组进行划分,不足四位的用0 补足,然后分别转换。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第35页,共78页教师:李军 Email:dpi_L1.5 二进制的四则运算加法:110011011=100100 (25+11=36)减法:110011011=1110 (2
24、5-11=14)乘法:110011011=100010011 (25*11=275)除法:11001/101=101 (25/5=5)第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第36页,共78页教师:李军 Email:dpi_L2.数的定点及浮点表示计算机中寄存器的抽象结构如何表示数的正负号如何表示数的小数点现在学习的是第37页,共78页教师:李军 Email:dpi_L2.1 计算机中寄存器的抽象结构问题:在计算机中的存储器或寄存器中如何表示二进制数呢?编号15 14 13 1 0这是一个16位的寄存器,其中每一个小方格中可以存放一位二进制数,并且每
25、一个小方格有一个编号(即015)。实际上,每一个小方格可以用一个具有两个稳定状态的电子部件(如触发器)来实现,例如电位的高低,故我们可将这两个状态解释成1或0。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第38页,共78页教师:李军 Email:dpi_L2.1 计算机中寄存器的抽象结构实际上,我们并不是将0或1的字样存储到电子部件上的,这只是我们对电子部件的两种状态的解释。如将(1011011100001101)2存储到寄存器中的情况如下图所示:该寄存器所能表示的数s的范围为:0s216-1。1 0 1 1 0 1 1 1 0 0 0 0 1 1 0
26、1第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第39页,共78页教师:李军 Email:dpi_L2.2 如何表示数的正负号同样我们并不能在寄存器中存放一个“”或“”的字样,我们规定:用0表示“”,用1表示“”,寄存器的最高位用来表示数的正负号。例如:数(011011100001101)2存储到寄存器中的情况如下所示:此时该寄存器所能表示的数s的范围为:-(215-1)s215-1。0 0 1 1 0 1 1 1 0 0 0 0 1 0 1 1第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第40页,共78页教师:李军
27、 Email:dpi_L2.3 如何表示数的小数点计算机中小数点不是由实际设备保存的,而是一个约定的假想位置。通常有两种表示方法:定点表示法。浮点表示法。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第41页,共78页教师:李军 Email:dpi_L2.3.1 定点表示法所谓定点表示法,就是计算机中数的小数点位置是固定的,一般固定在数的最高位之前或数的最低位之后。相应的称为定点整数表示和定点小数表示。定点整数表示:小数点固定在最低位之后,它只能表示整数,故称为定点整数表示。对16位寄存器而言,它表示的数s的范围为:-(215-1)s215-1。定点小数表
28、示:小数点固定在最高位之前,它只能表示小数,故称为定点小数表示。如:对16位寄存器而言,它表示的数s的范围为:-(1-2-15)s1-2-15。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第42页,共78页教师:李军 Email:dpi_L2.3.1 定点表示法实际的数可能既有整数又有小数,如何用定点方法表示它们呢?这就需要对数先进行“放大”或“缩小”处理,以使表示的数变为整数或小数。如(101.1)2和(10.11)2。若用定点整数表示,需要乘22;若用定点小数表示,需除23。这一工作是由程序员完成的,称为选取“比例因子”。第一章第一章进位计数制 1数
29、的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第43页,共78页教师:李军 Email:dpi_L2.3.2 浮点表示法为了说明计算机中数的浮点表示,我们先引入数的“记阶表示法”。如十进制数:57.89=0.5789*102。即数57.89由称为阶码的2和称为尾数的0.5789两部分而唯一地确定。同理二进制数也可以采用这样记阶表示法。如:101.1=0.1011*(10)21110.11=0.1011*(10)210第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第44页,共78页教师:李军 Email:dpi_L2.3.2 浮点表示法一般地:一个
30、R进制数N可表示为:N=S*RJ。其中:J为一个正或负的整数,称为阶码,它可以用定点整数表示。S为一个正或负的小数,称为尾数,它可以用定点小数表示。当基数R确定时,显然可以用J和S表示N的大小。这种用阶码和尾数表示数的方法称为数的浮点表示法。第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第45页,共78页教师:李军 Email:dpi_L2.3.2 浮点表示法当计算机采用浮点表示时,一个寄存器就需要划分为两部分,其中一部分表示阶码,另一部分表示尾数,而阶码的底预定义为2,所以不必表示出来。例1:二进制数-100111.101在寄存器中如何存放?假定将16位
31、的寄存器的高5位做为浮点数的阶码部分、其余的为尾数部分,阶码与尾数部分的最高位为符号位。首先写成记阶表示法:-100111.101=-0.100111101*(10)2110第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3001 1011001111010现在学习的是第46页,共78页教师:李军 Email:dpi_L2.3.2 浮点表示法例2:二进制数0.0001101101在寄存器中如何存放?首先写成记阶表示法:0.0001101101=0.1101101*(10)-11该 寄 存 器 所 能 表 示 的 数 的 范 围 为:-215(1-2-10)到215(1-2
32、-10)1 0 0 1 1 0 1 1 0 1 1 0 1 0 0 0第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第47页,共78页教师:李军 Email:dpi_L2.3.2 浮点表示法数的浮点表示法比数的定点扩大了数的表示范围,但牺牲了数的精度。为了提高浮点表示法中数的精度,可采取两种措施:增加尾数的位数,在字长一定时协调好阶码和尾数两者所占的位数。采用浮点规格化表示,使机器表示的尾数的最高位始终为1。浮点规格化:若尾数S满足:1/2=|S|1。则为浮点规格化表示。否则,若尾数的最高位为0,则为浮点非规格化表示。如:101.1=(10)211 0.1
33、011,s=0.1011 规格化10.11=(10)211 0.01011,s=0.01011 非规格化 规格化为:10.11=(10)210 0.1011第一章第一章进位计数制 1数的定点及浮点表示二进制的原码反码补码 2 3现在学习的是第48页,共78页教师:李军 Email:dpi_L3.二进制的原码、反码、补码为什么要对二进制数编码两个概念三种编码的定义三种编码的若干性质三种编码的加减法运算性质计算机中数的表示法小结现在学习的是第49页,共78页教师:李军 Email:dpi_L3.1 为什么要对二进制数编码问题:二进制数的运算,特别是基本的加法运算也还是比较复杂的。当有正负时,有加减
34、法两种运算。由于正负号是用一个数值位来表示的,在计算时符号位不能参加数值计算。目标:不管实际运算是加法还是减法,都统一用加法进行计算,同时不考虑符号的问题,把符号也当作一个数值参加运算。好处:能够大大减少硬件实现的复杂性并提高计算的速度。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第50页,共78页教师:李军 Email:dpi_L3.2 两个概念真值:是指适合于计算机表示的带有“”、“”号的二进制数。机器数:是指用“0”表示符号“”,用“1”表示符号“”,即把符号“数值化”后所得到的计算机实际能表示的数。第一章第一章数的定点及浮点表示 2二进制的原码反码补码
35、编码 3 4现在学习的是第51页,共78页教师:李军 Email:dpi_L3.3 三种编码的定义设真值x为n位的定点整数(-2nx+2n),则原码、反码及补码的定义如下:记为 规则原码x原原x原原x 0 x2nx原原2n-x -2nx0反码x反反x反反x 0 x2nx反反(2n+1-1)+x -2nx0补码x补补x补补x 0 x2nx补补2n+1+x -2nx|y|,故由x减去y。结果符号应与x原相同。x原原=0,1101 y原原=0,0110 0,0111 故xy 原原0,0111,于是求得xy=+0111第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第58
36、页,共78页教师:李军 Email:dpi_L3.5.2 反码加减法举例 例:x=1101,y=0110,利用反码求xy x反0,1101,y反1,1001 x反 0,1101 +y反 1,1001 10,0110 1 加符号位进位 0,0111 故xy反0,0111,得xy0111第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第59页,共78页教师:李军 Email:dpi_L3.5.3 补码加减法举例例:x+1101,y+0110,用补码求xy。x补0,1101,y补1,1010 x补 0,1101 +-y补1,1010 10,0111 将符号位的进位丢掉。
37、故xy补0,0111,得xy0111 由此可见,补码的加减法运算最简单,运算时将符号位作为数值位一起参加运算,而将高位的进位丢掉即可。故在计算机中一般对数值的表示都采用补码的方式,运算也采用补码进行运算。以上采用编码性质求三种编码的方法对小数也适用。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第60页,共78页教师:李军 Email:dpi_L3.6 计算机中数的表示法小结 十进制数 二进制数二进制真值 定点表示 浮点表示定点小数定点整数规格化非规格化 原码 反码 补码第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第61页,共7
38、8页教师:李军 Email:dpi_L4、编码编码的概念十进制数的常用代码可靠性代码字符代码现在学习的是第62页,共78页教师:李军 Email:dpi_L4.1 编码的概念上一节对数的表示是采用按“值”表示的,除此之外,还可以采用按“形”的方式表示,这就是对数或符号进行编码。所谓编码,就是用按一定的规则组合而成的若干位二进制码来表示数或字符(字母及符号)。例如,我们以前所常用到的ASCII码就是一种编码。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第63页,共78页教师:李军 Email:dpi_L4.2 十进制数的常用代码 十进制数8421码2421码余3
39、码0000000000011100010001010020010001001013001100110110401000100011150101101110006011011001001701111101101081000111010119100111111100第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第64页,共78页教师:李军 Email:dpi_L4.2.1 8421码8421码是用四位二制数表示一位十进制数,它是一种有权代码。这四位二进制数的各位之权自左至右分别为8、4、2、1,故称之为8421码。8421码与通常的二进制数没有区别,也称为BCD码。
40、由于四位二进制数可以表示16种情况,而十进制数只有09共10个数,因此8421码中不包括10101111。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第65页,共78页教师:李军 Email:dpi_L4.2.1 8421码因为8421码是有权代码,因而根据代码的组成便可知道它所代表的值。例如:设一个8421码为 a3a2a1a0,则它所代表的值为:N=8a3+4a2+2a1+1a0一个十进制数也很容易用8421码表示,如:(913.54)10可表示为:(1001 0001 0011 0101 0100)8421第一章第一章数的定点及浮点表示 2二进制的原码反
41、码补码编码 3 4现在学习的是第66页,共78页教师:李军 Email:dpi_L4.2.2 2421码2421码也是一种用四位二进制数表示的有权代码。它由权为2、4、2、1的四位二进制数所组成。上面所列出的2421码是一种自反代码,即只要把这种2421码的各位取反,便可得到另一种2421码,而且这两种2421码所代表的十进制数对9互反。如2421码0100代表十制数4,若将它的各位取反得1011,它所代表的十进制数5恰是4对9的反。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第67页,共78页教师:李军 Email:dpi_L4.2.3 余3码余3码是由84
42、21码加3所得到的,它是一种无权代码。余3码所代表的十进制数可由下式算得:N=8a3+4a2+2a1+1a03。余3码也是一种自反代码。例如:4的余3码为0111,将它的各位取反得1000即5的余3码。而4与5互反。余3码中不包括00000010和11011111。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第68页,共78页教师:李军 Email:dpi_L4.3 可靠性代码代码在形成或传输过程中免不了要发生错误,为了减少这种错误,且在一旦出现错误时易于发现和校正,采用了可靠性代码。目前,常用的可靠性代码有:葛莱码奇偶校验码第一章第一章数的定点及浮点表示 2
43、二进制的原码反码补码编码 3 4现在学习的是第69页,共78页教师:李军 Email:dpi_L4.3.1 葛莱码(Gray)在一组数的编码中,若任意两个相邻数的代码只有一位二进制数不同,则称这种编码为葛莱码。下表给出了十进制数0到9的一组葛莱码,若首尾数也仅有一位不同,又称循环码。十进制数葛莱码十进制数葛莱码00000511101000161010200117101130010810014011091000第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第70页,共78页教师:李军 Email:dpi_L4.3.1 葛莱码(Gray)葛莱码的特点:当它所代表的数
44、递增时不会发生粗大误差。例如,当十进制数由7变为8时,若采用的是8421码,则其编码将由0111变为1000。此时,四位二进制状态都发生变化。对于某一个具体实现8421码的设备而言,其四位设备状态不可能同时发生改变,于是可能出现错误的中间结果。若采用葛莱码则不会出现这种问题。葛莱码是一种无权代码,因而很难从单个代码识别它所代表的数值。葛莱码不仅能对十进制进行编码,而且能对任意二进制数进行编码。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第71页,共78页教师:李军 Email:dpi_L4.3.1 葛莱码(Gray)葛莱码与二进制数的转换二进制数葛莱码设二进制
45、数为:B=Bn-1Bi+1BiB0则对应的葛莱码为:G=Gn-1Gi+1GiG0 其中GiBi+1Bi 并且Bn=0 式中为“模2加”运算符(也称为异或),其规则如下:00=0 01=1 10=1 11=0第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第72页,共78页教师:李军 Email:dpi_L4.3.1 葛莱码(Gray)例如:已知二进制码为1011001,则其对应的葛莱码为:二进制:0 1 0 1 1 0 0 1 葛莱码:1 1 1 0 1 0 1第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第73页,共78页教师:李
46、军 Email:dpi_L4.3.1 葛莱码(Gray)葛莱码二进制数。设葛莱码为:G=Gn-1Gi+1GiG0则其对应的二进制码为:B=Bn-1Bi+1BiB0其中 Bn-1Gn-1,Bi=Bi+1Gi (0=in-1)例如:已知葛莱码为1110101,则其二进制码可由下式算得:葛莱码:1 1 1 0 1 0 1 二进制:1 0 1 1 0 0 1即所对应的二进制码为:1011001。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第74页,共78页教师:李军 Email:dpi_L4.3.2 奇偶校验码奇偶校验码由若干个信息位加一个校验位所构成,其中校验位的取
47、值(0或1)将使整个代码中“1”的个数为奇数或偶数。若“1”的个数为奇数称为奇校验。若“1”的个数为偶数,称为偶校验。如:二进制代码0000。它的奇校验代码为00001,它的偶校验代码为00000。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第75页,共78页教师:李军 Email:dpi_L4.3.2 奇偶校验码奇偶校验码的特点具有发现一位错的能力。例如,约定二进制代码都以奇性校验码存入存储器,那么取出时若检测到某二进制代码中“1”的个数不是奇数,则表明该代码在存取过程中发生了错误。不能纠错。奇偶校验码虽能检测出一位错,但不能确定究竟是哪一位错。因而不具有自
48、动校正的能力。不能发现两位错。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第76页,共78页教师:李军 Email:dpi_L4.4 字符代码数字系统中对数字、字母和符号进行处理时,需要采用字符编码。最常用的字符编码是美国标准信息交换代码ASCII码,它采用七位二进制编码表示10个十进制数字、26个英文字母、通用运算符、标点及图形字符等符号,ASCII码可表示128个字符。第一章第一章数的定点及浮点表示 2二进制的原码反码补码编码 3 4现在学习的是第77页,共78页教师:李军 Email:dpi_L作业作业:P13 3、4、5、7、8、9现在学习的是第78页,共78页