第一章:计算机基础1本章内容提要21微机的发展历史,微机系统组成,三总线概念2微处理器构造及其指令执行过程3进位计数值(2、8、10、16进制)及其相互转换,二进制数的运算规则4编码(BCD码,ASCII码,汉字码,图形信息编码)5无符号数及带符号数的表示方法;机器数和真值;带符号数的编码和运算;定点数和浮点数¾本章难点:机器数与真值、溢出的判断方法第一节:计算机的基本概念34¾电子计算机的定义:电子计算机是一种能够自动而又精确地对信息进行处理的现代化电子设备。¾电子计算机的起源:为了加快计算速度与精度,人们一直在尝试制造计算机——从机械计算机到电子计算机第一台具有现代意义的电子计算机ENIAC(ElectronicNumericalIntegratorAndComputer)电子计算机理论的创立5冯·诺依曼(VonNeumann)确立了现代计算机的基本理论¾计算机由5个基本部件构成:输入器、输出器、运算器、存储器和控制器¾采用二进制进行运算¾引入存储器存储程序和数据,计算机自动高速的从存储器取出指令并执行指令这些基本原则至今仍然被现代计算机所采用,因此现代计算机一般被称为冯·诺依曼结构计算机。6计算机的发展史¾第一代:电子管计算机时代(1946—1957年)¾第二代:晶体管计算机时代(1958—1964年)¾第三代:集成电路计算机时代(1964—1972年)¾第四代:大规模集成电路计算机时代(1972年至今)¾目前又提出了所谓第五代计算机•特大规模集成电路ULSI(UltraLargeScaleIntegration)•超大规模集成电路SLSI(SuperlargeScaleIntegration)•巨大规模集成电路GLSI(GreatLargeScaleIntegration)7微型机的发展史计算机发展到第四代出现了微处理器(CPU-CentralProcessingUnit),它的发展代表了微型机的发展史,大致可分为5代:¾第一代微处理器(1971—1973年)¾第二代微处理器(1974—1978年)¾第三代微处理器(1978—1981年)¾第四代微处理器(1981—1992年)¾第五代微处理器(1992年~至今)8计算机的分类1.巨型机(超级计算机)2.大中型机3.小型机4.微型机5.工作站计算机的发展将走向两个极端:巨型化和微型化Next9超级计算机问世1996年12月2日,美国英特尔公司为美能源部开发出世界上速度昀快的超级计算机,每秒可运算1.4万亿次,在超级计算机发展史上首次突破每秒万亿次大关。该计算机开发耗资5500万美元。它将主要用来模拟核实验,并进行天气和自然灾害预报,基因研究、太空模拟实验等数据量非常巨大的研究工作。10世界之昀蓝色基因BlueGene/L是目前世界常昀快的超级计算机,其峰值速度能够达到360万亿次浮点计算。这台超级计算机内部拥有65536颗处理器,同样运行着Linux操作系统,并在应用程序领域有所创新。这是IBM公司、利弗莫尔实验室和美国能源部联合制作完成的超级计算机。它被广泛应用在生命科学、气象预测、天文观测、材料科学、数字电影特效等领域。11Return12微型计算机的分类1、单片微型计算机2、单板微型计算机3、多板微型计算机13微型机系统的组成完整的微机系统包括硬件和软件两部分组成:微机系统结构图14微机系统软件¾微型计算机的软件分为系统软件和用户软件(应用软件)。•系统软件是指不需要用户干预的能生成、准备和执行其它程序所需的一组程序。•用户软件是各用户为解题或实现检测与实时控制等不同任务所编制的应用程序。¾程序设计分为3级:①机器语言程序设计;②汇编语言程序设计;③高级语言程序设计。15微机系统硬件结构16总线的概念¾总线:所谓总线,是连接多个功能部件或多个装置的一组公共信号线¾按所传送信息的类型总线可分为:9数据总线DB(DataBus):传送计算机中的数据信息的信号线(双向,三态)9地址总线AB(AddressBus):传送计算机中的地址信息的信号线9控制总线CB(ControlBus):传送计算机中的控制信息的一组总线¾按在系统中的不同位置,总线还可分为:9内部总线9外部总线17CPU的基本结构控制器运算器18CPU的基本结构¾微型计算机中的运算器和控制器合起来称为CPU,人们把CPU称为微处理器Microprocessor¾内部采用总线、累加器结构,管脚功能分时复用,广泛采用三态电路(TSL)等。引脚采用分时复用技术可节约成本,但系统的复杂性增加¾寄存器阵列RA(RegisterArray)•通用寄存器R1~R8•程序计数器PC(ProgramCounter)•堆栈指针SP(StackPointer)19CPU的基本结构¾运算器•累加器A(Accumulator)它有两个功能:运算前寄存第一操作数,是ALU的一个操作数的输入端;运算后存放ALU的运算结果。它既是操作数寄存器又是结果寄存器。•暂存器TMP(Temporary)•算术逻辑单元ALU(ArithmeticLogicUnit)由并行加法器和其它逻辑电路(如移位电路、控制门等)组成。完成各种算术逻辑运算及其它一些操作。•标志寄存器F(Flag)或称程序状态字(PSW)20CPU的基本结构¾控制器•指令寄存器IR(InstructionRegister)•指令译码器ID(InstructionDecoder)•定时控制电路(TimingandControl)¾数据和地址缓冲器简称总线缓冲器,是数据或地址信号的进出口。用来隔离微处理器内部总线和外部总线,并提供附加的驱动能力及信号整形功能。21存储器概述¾存储器是用来存放程序和数据的。在机器内部,程序和数据都是用二进制代码的形式表示。¾区分:存储单元地址与存储单元内容¾常用的存储容量单位9位(bit):记作b9字节(Byte):记作B1B=8b9千字节(210字节):记作KB,1KB=1024B9兆字节(220字节):记作MB,1MB=1024KB9GB(230字节):1GB=1024MB9TB(240字节):1TB=1024GB22存储器结构图1位/4位/8位随机存取存储器地址译码器××××××××┇┇××××00010203FEFF控制电路数据缓冲器DR从CPU来的R/W信号存储体地址寄存器AR存储芯片地址输入引脚控制信号引脚数据输入输出引脚23存储器的操作过程3EHDB8位随机存取存储器地址译码器00111110××××××┇┇××××00010203FEFF控制电路RD00HAB825HDB8位随机存取存储器地址译码器××××××00100101┇┇××××00010203FEFF控制电路WR03HAB8读操作写操作24存储器的特点¾读操作完成后,原存储单元中的内容仍保持不变,它允许多次读出同一单元的内容。¾对存储单元执行写入操作将破坏该存储单元原存储的内容,即由新内容代替了原来存储的内容,原来储存内容将被清除。1.随机存取存储器RAM(RandomAccessMemory)。所谓“随机存取”即所有存储单元均可随时被访问,既可以读出也可以写入信息。2.只读存储器ROM(ReadOnlyMemory),只能读出内容的存储器第二节微型计算机的数制及其转换2526主要内容1.进位计数制与二进制2.进位计数制之间的转换3.信息在计算机中的编码27进位计数制¾r进制计数的一般表达式r——r进制计数制的基ri——r进制计数制第i位的权ai——第i位的取值ai=0,1,…r-1进位计数制的实质是位置计数法,不同位置的权值不同。[]mmnnnnrrararararaA−−−−−−−−×++×+×++×+×±=LLLL11002211∑−−×±=1Nmiira28常用计数值及其标记方法¾常用的计数制有二、八、十和十六进制¾标记方法1:把数加上方括号,并在方括号右下角标注数制代号,如[101]16、[101]8、[101]2和[101]10分别表示十六进制、八进制、二进制和十进制¾标记方法2:用英文字母标记,加在被标记数的后面,分别用B(Binary)、Q(Octal)、D(Decimal)和H(Hexadecimal)大写字母表示二进制、八进制、十进制和十六进制数,其中,十进制数中的D可以省略。如77Q为八进制数、101B为二进制数为避免混淆,规定以字符打头的十六进制数前面必须加0。例如:0F789H,0FACEH。29十进制计数¾基数为10,逢十进位¾第i位权值为10i¾第i位取值范围为0~9例:123.45=1×102+2×101+3×100+4×10-1+5×10-230二进制计数¾基数为2,逢二进位¾第i位权值为2i¾第i位取值范围为0,1例:10110.11B=1×24+0×23+1×22+1×21+0×20+1×2-1+1×2-2=1×24+1×22+1×21+1×2-1+1×2-2=22.75D¾目前,绝大多数的计算机采用二进制计数31八进制计数¾基数为8,逢八进位¾第i位权值为8i¾第i位取值范围为0~7例:35.71Q=3×81+5×80+7×8-1+1×8-2=29.890625D32十六进制计数¾基数为16,逢十六进位¾第i位权值为16i¾第i位取值范围为0~9A~F例:70F.B1H=7×162+F×160+B×16-1+1×16-2=1807.6914D¾十六进制数在本课程中常用33任意进制数转换为十进制¾任意进制数转换为十进制:按权值展开相加例如:10110.11B=1×24+0×23+1×22+1×21+0×20+1×2-1+1×2-2=1×24+1×22+1×21+1×2-1+1×2-2=22.75D35.71Q=3×81+5×80+7×8-1+1×8-2=29.890625D70F.B1H=7×162+F×160+B×16-1+1×16-2=1807.6914D34十进制数转换为任意进制数¾十进制数转换为任意进制数(整数与小数分别处理)9整数部分采用除基取余法设任意十进制正整数A,可表示为r进制:上式两边除以r,则有:因0=a0=r-1且为整数,a0即为除法后的余数。因此,数A第一次除以基数r后的余数即为r进制数的最低位。重复上述过程直至商为0,可依次得到r进制数的系数举例P21~P230112211arararaAnnnn+×++×+×=−−−−LLraarararAnnnn//013221+++×+×=−−−−LL35十进制数转换为任意进制数¾小数部分采用乘基取整法设任意十进制小数B,可表示为r进制小数上式两边乘以r,则有:可见,十进制小数乘以一次基数r后,乘积的整数部分即为r进制小数的昀高位。重复上述运算,可依次得到r进制小数的各位系数。¾任何十进制整数都可以精确转换成一个r进制整数,但十进制小数却不一定可以精确转换成一个r进制小数,小数转换位数视精度要求确定举例P22~P23mmrbrbrbB−−−−−−×+×+×=LL22111121+−−−−−×+×+=×mmrbrbbrBLL36二进制与八进制数之间的转换¾二进制转换为八进制数可采用“三位合一位法”。“三位合一位法”法则是:从二进制数的小数点开始,向左或向右每三位,不是三位以0补足之(整数部分不足3位,左边补0;小数部分不足3位,右边补0),然后分别把每组用八进制数码表示,并按序相连。举例¾八进制转换成二进制数这种转换方法是把八进制数的每位分别用三位二进制数码表示,然后把它们连成一体。举例37二进制与十六进制数之间的转换¾二进制数转换成十六进制数可采用“四位合一位法”。“四位合一位法”法则是:从二进制数的小数点开始,向左向右每四位,不是四位以0补足之(整数部分不足4位,左边补0;小数部分不足4位,右边补0),然后分别把每组用十六进制数码表示,并按序相连。举例¾十六进制转换成二进制数这种转换方法是把十六进制数的每位分别用四位二进制数码表示,然后把它们连成一体。举例38BCD码¾BCD码用4位二进制数字编码表示为十进制数字即为BCD(Binary-CodedD