1第一章微型计算机基础知识1.1计算机中的数和编码1.2逻辑单元和逻辑部件1.3微型计算机的结构和工作原理1.48086/8088微处理机1.58086/8088存储器结构和堆栈1.680x86系列微处理器21.1计算机中的数和编码1.1.1计算机中的数制1.1.2符号数的表示法1.1.3二进制数的加减运算1.1.4二进制数的逻辑运算和逻辑电路1.1.5二进制编码1.1.6BCD数的加减运算31.2逻辑单元和逻辑部件1.2.1触发器1.2.2寄存器1.2.3移位寄存器1.2.4计数器1.2.5三态输出门与缓冲放大器1.2.6译码器41.3微型计算机的结构和工作原理微型计算机常用的术语微型计算机的基本结构计算机的工作原理51.3.1微型计算机常用的术语•bit•1Mb=10241024bit=220bit•1Gb=230bit=1024Mb•1Tb=240bit=1024Gb•Byte•1Byte=8bit,1KB=1024Byte•Word:表示字长,有1bit,4bit,8bit,16bit等一般情况下为2Byte(16bit)•指令:规定计算机进行某种操作的命令•程序:指令的有序集合•指令系统:全部指令61.3.2微型计算机的基本结构掌握:微机系统的基本组成微型机的结构7一、微型计算机系统组成微型计算机系统的三个层次微处理器(Microprocessor)微型计算机(Microcomputer)微型计算机系统(MicrocomputerSystem)8微型计算机系统的三个层次微处理器存储器I/O接口总线硬件系统软件系统微型计算机系统微型计算机外设ALU寄存器控制器键盘、鼠标显示器软驱、硬盘、光驱打印机、扫描仪系统软件应用软件9核心级——微处理器微处理器简称CPU,是计算机的核心,主要包括:运算器ALU控制器CU寄存器组Registers实现运算功能和控制功能10硬件系统级——微型计算机以微处理器为核心,配上只读存储器(ROM)、读写存储器(RAM)、输入/输出(I/O)接口电路及系统总线等部件,就构成了微型计算机。将CPU、存储器、I/O接口、总线等集成在一片超大规模集成电路芯片上,称为单片微型计算机,简称单片机。11系统级以微型计算机为中心,配以相应的外围设备以及控制微型计算机工作的软件,就构成了完整的微型计算机系统。微型计算机如果不配有软件,通常称为裸机。软件分为系统软件和应用软件两大类。12二、微型计算机的基本结构1.微型计算机的硬件系统微处理器(CPU)存储器输入/输出接口总线13微型计算机的概念结构存储器I/O接口输入设备I/O接口地址总线AB输出设备CPU数据总线DB控制总线CBI/O接口14主机硬件系统——CPU计算机的控制中心,提供运算、判断能力构成:ALU、CU、Registers例:Intel8088、PIII、P4AMDK7CPU的位数:4位、8位、16位、32位是指一次能处理的数据的位数15主机硬件系统——存储器存放程序和数据的记忆装置用途:存放程序和要操作的各类信息(数据、文字、图像、…)内存:ROM、RAM特点:随机存取,速度快,容量小外存:磁盘、光盘、半导体盘、…特点:顺序存取/块存取,速度慢,容量大16•有关内存储器的几个概念内存单元的地址和内容内存容量内存的操作内存的分类17内存单元的地址和内容内存包含有很多存储单元(每个内存单元包含8bit),为区分不同的内存单元,计算机对每个内存单元进行编号,内存单元的编号就称为内存单元的地址1011011038F04H内存单元地址内存单元内容......7654321018内存容量内存单元的个数,以字节为单位。注意:内存空间与内存容量的区别内存容量:某微机配置2条128MB的SDRAM内存条,其内存容量为256MB内存空间:又称为存储空间、寻址范围,是指微机的寻址能力,与CPU的地址总线宽度有关19内存操作读:将内存单元的内容取入CPU,原单元内容不改变;写:CPU将信息放入内存单元,单元中原内容被覆盖;刷新:对CPU透明,仅动态存储器有此操作内存的读写的步骤为:CPU把要读写的内存单元的地址放到AB上若是写操作,CPU紧接着把要写入的数据放到DB上CPU发出读写命令数据被写入指定的单元或从指定的单元读出到DB若是读操作,CPU紧接着从DB上取回数据20内存储器的分类读写存储器(RAM)可读可写易失性,临时存放程序和数据只读存储器(ROM)工作时只能读非易失性,永久或半永久性存放信息21主机硬件系统——输入/输出接口简写为I/O接口,是CPU与外部设备间的桥梁CPUI/O接口外设22接口的功能提供驱动外设的电压或电流;匹配计算机与外设之间的信号电平、速度、信号类型、数据格式等;缓存发给外设的数据、控制命令和外设提供的运行状态信息;DMA(直接存储器存取)控制和中断控制。23主机硬件系统——总线BUS连接多个功能部件的一组公共信号线地址总线AB:用来传送CPU输出的地址信号,确定被访问的存储单元、I/O端口。地址线的根数决定了CPU的寻址范围。CPU的寻址范围=2n,n-地址线根数数据总线DB:在CPU与存储器、I/O接口之间数据传送的公共通路。数据总线的条数决定CPU一次最多可以传送的数据宽度。控制总线CB:用来传送各种控制信号242.微型计算机的软件系统软件:为运行、管理和维护计算机系统或为实现某一功能而编写的各种程序的总和及其相关资料。系统软件应用软件操作系统编译系统网络系统工具软件软件253.微型计算机的物理结构26主板的主要硬件构成CPU插座芯片组(南北桥/HUB)内存插槽高速缓存(现已集成到CPU内部)系统BIOS,提供最基本的硬件控制功能CMOS,存放硬件配置参数总线扩展槽,PCI、ISA串行、并行接口软驱、硬盘、光驱连接插座271.3.3计算机的工作过程存储程序计算机又称为冯•诺依曼型计算机数据和程序均以二进制代码的形式不加区别地存放在存储器中,存放位置由地址指定,地址码也是二进制形式程序由多条有逻辑关系的指令组成指令的长度不等(一般为1~4字节)28存储程序计算机的工作原理程序预先存放在计算机的存储器中,计算机按程序的流程自动地连续取出指令并执行之。为实现自动连续地执行程序,控制器设置一程序计数器PC,它可根据指令的长度自动增量(总是指向下一条指令)。只要给出程序中第一条指令的地址,控制器就可依据存储程序中的指令顺序周而复始地取指令、译码、执行,直到完成全部指令操作为止,即控制器通过指令流的串行驱动实现程序控制。291.48086/8088微处理器主要内容:8086CPU的内部结构和特点;各内部寄存器的功能;30一、概述8088、8086基本类似16位CPU、AB宽度20位差别:指令预取队列:8088为4字节,8086为6字节数据总线引脚:8088有8根,8086有16根8088为准16位CPU,内部DB为16位,但外部仅为8位,16位数据要分两次传送本课程主要介绍8086318086内部由两部分组成:执行单元(EU)总线接口单元(BIU)32二、8086CPU的内部结构外部总线通用寄存器AHALBHBLCHCLDHDLSPBPDISI运算寄存器标志执行部分控制电路ALUEUBIU123456CSDSSSESIP内部暂存器I/O控制电路指令队列缓冲器20位16位段RIP存储器I/O接口取指执行存结果取指执行存结果33指令预取队列(IPQ)指令的一般执行过程:取指令指令译码读取操作数执行指令存放结果34串行工作方式:8086以前的CPU采用串行工作方式:1)CPU执行指令时总线处于空闲状态2)CPU访问存储器(存取数据或指令)时要等待总线操作的完成缺点:CPU无法全速运行解决:总线空闲时预取指令,使CPU需要指令时能立刻得到取指令1执行1取操作数2执行2CPUBUS忙碌忙碌忙碌忙碌存结果1取指令235并行工作方式:8086CPU采用并行工作方式取指令2取操作数BIU存结果取指令3取操作数取指令4执行1执行2执行3EUBUS忙碌忙碌忙碌忙碌忙碌忙碌368088的流水线操作8088CPU包括两大部分:EU和BIUBIU不断地从存储器取指令送入指令队列寄存器IPQ,EU不断地从IPQ取出指令执行EU和BIU构成了一个简单的2工位流水线指令预取队列IPQ是实现流水线操作的关键(类似于工厂流水线的传送带)新型CPU将一条指令划分成更多的阶段,以便可以同时执行更多的指令例如,PIII为14个阶段,P4为20个阶段(超级流水线)37结论指令预取队列的存在使EU和BIU两个部分可同时进行工作,从而提高了CPU的效率;降低了对存储器存取速度的要求388088/8086CPU的特点采用并行流水线工作方式对内存空间实行分段管理:每段大小为16B~64KB用段地址和段内偏移实现对1MB空间的寻址设置地址段寄存器指示段的首地址支持多处理器系统;片内没有浮点运算部件,浮点运算由数学协处理器8087支持(也可用软件模拟)注:80486DX以后的CPU均将数学协处理器作为标准部件集成到CPU内部398088指令执行过程•下面用动画形式演示如下指令的执行过程•1000:100MOVAL,[2000H];A00020•1000:103ADDAL,02H;0402•1000:105HLT;F4–注:–内部结构图是8086,但实际是8088执行过程。如果是8086,则每次可以读取2个字节4041执行单元EU功能:执行指令从指令队列中取指令代码译码在ALU中完成数据的运算运算结果的特征保存在标志寄存器FLAGS中。42执行单元包括算术逻辑单元(运算器)8个通用寄存器(AXBXCXDXSPBPSIDI)1个标志寄存器(FLAGS)EU部分控制电路43总线接口单元BIU功能:从内存中取指令送入指令预取队列负责与内存或输入/输出接口之间的数据传送在执行转移程序时,BIU使指令预取队列复位,从指定的新地址取指令,并立即传给执行单元执行。44(1)四个段地址寄存器CS–––16位代码段寄存器DS–––16位数据段寄存器ES–––16位附加段寄存器SS–––16位堆栈段寄存器BIU的组成45(2)IP–––16位指令指针寄存器指向下一条要取出的指令。(3)20位地址加法器16位内部寄存器提供的信息经地址加法器产生20位地址信息。例:指令的物理地址=CS16+IP46(4)六字节的指令队列取指令与执行指令并行工作,即在一条指令的执行过程中,可以取出下一条或多条指令,在指令队列中排队。47三、8086/8088的内部寄存器含14个16位寄存器,按功能可分为三类8个通用寄存器4个段寄存器2个控制寄存器481.通用寄存器数据寄存器(AX,BX,CX,DX)地址指针寄存器(SP,BP)变址寄存器(SI,DI)49数据寄存器8086含4个16位数据寄存器,它们又可分为8个8位寄存器,即:AXAH,ALBXBH,BLCXCH,CLDXDH,DL常用来存放参与运算的操作数或运算结果50数据寄存器特有的习惯用法AX:累加器。多用于存放中间运算结果。所有I/O指令必须都通过AX与接口传送信息;BX:基址寄存器。在间接寻址中用于存放基地址;CX:计数寄存器。用于在循环或串操作指令中存放循环次数或重复次数;DX:数据寄存器。在32位乘除法运算时,存放高16位数;在间接寻址的I/O指令中存放I/O端口地址。51地址指针寄存器SP:堆栈指针寄存器,其内容为栈顶的偏移地址;BP:基址指针寄存器,常用于在访问内存时存放内存单元的偏移地址。52BX与BP在应用上的区别作为通用寄存器,二者均可用于存放数据;作为基址寄存器,BX通常用于寻址数据段;BP则通常用于寻址堆栈段。BX一般与DS或ES搭配使用BP一般与SS搭配使用53变址寄存器S