计算机组成原理N003_第1页
计算机组成原理N003_第2页
计算机组成原理N003_第3页
计算机组成原理N003_第4页
计算机组成原理N003_第5页
已阅读5页,还剩102页未读 继续免费阅读

下载本文档

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

文档简介

1、2第三章第三章 信息编码与数据表示信息编码与数据表示 数值数据的表示数值数据的表示3.13.1 浮点机器数的表示方法浮点机器数的表示方法 数据格式数据格式3.23.2 定点机器数的表示方法定点机器数的表示方法3.33.33.43.4 非数值数据的表示非数值数据的表示3.53.5 校验码校验码3.63.6 现代计算机系统的数据表示现代计算机系统的数据表示3.73.7 本章小结本章小结33.1 3.1 数值数据的表示数值数据的表示 进位计数制进位计数制一一 不同数制之间的相互转换不同数制之间的相互转换二二 十进制数的编码十进制数的编码三三4一、进位计数制一、进位计数制(P65)(P65)v 数制的

2、两大要素: 基数基数R R: 基数为基数为R R的数制称为的数制称为R R进制数。进制数。 R R进制数的主要特点进制数的主要特点就是就是逢逢R R进进1 1 。 权权W Wi i: 权也称位权,指某一位权也称位权,指某一位i i上的数码的权重值,上的数码的权重值, W Wi i R Ri i。v 假设任意数值N用R进制数来表示,形式为: N=(Dm1Dm-2D0 D-1D-2 D-k )R 小数点左右开弓,左边整数,从小数点左右开弓,左边整数,从0 0开始;右边小数,从开始;右边小数,从-1-1开始开始1()miiikNNDR的十进制值:5(1 1)常用的几种数制的对应关系)常用的几种数制的

3、对应关系十进制十进制 二进制二进制八进制八进制十六十六进制进制十进制十进制 二进制二进制八进制八进制十六十六进制进制0 0000000000 00 08 81000100010108 81 1000100011 11 19 91001100111119 92 2001000102 22 21010101010101212A A3 3001100113 33 31111101110111313B B4 4010001004 44 41212110011001414C C5 5010101015 55 51313110111011515D D6 6011001106 66 614141110111

4、01616E E7 7011101117 77 71515111111111717F F1616100001000020201010问题:计算机里为什么主要用二进制来表示数据?问题:计算机里为什么主要用二进制来表示数据? 63.1.23.1.2、不同数制之间的相互转换、不同数制之间的相互转换 常用的几种数制的对应关系常用的几种数制的对应关系1 1 二、八、十六进制转换为十进制二、八、十六进制转换为十进制2 2 十进制转换为二、八、十六进制十进制转换为二、八、十六进制3 373.1.2 3.1.2 教材补充内容教材补充内容进制转换关键点进制转换关键点v 其他进制转其他进制转1010进制的关键点进

5、制的关键点 关键点 小数点左边系数标号:从0开始 小数点右边系数标号:从-1开始v 十进制转十进制转R R进制进制 掌握口诀 整数部分:除R取余,求余倒序 小数部分:乘R取整,不倒序v 十六进制与二进制互转十六进制与二进制互转 从小数点开始,左右开弓,4位一组,不够补零v 不同进制数的尾缀表示不同进制数的尾缀表示 十进制(Decimal)、二进制(Binary)、八进制(Octal)、十六进制(Hexdecimal)数分别用D、B、O、H(或小写)来标志,并且十进制可省略尾缀83.1.2 3.1.2 题例题例v 例3.1(其它进制转10进制)v (5AC.E6)165162+10161+121

6、60+1516-1+616-2 (123.67)8182 281 38068-1 78-2 (11011.011)2124 123 022121 12-0 02-1 12-2 12-39(a a)十进制转化为)十进制转化为R R进制进制v转换方法转换方法 整数部分:除R取余,求余倒序,直到商为0。 小数部分:乘R取整,不倒序,直到积为0或者达到精度要求为止。v例:(例:(123.75123.75)1010= =( ? )2 2 (123.75)10=( ? )81111011.11173.610具体求解过程具体求解过程v(123.75123.75)1010转化成转化成2 2进制进制11十进制转

7、二进制练习十进制转二进制练习v(114.35114.35)1010( ? )2 212实验回顾实验回顾v用微程序实现:用微程序实现:R1+R2R1+R2,将运算结果存到,将运算结果存到11h11h中,中,R1R1的初始值为的初始值为01H01H,R2R2初始值为初始值为0Eh0Eh。提示:。提示:用用ADDADD指令和指令和STASTA指令实现,指令实现,R0R0和和R3R3可任由使用。可任由使用。 13实验回顾实验回顾名称名称助记符助记符功能功能指令格式指令格式IR7 IR4IR3 IR2IR1 IR0加法加法ADD Rd,RsRd+Rs-Rd0 0 0 0RS1 RS0RD1 RD0减法减

8、法SUB Rd,RsRd-Rs-Rd0 0 0 1RS1 RS0RD1 RD0逻辑与逻辑与AND Rd,RsRd&Rs-Rd0 0 1 0RS1 RS0RD1 RD0存数存数STA Rd,RsRd-Rs0 0 1 1RS1 RS0RD1 RD0取数取数LDA Rd,RsRs-Rd0 1 0 0RS1 RS0RD1 RD0条件转移条件转移JC Rs若若C=1则则R3-PC0 1 0 1RS1 RS0X X停机停机STP暂停运行暂停运行0 1 1 0X XX X输出输出OUT RsRs-DBUS0 1 1 1RS1 RS0X X14实验回顾实验回顾15实验五实验五v实现对实现对01H01H

9、循环左移,并对每一次左移的结果循环左移,并对每一次左移的结果反映到反映到AR1AR1地址线上。具体内容为:地址线上。具体内容为:v1 1). . 利用利用TEC-5TEC-5系统现成的系统现成的8 8条指令实现该功条指令实现该功能的汇编程序。能的汇编程序。v2 2). . 将汇编程序翻译成机器码,并将将汇编程序翻译成机器码,并将TEC-5TEC-5系系统上部和下部连接,分配好代码的存储空间,统上部和下部连接,分配好代码的存储空间,将寄存器的初始值和汇编代码写入将寄存器的初始值和汇编代码写入TEC-5TEC-5系统系统。v3 3). . 在在TEC-5TEC-5上执行程序代码,验证程序。上执行程

10、序代码,验证程序。 16课程回顾课程回顾v1 10 0进制转进制转R R进制进制 (120.875)10= (?)2 =(?)8 =(?)16vR R进制转十进制进制转十进制 (11111111.111)2=(?)10 (123.4)8=(?)10 (124.4)16=(?)1017小数部分的精度要求小数部分的精度要求v 当小数部分以当小数部分以2 2取整的过程中,积不会为取整的过程中,积不会为0 0;或者;或者当小数部分转化为二进制位数很长当小数部分转化为二进制位数很长,这时由精度,这时由精度来决定二进制位数。来决定二进制位数。v 例如:(例如:(114.35114.35)1010( ? )

11、2 2无法整除无法整除 求出(114.35)10精度大于0.1的二进制值 则我们只需取4位二进制小数即可满足要求,因为0.124。 因此转换的二进制数据小数保留4位18二进制转化为八、十六进制二进制转化为八、十六进制v 二进制八进制 以小数点为中心分别向两边分组,每三位一组,写出对以小数点为中心分别向两边分组,每三位一组,写出对应的八进制数字。(不够位数则在两边加应的八进制数字。(不够位数则在两边加0 0补足补足3 3位位 )v 二进制十六进制 以小数点为中心分别向两边分组,每四位一组,写出对以小数点为中心分别向两边分组,每四位一组,写出对应的十六进制符号。(不够位数则在两边加应的十六进制符号

12、。(不够位数则在两边加0 0补足补足4 4位位 )v 八进制二进制 将每位八进制数展开为将每位八进制数展开为3 3位二进制数,最高位和最低位位二进制数,最高位和最低位的的0 0可以略去。可以略去。v 十六进制二进制 将每位十六进制数展开为将每位十六进制数展开为4 4位二进制数,最高位和最低位二进制数,最高位和最低位的位的0 0可以略去。可以略去。19例例3.33.3(P68P68)v将将(11011.11001)(11011.11001)2 2转换为八进制、十六进制、转换为八进制、十六进制、十进制,将(十进制,将(571.23571.23)8 8和(和(A8.E9)A8.E9)1616转化为二

13、转化为二进制数进制数20例例3.33.3习题答案习题答案v 例:(11011.11001)2=( ? )8=( ? )16v 例:(571.23)8= ( ? )2v 例:(A8.E9)16= ( ? )2101101 111111 001001. .010010 01101110101010 10001000. .11101110 1001100121三、十进制数的编码三、十进制数的编码v 问题:如何在计算机内使用二进制来表示十进制数据? v BCD(Binary Coded Decimal)码:使用二进制来编码十进制数字09。v 编码方法 一般使用一般使用4 4位二进制编码来表示位二进制编

14、码来表示1 1位十进制数字,在位十进制数字,在1616个个编码中选用编码中选用1010个来表示数字个来表示数字0 09 9。不同的选择构成不同。不同的选择构成不同的的BCDBCD码码 。v 分类 有权码有权码 编码的每一位都有固定的权值,加权求和的编码的每一位都有固定的权值,加权求和的值即是表示的十进制数字。如值即是表示的十进制数字。如84218421码、码、24212421码、码、52115211码、码、43114311码、码、84 -2-184 -2-1码等。码等。 无权码无权码 编码的每一位并没有固定的权,主要包括格编码的每一位并没有固定的权,主要包括格雷码、余雷码、余3 3码等。码等。

15、 22(1 1)二十进制码()二十进制码(BCDBCD码)码)十进制数十进制数84218421码码24212421码码52115211码码43114311码码84-2-184-2-1码码格雷码格雷码余余3 3码码0 0000000000000000000000000000000000000000000000000001100111 1000100010001000100010001000100010111011100010001010001002 2001000100010001000110011001100110110011000110011010101013 300110011001100

16、1101010101010001000101010100100010011001104 4010001000100010001110111100010000100010001100110011101115 5010101011011101110001000011101111011101111101110100010006 6011001101100110010101010101110111010101010101010100110017 7011101111101110111001100110011001001100110001000101010108 81000100011101110111

17、01110111011101000100011001100101110119 910011001111111111111111111111111111111110100010011001100讨论余讨论余3 3码和格雷码的优点码和格雷码的优点 权值:权值:8 8,4 4,-2-2,-1 -1 23几种常见的几种常见的BCDBCD码点评码点评v8421码: 特点:特点:4 4位二进制数位的权从高到低依次是位二进制数位的权从高到低依次是8 8、4 4、2 2、1 1;84218421码实际上就是十进制数字码实际上就是十进制数字0 09 9的二进的二进制编码本身。制编码本身。 是最常用的一种是最常用

18、的一种BCDBCD码,码,在没有特别指出的一般情在没有特别指出的一般情况下,所提到的况下,所提到的BCDBCD码通常就是指码通常就是指84218421码码。v格雷码: 特点:又叫循环码,它的特点:又叫循环码,它的任何相邻的两个编码任何相邻的两个编码(例(例如如2 2和和3 3、7 7和和8 8、9 9和和0 0等)之间等)之间只有一位二进制位只有一位二进制位不同不同。 优点:是用它构成计数器时,在从一个编码变到下优点:是用它构成计数器时,在从一个编码变到下一个编码时,只有一个触发器翻转即可,波形更完一个编码时,只有一个触发器翻转即可,波形更完美、美、可靠可靠。 格雷码的编码方案有许多种。格雷码

19、的编码方案有许多种。v余3码:对应的8421码加上0011构成的。对加减运算 能正确进位 243.2 3.2 数据格式数据格式v 1 1、机器数与真值、机器数与真值 机器数:把“+”、“-”符号代码化,并保存在计算机中的数据。 真值:是指机器数所真正表示的数值,用数值并冠以“+”、“-”符号的方法来表示。 机器数的编码方法 原码、反码、补码、移码。 253.2 3.2 数据格式数据格式v计算机硬件如何区分它们是无符号数据还是计算机硬件如何区分它们是无符号数据还是带符号数据?带符号数据?v 例:例: (Intel X86Intel X86系列系列CPUCPU)v 假设假设AXAX(1111111

20、111111111)(1111111111111111)2 2 BX BX(0000000000000001)(0000000000000001)2 2,那,那么执行下面两段程序时,计算机硬件将把么执行下面两段程序时,计算机硬件将把AXAX和和BXBX中的数据看成中的数据看成是不同的数据。是不同的数据。v 程序程序A A CMPAX,BX; CMP表示比较的意思 JLL1; 若AXBX跳转 执行JL指令时,操作数AX和BX被当作有符号数据,AX(1)10,BX(1)10,所以执行结果是转移到L1标号处执行。v 程序程序B B CMPAX,BX JBL1;若AX2时,校验码才具有检错能力,当码距

21、d 3时,校验码才具有纠错能力。 码距 一种码制的码距是指该码制中所有代码之间的最小距离。 两个代码之间的距离 在一种编码中,在任何两个代码之间逐位比较,对应位值不同的个数。 校验码的检错纠错能力与码距的关系如下: 若码距d为奇数,如果只用来检查错误,则可以发现d1位错误;如果用来纠正错误,则能够纠正 位错误。 若码距d为偶数,则可以发现 位错误,并能够纠正( )位错误。21d12d2d983.6 3.6 校验码校验码v 7 7、常见校验码:、常见校验码: 奇偶校验码 码距d=2,检错码,能检验奇数位错误;通常用于磁带或者串行通信中。 海明校验码 码距d=3,纠错码,能纠正1位或多位错误;通常

22、用于磁盘冗余阵列中。 CRC校验码 码距d=3(片面之词,经常大于片面之词,经常大于3 3),纠错码,能纠正1位错误;通常用于磁盘或数据块的校验。99v在有效信息位的前面或者后面添加一位奇(偶)校验在有效信息位的前面或者后面添加一位奇(偶)校验位就组成了奇(偶)校验码。位就组成了奇(偶)校验码。奇(偶)校验码的编码和译码在硬件上通常采用异或非门(异或门)实现。 奇校验有效信息与校验码合并,1的个数为奇数偶校验有效信息和校验码合并,1的个数为偶数01234560123456BBBBBBBPBBBBBBBP偶奇二、奇偶校验码二、奇偶校验码100 2、译码0B6B5B4B2B1B0B3P奇奇P偶偶字

23、符字符“A A”的的ASCIIASCII码为码为41H41H,奇校验码为,奇校验码为C1HC1H,偶校验码为偶校验码为41H41H。偶偶奇奇PBBBBBBBEPBBBBBBBE01234560123456二、奇偶校验码二、奇偶校验码思考:如何根据译码思考:如何根据译码E E判断出错?判断出错? P奇奇/ /P偶偶B6B5B4B2B1B0B3E奇奇E偶偶101三、海明码三、海明码v 1 1、编码、编码v海明码的编码步骤如下:海明码的编码步骤如下:v(1 1)计算校验位的位数)计算校验位的位数假设信息位为k位,增加r位校验位,构成n=k+r位海明码字。若要求海明码能纠正一位错误,用r位校验位产生的

24、r位指误字来区分无错状态及码字中n个不同位置的一位错误状态,则要求r满足:2 r k + r + 1102v问题问题1 1:给你一串数据,如何用海明码编码:给你一串数据,如何用海明码编码v问题问题2 2:挖掘海明码编码的规律:挖掘海明码编码的规律v问题问题3 3:理解海明码:理解海明码r r和和k k的关系的关系v问题问题4 4:如何对海明码译码:如何对海明码译码v问题问题5 5:如何理解海明码与奇偶校验码的关系:如何理解海明码与奇偶校验码的关系课外作业:海明码自主学习体会课外作业:海明码自主学习体会请围绕以下话题开展自主学习请围绕以下话题开展自主学习 1033.6.3 3.6.3 循环冗余码循环冗余码CRCCRCv 循环冗余码循环冗余码CRCCRC(Cyclic Redunda

温馨提示

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

评论

0/150

提交评论