微机原理及接口技术 第2章 计算机中的数制和码制课件_第1页
微机原理及接口技术 第2章 计算机中的数制和码制课件_第2页
微机原理及接口技术 第2章 计算机中的数制和码制课件_第3页
微机原理及接口技术 第2章 计算机中的数制和码制课件_第4页
微机原理及接口技术 第2章 计算机中的数制和码制课件_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

1、第二章 计算机中的数制和码制基本要求: 熟悉并掌握计算机中信息的表示方法,熟练掌握各数制,码制间的转换基本内容:无符号数的表示方法及运算主要是十进制、二进制、十六进制、八进制及其互相转换有符号数的表示方法,主要有原码、补码、反码及其相互关系几种常用编码,BCD码,ASC码重点内容: 数制相互转换,码制相互关系及运算、BCD码表示难点内容: 原码、补码、反码相互运算,十进制向二进制转换12.1 数和数制第二章 计算机中的数制和码制1、常用的数制1)十进制 最常用,不详讲。 由十进制表示方法推导出任意进制的表示方法。如: 则任意进制的数N进位基数位权相应系数m,n为正整数2第二章 计算机中的数制和

2、码制1、常用的数制2)二进制 计算机内部的信息分为两大类:控制信息:是一系列的控制命令,用于指挥计算机如何操作;数据信息:是计算机操作的对象,一般又可分为数值数据和非数值数据。数值数据用于表示数量的大小,它有确定的数值;非数值数据没有确定的数值,它主要包括字符、汉字、逻辑数据等等。 3第二章 计算机中的数制和码制1、常用的数制2)二进制 计算机中不论是控制命令还是数据信息,它们都要用“0”和“1”两个基本符号(即基2码)来编码表示物理上容易实现。例如,用“1”和“0”表示高、低两个电位,或表示脉冲的有无,还可表示脉冲的正、负极性等等,可靠性都较高。编码、加减运算规则简单。“1”和“0”正好与逻

3、辑数据“真”与“假”相对应,逻辑运算方便。4第二章 计算机中的数制和码制1、常用的数制2)二进制 计数特征:逢二进一,运算简单。 二进制数也可完成加、减、乘、除四则运算,乘法实质上是做移位加法,除法则是移位减法。末尾必须以“B”结尾 。5第二章 计算机中的数制和码制2、常用数制之间的转换1)二进制转换为十进制 方法:按位权展开相加如:101101.101B = D125+024+123+122+021+120+12-1+02-2+12-332+0+8+4+0+1+0.5+0+0.12545.625D直接写出相加也可7第二章 计算机中的数制和码制2、常用数制之间的转换2)十进制转换为二进制 方法

4、1:降幂法写出要转换的十进制数,其次写出小于此数的各位二进制权值,然后用要转换的十进制数减去与它最近的二进制权值,够减则减去,并记以1,不够减则跳过并记以0,直到读数为0为止。例:将199D转化为二进制为 B。 8第二章 计算机中的数制和码制2、常用数制之间的转换2)十进制转换为二进制 方法1:降幂法对于小数也一样,只是从0.5向后减直到结果为0。例:将N0.8125D写为二进制 1)、写权值 0.5、0.25、0.125、0.0625 2) 、减 0.8125-0.5 0.3125 1 0.3125-0.25 0.0625 1 0.0625-0.125 不够 0 0.0625-0.06250

5、 1 所以 N0.8125D0.1101B 如果给定的十进制数有整数也有小数可分别计算10第二章 计算机中的数制和码制2、常用数制之间的转换2)十进制转换为二进制 方法2:除法整数不断除以2,记下余数,直到商为0。 除2取余小数不断乘以2,记下整数位,直到小数为0 乘2取整例:N199D写为二进制数为 B 例:N0.8125D写为二进制 B 11第二章 计算机中的数制和码制2、常用数制之间的转换2)十进制转换为二进制 方法2:除法12第二章 计算机中的数制和码制5)十进制与十六进制转换方法:与二进制和十进制转换相同。十六进制十进制:按权展开十进制十六进制:整数“除十六取余法”,小数“乘十六取整

6、法”例:将N48956D转换为十六进制 14第二章 计算机中的数制和码制 计算机只识别0和1组成的数或代码,所以有符号数的符号也只能用0和1来表示,用0表示正,用1表示负,但由于数值部分的表示方法不同,有符号数可有三种表示方法,分别叫做原码、反码和补码。2.2 有符号数在计算机中的表示15第二章 计算机中的数制和码制8位字长数的原码表示范围为-127+127数0有两种表示方法:+0原 00000000 -0原 10000000字长为n的机器中, 数X的原码表示为1、原码 以字长n=4为例,-6D=1110B17第二章 计算机中的数制和码制编码规则:1、正数的反码与原码相同,最高位为0,表示正号

7、,其余为数值位例:(+4)反 00000100 (+127)反 011111112、反码 2、负数的反码表示为它的原码除符号位外按位取反,换言之,负数的反码表示为它的正数原码按位求反。 (-4)反 11111011 先写其正数的原码再按位求反 (-127)反10000000 18特点:“0”有两种表示方法。 (+0)反00000000 (-0)反111111118位二进制反码表示范围为+127-127由反码表带符号数时,最高位为符号位。符号位为0时,后面部分为此数的值;符号位为1时,后面部分不是此数值,而是将其按位取反后的值 第二章 计算机中的数制和码制2、反码19第二章 计算机中的数制和码制

8、例:说出10010100(反码表示)的真值 答案:(107)10运算法则: X+Y反=X反+Y反+进位 X反反=X原注意事项:1、符号位要参予运算 2、最高位若产生进位,应将此进位送回最低位。相加循环进位。例:X+13 Y-6 求X+Y=?2、反码20第二章 计算机中的数制和码制编码规则: 正数的补码与原码相同;负数的补码即为它的反码在最低位加1,或对其正数的原码按位求反末位加1得到例:+127补01111111 +4补00000100 -127补10000001 -4补 11111100 特点:0的补码唯一:+0补=-0补=000000008字长时表示范围是+127-128补码表示的二进制数

9、的最高位是0时,其余位是其大小;最高为1时,其它位按取反,末位加1,才是其大小 .3、补码求补运算21第二章 计算机中的数制和码制3、补码运算法则:X+Y补X补+Y补 X- Y补X补 + - Y补注意:1)、符号位参与运算 2)、有进位舍去 计算X1 + Y1。 + 0001100 X1 0 0001100X1补+) + 0000101 Y1 +) 0 0000101Y1补 + 0010001 X1+Y1 0 0010001X1补+Y1补22用补码做运算时有个前提条件,就是运算结果不能超出机器数所能表示的范围,否则运算结果不正确,按“溢出”处理。例:设机器字长为8位,则128N+127,计算(

10、+64)+(+65)。得到的结果是错误的。其原因是:(+64)+(+65)= +129+127,超出了字长为8位所能表示的最大值,产生了“溢出”,所以结果值出错。 + 640 1000000+) + 65+)0 1000001 +129为负数1 0000001127第二章 计算机中的数制和码制24例:(125)+(10)=-135计算结果也是错误的。其原因是:(125)+(10)= 135128,超出了字长为8位所能表示的最小值,产生了“溢出”,所以结果出错。采用补码做运算时必须对运算结果做“溢出”检查。 1251 0000011+) 10+)1 1110110 135 10 1111001+

11、121舍弃正数符号第二章 计算机中的数制和码制25 例 将十进制数67.9转换成BCD码。其过程如下: 6 7.9 01100111.1001所以(67.9)10=(01100111.1001)BCD 例 将BCD码10010110.0110转换成十进制数,其过程如下:1001 0110.011096.6所以(10010110.0110)BCD=(96.6)10第二章 计算机中的数制和码制27运算规则:BCD码是十进制数,而运算器对数据做加减运算时,都是按二进制运算规则进行处理的。这样,当将BCD码传送给运算器进行运算时,其结果需要修正。修正的规则是:当两个BCD码相加,如果和等于或小于100

12、1(即9H),不需要修正;如果相加之和在1010到1111(即0AH0FH)之间,则需加6H进行修正;如果相加时本位产生了进位,也需加6H进行修正。这样做的原因是,机器按二进制相加,所以4位二进制数相加时,是按“逢十六进一”的原则进行运算的,而实质上是2个十进制数相加,应该按“逢十进一”的原则相加,16与10相差6,所以当和超过9或有进位时,都要加6进行修正。第二章 计算机中的数制和码制28例 计算1+8的值,其运算过程如下: 0 0 0 1+) 1 0 0 0 1 0 0 1结果是1001,即十进制数9,1 + 8 = 9正确。 计算5+7的值。 0 1 0 1+) 0 1 1 1 1 1

13、0 0 结果大于9 +) 0 1 1 0 加6修正 1 0 0 1 0结果是0010,即十进制数2,还产生了进位。5 + 7 = 12,结论正确。第二章 计算机中的数制和码制29 计算9 + 9的值。 1 0 0 1+) 1 0 0 1 1 0 0 1 0+) 0 1 1 0 1 1 0 0 0 结果是1000,即十进制的8,还产生进位,故加6修正。9+ 9 =18,结论正确。第二章 计算机中的数制和码制30 若做BCD码减法运算,其修正规则为:当两个BCD码相减,如果差等于或小于1001,不需要修正;如果相减时本位产生了借位,则应减6H加以修正。原因是:如果有借位,机器将这个借位当十六看待,

14、而实际上应该当十看待,因此,应该将差值再减6H才是BCD码的正确结果值。下面举两个例子进行说明。 计算9-7的值。 1 0 0 1) 0 1 1 1 0 0 1 0结果值是0010,即十进制数2。97 = 2,结论正确。第二章 计算机中的数制和码制31计算7-9的值。 结果值是1000,即十进制数8,有借位。79 = 8,结论正确。(8是2以10为模的补码, 9是1以10为模的补码,在机器中,负数都以补码形式表示) 1 0 1 1 1) 1 0 0 1 1 1 1 0) 0 1 1 0 减6修正 1 0 0 0发生借位发生借位 1 1 0 0 0) 1 0 0 1 1 1 1 1) 0 1 1

15、 0 减6修正 1 0 0 1计算8-9的值。第二章 计算机中的数制和码制32 在计算机中BCD码有两种格式:压缩BCD码和非压缩BCD码: (1) 非压缩BCD码:1字节(8位二进制)中仅表示一位BCD数,例如:(00000110)BCD=6。 (2) 压缩BCD码:1字节中仅表示两位BCD数,例如:(01100110)BCD=66。 另外,BCD码除了采用上述方法调整以外,也可以在交付计算机运算之前,先将BCD码转换为二进制数,然后交付计算机运算,运算以后再将二进制结果转换为BCD码。第二章 计算机中的数制和码制332.4 字符编码 在计算机中所处理的并非全部为数字,还有字母符号,如A、B

16、、C、D、回车、等等,而计算机只认识二进制,所以这些内容也必须用二进制表示。 一般微机中用的是美国标准信息交换码ASC码,国际通用。ASC码由7位二进制编码来表示128个字符,包括数字09,最高位为奇偶校验码(见附录A)一些常用的ASC码最好记住,便于编程和阅读程序回车CR:0DH AZ:41H5AH 换行LF:0AH 09:30H39H ESC 键:1BH az :61H7AH第二章 计算机中的数制和码制342.5 汉字在计算机中的表示 汉字的特点是字数多,字形复杂。据统计,高频率使用的字有100个,常用字有1000个,次常用字为4000个,再加上一些少见字、罕见字,汉字共计有15000个。

17、 16位的二进制数可以表示65536个无符号数。所以,只要能给每个汉字分配唯一的一个16位的二进制数来表示就可以了。 352.5 汉字在计算机中的表示 汉字的特点是字数多,字形复杂。据统计,高频率使用的字有100个,常用字有1000个,次常用字为4000个,再加上一些少见字、罕见字,汉字共计有15000个。 16位的二进制数可以表示65536个无符号数。所以,只要能给每个汉字分配唯一的一个16位的二进制数来表示就可以了。 362.5 汉字在计算机中的表示 为了将这么多的汉字可以输入到计算机中,需要对这些汉字进行编码,这就形成了各种各样的输入法,如智能ABC、五笔、全拼以及双拼等等。每一种输入法其实都对应了一种汉字键盘输入的编码,这种编码称为外部码。不管用什么输入法,当汉字输入到计算机中时,必须有一个唯一的16位的二进制数与其对应,这又

温馨提示

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

评论

0/150

提交评论