第2章微型计算机应用基础2011 (2)_第1页
第2章微型计算机应用基础2011 (2)_第2页
第2章微型计算机应用基础2011 (2)_第3页
第2章微型计算机应用基础2011 (2)_第4页
第2章微型计算机应用基础2011 (2)_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、思考题思考题u 人类采用十进制,而计算机为什么采用二进制?人类采用十进制,而计算机为什么采用二进制?u 人类用不同的符号来表示数字、数的正负和字符,人类用不同的符号来表示数字、数的正负和字符,以示区分;计算机中将如何表示和区分?以示区分;计算机中将如何表示和区分?第二章第二章微型计算机应用基础微型计算机应用基础u信息及其数字化u信息在计算机中的表示u数值信息的编码及其运算u微型计算机的组成与工作原理第第1节节信息及其数字化信息及其数字化n数字化信息数字化信息l采用一串数字表示的信息采用一串数字表示的信息n数值信息数值信息l在科学计算中,用于计量和运算的信息在科学计算中,用于计量和运算的信息n非

2、数值信息非数值信息l文字、语音、图像等文字、语音、图像等第第2节节信息在计算机中的表示信息在计算机中的表示n数值信息数值信息数制及其转换数制及其转换n非数值信息非数值信息常用信息编码常用信息编码十进制十进制DecimalDecimal二进制二进制BinaryBinary十六进制十六进制HexadecimalHexadecimal元素元素0,1,2,3,4,5,6,7,8,90,10,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F组数组数123.45(D)101.01B2A.BH,0CE2.3DH科学科学表示表示1 102+2 101+3 100+4 10-1+5 10-2 1 22

3、+0 21+1 20+0 2-1+1 2-22 161+10 160+11 16-1 示例示例+123+133+1234501111011B10000101B0011000000111001B7BH85H3039Hu一个二进制数可以表示不同的真值,关键在于数的性质和编码一个二进制数可以表示不同的真值,关键在于数的性质和编码方法;同一真值,也可以用不同字长的二进制数表示。方法;同一真值,也可以用不同字长的二进制数表示。u二进制数的字长:位二进制数的字长:位(BitBit), ,字节字节(ByteByte), ,字字(WordWord), ,双字双字(DWDW)真值机器数一、一、数制及其转换数制及

4、其转换正整数的表示数制之间转换102102:整数部分:除整数部分:除2 2取余,直到商为取余,直到商为0 0。 小数部分:乘小数部分:乘2 2取整,直到要求精度。取整,直到要求精度。210210:用公式展开。用公式展开。216216:以小数点为界,整数向左,小数向右,四位一段,以小数点为界,整数向左,小数向右,四位一段,不够不够4 4位补位补0 0,四位,四位2 2进制数转一位进制数转一位1616进制数。进制数。162162:一位十六进制数用四位二进制数等价表示。一位十六进制数用四位二进制数等价表示。二、二、常用信息编码常用信息编码非数值的表示 在日常生活中,编码问题是经常会遇到的。在日常生活

5、中,编码问题是经常会遇到的。例如:电话号码、房间编码、班级号和学号等。例如:电话号码、房间编码、班级号和学号等。这些编码问题的共同特点是采用十进制数字来为这些编码问题的共同特点是采用十进制数字来为用户、房间、班级和学生等编号的。用户、房间、班级和学生等编号的。 由于计算机只能识别二进制数,因此键盘上由于计算机只能识别二进制数,因此键盘上所有的数字、字母和符号也必须事先为它们进行所有的数字、字母和符号也必须事先为它们进行二进制编码,以便机器对它们加以识别、存储、二进制编码,以便机器对它们加以识别、存储、处理和传送。处理和传送。1 1、BCDBCD码码 (Binary Coded Decimal)

6、 BCDBCD码是十进制数的一种二进制表示形式。为了方便码是十进制数的一种二进制表示形式。为了方便十进制与机器数的变换,用十进制与机器数的变换,用4 4位二进制数来表示位二进制数来表示1 1位十进制位十进制数。数。 4 4位二进制数共有位二进制数共有1616种组合,其中种组合,其中0000000010011001作为作为BCDBCD码,码,1010101011111111未被使用,称为非法码或冗余码。未被使用,称为非法码或冗余码。BCD码 十进制 BCD码 十进制 举例0000001015压缩BCD码:85=10000101B非压缩BCD码:85=00001000 00000101B00011

7、011060010201117001131000801004100192 2、ASCIIASCII码码 American Standard Code for Information Interchange 现代微型计算机不仅要处理数字信息而且还需要处理现代微型计算机不仅要处理数字信息而且还需要处理大量文字信息。这就需要人们对这些文字符号进行二进制大量文字信息。这就需要人们对这些文字符号进行二进制编码,以供微型计算机识别、存储和处理。编码,以供微型计算机识别、存储和处理。 ASCIIASCII码是码是“美国信息交换标准代码美国信息交换标准代码”的简称,诞生的简称,诞生于于19631963年,已成

8、为国际通用的标准编码,广泛用于微型年,已成为国际通用的标准编码,广泛用于微型计算机中。计算机中。 计算机中,键盘输入信息和显示器输出的信息均采用计算机中,键盘输入信息和显示器输出的信息均采用ASCIIASCII码,串行通信中也常采用码,串行通信中也常采用ASCIIASCII码来传送信息。码来传送信息。uASCIIASCII码由码由7 7位二进制数构成,可为位二进制数构成,可为128128个字符编码个字符编码。这。这128128个字符共分两类:个字符共分两类:3232个控制字符和个控制字符和9696个图形字符。个图形字符。u9696个图形字符包括十进制数符个图形字符包括十进制数符1010个、大小

9、写英文字母个、大小写英文字母5252个和标点符号等个和标点符号等3434个。例如:个。例如: 数字数字0909的的ASCIIASCII码为码为3030H39HH39H; 大写字母大写字母AZ AZ 的的ASCIIASCII码为码为4141H5AHH5AH。 图形字符有特定形状,可以显示在图形字符有特定形状,可以显示在CRTCRT上和打印在纸上,上和打印在纸上,其编码可以存储、传送和处理。其编码可以存储、传送和处理。u3232个控制字符包括回车符、换行符、退格符、设备控制符个控制字符包括回车符、换行符、退格符、设备控制符和信息分隔符等,这类字符没有特定形状,其编码虽然可和信息分隔符等,这类字符没

10、有特定形状,其编码虽然可以存储、传送和起某种控制作用,但字符本身是不能在以存储、传送和起某种控制作用,但字符本身是不能在CRTCRT上显示和打印机上打印的。上显示和打印机上打印的。3 3、汉字编码汉字编码u目前计算机中最常用的是GB2312-1980国标码。该标准编码集共收录汉字和图形符号7445个。uGB2312标准规定,每个图形字符采用两个字节表示,每个字节的最高位为0,其余7位为有效编码。第一个字节标识区号,第二字节标识位号,这种编码方式称为区位码。例如“国”字处于代码表的25区90位,区位码则为2590,用二进制表示为195AH。u由于01H20H与标准ASCII码中的控制符容易产生冲

11、突,因此,需要在区号和位号上分别加上20H,这样形成的编码,称之为国标码,国标码是信息交换中使用的标准编码,它与区位码一一对应。比如“国”的区位码为195AH,其国标码为397AH。u注意到国标码两个字节的最高位均为0,为了区别于标准ASCII码,通常汉字编码的存储和传送不能直接采用国标码,而是采用内码的编码形式进行。所谓汉字的内码,是将国标码的两个字节最高位上的“0“变成“1”,或者说,将国标码的高位和低位字节分别加上80H即可得到。例如,汉字“国”的国标码为397A H,内码为B9FAHu汉字三种编码之间的关系如下:2020H8080H区位码国标码内码4 4、奇偶校验码奇偶校验码 在计算机

12、串行通信中,常利用传送信息字在计算机串行通信中,常利用传送信息字节的奇偶性(字节中节的奇偶性(字节中1 1的个数是奇数的个数是奇数/ /偶数?)偶数?)来检测通信过程中是否出错,这种信息编码成为来检测通信过程中是否出错,这种信息编码成为奇偶校验码。奇偶校验码。 关于奇偶校验的编码方法,将在串行通信一关于奇偶校验的编码方法,将在串行通信一节中介绍。节中介绍。一、真值与机器数一、真值与机器数真值:真值: 以人们习惯的自然方式表示的十进制数,称为该数以人们习惯的自然方式表示的十进制数,称为该数的真值。譬如:的真值。譬如:+123, -86, -12.3+123, -86, -12.3。机器数:机器数

13、:在计算机中,将一个数连同其符号用二进制数来表在计算机中,将一个数连同其符号用二进制数来表示,这样的二进制数称为机器数。譬如:示,这样的二进制数称为机器数。譬如:10111101, 10111101, 01011010110100110101101011010011。如何确定一个机器数的真值?如何确定一个机器数的真值?如何分辨一个机器数的正负?如何分辨一个机器数的正负?如何分辨一个机器数的小数位置?如何分辨一个机器数的小数位置?这些问题都取决于这些问题都取决于机器数的编码规则机器数的编码规则!第第3节节数值信息的编码与运算数值信息的编码与运算1. 原码原码编码方法示例(+73) = 01001

14、001B,(+73) = 0000000001001001B(-73) = 11001001B,(- 73) = 1000000001001001B(+0) = 00000000B(- 0) = 10000000B特点u范围:字节范围:字节-127+127;字型;字型- 32767+32767u唯一性:不唯一,存在唯一性:不唯一,存在-0和和+0之分。之分。u负数的原码:仅对其正数的符号位取反。负数的原码:仅对其正数的符号位取反。0/10/10/10/10/10/1数的绝对值符号位:0正,1负2. 反码反码编码方法示例+73= 01001001B,+73 =0000000001001001B-

15、 73= 10110110B,- 73 =1111111110110110B+0 = 00000000B- 0 = 11111111B特点u范围:字节范围:字节-127+127;字型;字型-32767+32767u唯一性:不唯一,存在唯一性:不唯一,存在-0和和+0之分。之分。u负数的反码:对其正数连同符号位一起取反。负数的反码:对其正数连同符号位一起取反。0/10/10/10/10/10/1正数取其本身,负数按位取反符号位:0正,1负3. 补码补码编码方法示例+73= 01001001B,+73= 0000000001001001B- 73= 10110111B,- 73= 11111111

16、10110111B+0 = 00000000B- 0 = 11111111B+1 = 00000000B = +0特点u范围:字节范围:字节-128+127;字型;字型-32768+32767u唯一性:唯一。而且只有补码中唯一性:唯一。而且只有补码中(+X)+(-X)=0u负数补码:对其正数连同符号位一起求补负数补码:对其正数连同符号位一起求补(用用0减减)。0/10/10/10/10/10/1符号:0正,1负正数取其本身;负数求补:按位取反加100H 0 40H +64 C0H -64 7FH +127 80H -0 FFH -127原原码码00H 0 40H +64 C0H -64 7FH

17、 +127 80H -128 FFH -1补码补码在表示范围内,在表示范围内,数值运算是连续数值运算是连续和统一的。和统一的。00H +0 40H +64 C0H -63 7FH +127 80H -127 FFH -0反反码码超出范围,超出范围,数值溢出。数值溢出。三种码制之间的关系三种码制之间的关系u特点:特点:l正数:原正数:原- -反反- -补相同;补相同;l负数:原负数:原- -反反- -补不同,但最高位均为补不同,但最高位均为1 1。u负数的变换关系:负数的变换关系:l原原 反:符号位不变,尾数按位求反;反:符号位不变,尾数按位求反;l原原 补:符号位不变,尾数按位求反补:符号位不

18、变,尾数按位求反+1+1;l正数补正数补 负数补:连符号位一起求反加负数补:连符号位一起求反加1 1(用(用0 0减);减);二、 二进制数的运算1. 1. 运算特点运算特点 为了提高计算速度、合理分配内存和使用寄存器,参与为了提高计算速度、合理分配内存和使用寄存器,参与运算的所有数(变量)都必须运算的所有数(变量)都必须事先规定字长和类型事先规定字长和类型。而且,。而且,参与运算的两个数必须参与运算的两个数必须具有相同的字长和类型具有相同的字长和类型。u字长字长:字节、字、双字、四字:字节、字、双字、四字 字长一定,数的范围就有限。如果运算结果超出这个范字长一定,数的范围就有限。如果运算结果

19、超出这个范围,就会产生围,就会产生溢出溢出,造成结果错误。,造成结果错误。u类型类型:自然数、整数、实数:自然数、整数、实数以C语言程序为例例1:字长不够Main( ) unsigned char x,y,z; x=123; y=67; z=x*y; Printf(“%d”,z);运算结果:运算结果:49运算结果的来历:123 = 01111011B 67 = 01000011B123*67= 8241= 2031H即123*67=0010000000110001B而00110001B=49以C语言程序为例例2:类型不符Main( ) unsigned char x,y,z; x= -12;

20、y= 7; z= x*y; Printf(“%d”,z);运算结果:运算结果:172运算结果的来历:-12 = 11110100B 7 = 00000111B-12*7= -84 如果将11110100B看作无符号数,则11110100B= 244244*7=1708=06ACH=0000011010101100B而10101100B=1722. 2. 运算标志运算标志u进位进位(借位):两个二进制数加(减)法运算,最高位出现(借位):两个二进制数加(减)法运算,最高位出现的进位(借位)现象。的进位(借位)现象。 在多字节数加(减)法中,低位字节向高位字节的进(借)在多字节数加(减)法中,低位

21、字节向高位字节的进(借)位是必须考虑的。因此,在计算机中,都设有一个位存储单元位是必须考虑的。因此,在计算机中,都设有一个位存储单元来保留进(借)位,称作来保留进(借)位,称作进位标志进位标志(CFCarry FlagCFCarry Flag)。)。u溢出溢出:溢出是针对:溢出是针对有限字长有限字长的补码运算而言的。当两个补码的补码运算而言的。当两个补码数的运算结果超出字长所能表示的范围时,运算结果将出错,数的运算结果超出字长所能表示的范围时,运算结果将出错,不仅数值不对,而且性质(正不仅数值不对,而且性质(正/ /负)也不对。在计算机中,也负)也不对。在计算机中,也设有一个位存储单元来保留溢

22、出位,称作设有一个位存储单元来保留溢出位,称作溢出标志溢出标志(OFOFOver FlagOver Flag)。)。3. 3. 补码运算补码运算 在计算机中,自然数的运算规则与十进制数是相同的。在计算机中,自然数的运算规则与十进制数是相同的。对于整数,只要采用补码,也具有类似的规则:对于整数,只要采用补码,也具有类似的规则: X+YX+Y补补=XX补补+YY补补 X-YX-Y补补=XX补补+-+-YY补补 采用补码运算后,利用一个加法器既可以实现自然数和整采用补码运算后,利用一个加法器既可以实现自然数和整数的加法运算,也可以实现减法运算,从而使微处理器的逻数的加法运算,也可以实现减法运算,从而

23、使微处理器的逻辑结构大为简化。辑结构大为简化。 采用补码做加法时,应注意:采用补码做加法时,应注意:(1 1) 把符号位当作数据,一同参与运算。把符号位当作数据,一同参与运算。(2 2) 符号位相加后,若有进位,则把进位舍去。符号位相加后,若有进位,则把进位舍去。例如:已知例如:已知X = +33, Y= -15,求求X+Y= ?解:解:X补补=00100001B,Y补补=11110001B 00100001 =X补补 + 11110001 =Y补补 自然丢失自然丢失 (1) 00010010 =X+Y补补X+Y=X+Y补补=00010010B=18例如:已知例如:已知X=-33, Y= +1

24、5,求求X-Y= ?解:解:X补补=11011111B,-Y补补=11110001B 11011111 =X补补 + 11110001 =-Y补补 自然丢失自然丢失 (1)11010000 =X-Y补补X-Y=X-Y补补=11010000B=- 484. 4. 溢出判别溢出判别u溢出意味着计算结果是错误的,是由于字长限制所致溢出意味着计算结果是错误的,是由于字长限制所致。因此,因此,计算结束后,判断是否发生溢出是非常重要的。计算机运行计算结束后,判断是否发生溢出是非常重要的。计算机运行中会自动判别是否溢出,并给出相应标志中会自动判别是否溢出,并给出相应标志溢出标志溢出标志OFOF。计算机采用计

25、算机采用双高位判别法双高位判别法,请大家参照教材,请大家参照教材。u人可以根据自然结果来判别,譬如:人可以根据自然结果来判别,譬如:8 8位数计算:位数计算:(120+30)(120+30)其结果显然会溢出,因为其结果其结果显然会溢出,因为其结果150150已超出已超出8 8位补码数的范围位补码数的范围(-128(-128127).127).1616位数计算:位数计算:(123-12345)(123-12345)其结果不会溢出,因为其结其结果不会溢出,因为其结果果(-12222)(-12222)没有超出没有超出1616位补码数的范围位补码数的范围(-32768(-3276832767)3276

26、7)。三、定点数与浮点数三、定点数与浮点数 小数的表示小数的表示 在计算机中,用二进制表示实数的方法有两种,即在计算机中,用二进制表示实数的方法有两种,即定点法和浮点法。定点法和浮点法。u定点法定点法:即小数点在数中的位置是固定不变的。以定点法:即小数点在数中的位置是固定不变的。以定点法表示的实数称作表示的实数称作定点数定点数。u浮点法浮点法:类似于十进制数的科学表示法,小数点的位置是:类似于十进制数的科学表示法,小数点的位置是浮动的,且由阶数来指示。以浮点法表示的实数称作浮动的,且由阶数来指示。以浮点法表示的实数称作浮点浮点数数。1. 1. 定点数定点数u设有一个设有一个8位定点补码数,小数

27、点隐含地固定在第位定点补码数,小数点隐含地固定在第4位:如位:如1101.1101B 代表代表 -2.1875。u特例特例1定点小数定点小数:u特例特例2定点整数定点整数:u优缺点:简单直观,但精度低、不便优缺点:简单直观,但精度低、不便标准化处理标准化处理。0/10/10/10/10/10/10/10/1小数整数0/10/10/10/10/10/10/10/10/10/10/10/10/10/10/10/1 2. 2. 浮点数浮点数 任意一个二进制数任意一个二进制数N N总可以写成下面的形式:总可以写成下面的形式: N=d2N=d2p p d d 称为称为尾数尾数,是二进制补码定点小数,指明数的全部有,是二进制补码定点小数,指明数的全部有效数字;效数字;p p称为称为阶码阶码,是二进制补码定点整数,指明小数点的,是二进制补

温馨提示

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

评论

0/150

提交评论