“十一五”国家级规划教材微机原理与接口技术(第3版)第1章计算机基本知识本章主要内容工程类课程重视练习经验很重要不要钻牛角尖授课内容有侧重考查方式闭卷考试卷面成绩60%,平时成绩40%(考勤、作业和实验)考勤、作业和实验的重要性,平时成绩对最终成绩的影响本章主要内容2半导体存储器的分类1微型计算机组成1几种进制之间的相互转换3微型计算机中信息的表示及运算1.1微型计算机组成微型计算机的发展计算机之父--冯·诺依曼这台计算机有五个基本部件:输入器、输出器、运算器、存储器和控制器,奠定了当代电子数字计算机体系结构的基础。输入设备运算器输出设备存储器控制器数据流控制流工作特点是程序控制、数据存储、数字编码——电子计算机工作的基础计算机的发展概况第一代:电子管计算机时代(1947~1957)第二代:晶体管计算机时代(1958~1964)第三代:集成电路计算机时代(1964~1972)第四代:超大规模集成电路(VLSI)计算机时代(1972年~)。第五代:智能计算机(1981年~)。微处理器及微型计算机的发展第一代微处理器是以Intel公司1971年推出的4004,4040为代表的四位微处理机。第二代微处理机(1973年~1977年),典型代表有:Intel公司的8080、8085;Motorola公司的M6800以及Zlog公司的Z80。第三代微处理机第三代微机是以16位机为代表,基本上是在第二代微机的基础上发展起来的。其中Intel公司的8088。8086是在8085的基础发展起来的;M68000是Motorola公司在M6800的基础发展起来的;第四代微处理机以Intel公司1984年10月推出的80386CPU和1989年4月推出的80486CPU为代表,第五代微处理机的发展更加迅猛,1993年3月被命名为PENTIUM的微处理机面世,98年PENTIUM2又被推向市场。发展趋势微型化─便携式、低功耗巨型化─尖端科技领域的信息处理,需要超大容量、高速度智能化─模拟人类大脑思维和交流方式,多种处理能力系列化、标准化─便于各种计算机硬、软件兼容和升级网络化─网络计算机和信息高速公路多机系统─大型设备、生产流水线集中管理(独立控制、故障分散、资源共享)微型计算机系统硬件微型计算机(主机)微处理器(CPU)软件外围设备运算器控制器存储器(内存)RAMROM外部设备辅助设备输入设备(键盘、扫描仪、语音识别仪…)输出设备(显示器、打印机、绘图仪、…)辅助存储器(磁带、磁盘、光盘)输入/输出接口(ADC、DAC…)(I/O接口)总线(AB、DB、CB)系统软件(操作系统,编辑、编译程序,故障诊断,监控程序…)应用软件(科学计算,工业控制,数据处理…)程序设计语言(机器语言、汇编语言、高级语言)电源电路时钟电路1.2微型计算机中信息的表示及运算基础常用术语位(Bit):一个二进制位,计算机中信息存储的最小单位。字节(Byte):8个二进制位,1024个字节构成1个千字节,用KB表示。1024KB构成1兆字节,用MB表示。1024MB构成1个千兆(吉)字节,用GB表示。B、KB、MB、GB、都是计算机存储器容量的单位。字(Word)和字长:2字节(16位)成为1个字(Word)。双字节(DoubleWorld)为4字节(32位),四字节(QuadWord)为8字节(64位)。“字”是计算机内部进行数据传递处理的基本单位1.2.1二进制数的表示与运算1、数制的表示一个R进制数具有以下主要特点具有R个不同数字符号:0、1、·······、R-1逢R进一S=an-1an-2…a1a0.a-1a-2…a-m=an-1×Rn-1+an-2×Rn-2+…+a1×R1+a0×R0+a-1×R-1…+a-m×R-m上述R进制数S可用多项式(称为按权展开式)表示为:用an-1an-2…a1a0.a-1a-2…a-m书写表方式示数据的方法称为位置表示法1.2.1二进制数的表示与运算十进制数具有十个不同的数字符号,即0-9逢十进一特点二进制数具有两个不同的数字符号,即0和1逢二进一特点具有十六个不同的数字符号,即0-9和A-F逢十六进一特点十六进制数1.2.1二进制数的表示与运算2、二进制数的运算加法规则:逢2进1减法规则:借1当2乘法规则:1与1乘为1,其它为0(1)算术运算2、二进制数的运算逻辑非(NOT)运算:01,10逻辑与(AND)运算:001101010001(2)逻辑运算1.2.1二进制数的表示与运算2、二进制数的运算逻辑或(OR)运算:001101010111逻辑异或(XOR)运算:001101010110(2)逻辑运算1.2.1二进制数的表示与运算1.2.2二-十进制(BCD)数的表示与运算1、二-十进制数的表示用4位二进制数编码表示十进制数称为BCD数二进制数十进制数(BCD)二进制数十进制数(BCD)000000101500011011060010201117001131000801004100191.2.2二-十进制(BCD)数的表示与运算2、二-十进制数的加、减运算运算规则:逢10进11010~1111这6个编码没有用到,是无意义的编码。加法运算后的十进制调整规则若加法和的个位大于9或向十位有进位,则需要“加6调整”。即,所得和要加上00000110BCD若加法和的十位大于9或向百位有进位,则需要“加60调整”。即,所得和要加上01100000BCD减法运算后的十进制调整规则若减法差的个位大于9或向十位有借位,则需要“减6调整”。即,所得和要减去00000110BCD若减法差的十位大于9或向百位有借位,则需要“减60调整”即,所得和要减去01100000BCD。1.2.2二-十进制(BCD)数的表示与运算1.2.2二-十进制(BCD)数的表示与运算2、二-十进制数的加、减运算例:10001000(BCD)+01101001(BCD)=000101010111(BCD)10001000+0110100111110001+01100110……调整101010111进位例:10001000(BCD)-01101001(BCD)=00011001(BCD)10001000-0110100100011111-0110……调整000110011.2.2二-十进制(BCD)数的表示与运算1.2.3十六进制数的表示与运算1、十六进制数的表示用4位二进制数编码表示十六进制数:0~9,A~F二进制数(B)十六进制数(H)二-十进制数(BCD)十进制数(D)00000000001111001022200113330100444010155501106660111777100088810019991010A×101011B×111100C×121101D×131110E×141111F×151.2.3十六进制数的表示与运算2、十六进制数的加、减运算加法运算规则:逢16进1减法运算规则:借1当161.2.3十六进制数的表示与运算1、符号的表示方法机器中,数的符号用“0”、“1”表示。最高位作符号位,“0”表示“+”,“1”表示“-”1.2.4带符号二进制数的表示和运算1.2.4带符号二进制数的表示和运算2、带符号数的表示正数的符号位用0表示,负数的符号位用1表示,数值位保持不变。这种方法称为原码。1.2.4带符号二进制数的表示和运算(1)原码例如当机器字长n=8时,[+0D]原=00000000,[-0D]原=10000000[+1D]原=00000001,[-1D]原=10000001[+45D]原=00101101,[-45D]原=10101101[+127D]原=01111111,[-127D]原=111111110的表示不惟一1.2.4带符号二进制数的表示和运算1.2.4带符号二进制数的表示和运算2、带符号数的表示正数的符号位用0表示,负数的符号位用1表示。正数的反码与原码相同负数的反码为:最高位为1,表示数值的位按位取反。(2)反码例如当机器字长n=8时,[+0D]反=00000000,[-0D]反=11111111[+1D]反=00000001,[-1D]反=11111110[+45D]反=00101101,[-45D]反=11010010[+127D]反=01111111,[-127D]反=100000000的表示不惟一1.2.4带符号二进制数的表示和运算1.2.4带符号二进制数的表示和运算2、带符号数的表示正数的符号位用0表示,负数的符号位用1表示。正数的补码与原码相同负数的补码为:最高位为1,表示数值的位按位取反然后+1。(3)补码1.2.4带符号二进制数的表示和运算注意用补码对带符号数进行编码,是计算机中常用的方法。例如当机器字长n=8时,[+0D]补=00000000,[-0D]补=00000000[+1D]补=00000001,[-1D]补=11111111[+45D]补=00101101,[-45D]补=11010011[+127D]补=01111111,[-127D]补=100000010的表示惟一真值带符号数十进制格式二进制数格式原码反码补码000000000000000000000000000000000100000001000000010000000100000001……………+12601111110011111100111111001111110+12701111111011111110111111101111111-128-10000000无无10000000-127-01111111111111111000000010000001……………-1-00000001100000011111111011111111-0-000000001000000011111111000000001.2.4带符号二进制数的表示和运算1.2.4带符号二进制数的表示和运算3、带符号数的运算加法运算:补码直接相加。减法运算:减数变补相加,丢弃进位。1.2.4带符号二进制数的表示和运算由于计算机的字长有限,因此,所能表示的数是有范围的。例如8位二进制补码表示的整数范围是-128D~+127D;当运算结果超过这个范围时,运算结果将出错,这种情况称为溢出。产生溢出的原因是数值的有效位占据了符号位。1.2.4带符号二进制数的表示和运算微型机中常用的溢出判别法:双高位判别法CF:如最高位(符号位)有进位,CF=1,否则,CF=0。CP:如次高位有进位,CP=1,否则,CP=0。判别法则:无溢出:若最高位进位CF和次高位进位CP相同同为0或同为1有溢出:CF和CP相异。当CF⊕CP=1时,表示有溢出产生,否则无溢出产生正溢出:CF=0,CP=1负溢出:CF=1,CP=01.2.4带符号二进制数的表示和运算4、带符号数的符号扩展表示无符号数扩展:在数据前补O有符号数扩展:正数前补O,负数补码前补1+500000101B(8位)0000000000000101B(16位)-510000101B(8位)11111011B(8位补码)1111111111111011B(16位补码)1.2.5字符的编码表示在计算机中处理的信息并不全是数,还有字符或字符串。例如,姓名、编号等信息。因此,计算机必须能表示和处理字符。80x86系列计算机中采用美国标准信息交换代码——ASCII(AmericanStandardCodeforInformationInterchange)来表示一个字符。1、ASCII表示标准ASCII码用7位二进制数编码,共有128个。计算机存储器基本单位为8位,ASCII码最高位通常为0,通信时,最高位用作奇偶校验位。ASCII码表中的前32个和最后1个编码是不能显示的控制字符,用于表示某种操作。ASCII码表中20H后的94个编码是可显示和打印的字符,其中包括数码0~9,英文字母,标点符号等。字符的ASCII值