微机原理与应用主讲教师:姜涛教学内容:第一章微型计算机基础第二章微型计算机指令系统第三章汇编语言程序设计第四章半导体存储器第五章数字量输入输出第六章模拟量输入输出微机原理与应用第1章、微型计算机基础1.1概述1.2计算机中的数制和编码1.3微型计算机系统的组成、分类和配置1.4微处理器习题第1章、微型计算机基础1.3微型计算机系统的组成、分类和配置1.3.1微型计算机系统的组成5微型计算机系统的三个层次微处理器存储器I/O接口总线硬件系统软件系统微型计算机系统微型计算机(主机)外设ALU寄存器控制器键盘、鼠标显示器软驱、硬盘、光驱打印机、扫描仪系统软件(定义P16)应用软件(二进制,指令系统,汇编)第1章、微型计算机基础1.4微处理器1.4.1Intel8086/8088算术逻辑单元ALU、累加器、专用和通用寄存器、指令寄存器、指令译码器、定时和控制电路图1.98088功能结构图6状态+2控制标志P2178088CPU的内部结构8088内部由两部分组成:执行单元(EU)总线接口单元(BIU)8一、执行单元EU功能:执行指令从指令队列中取指令代码译码在ALU中完成数据的运算运算结果的特征保存在标志寄存器FLAGS中。9执行单元包括算术逻辑单元(运算器)8个通用寄存器1个标志寄存器EU部分控制电路10二、总线接口单元BIU功能:从内存中取指令送入指令预取队列负责与内存或输入/输出接口之间的数据传送在执行转移程序时,BIU使指令预取队列复位,从指定的新地址取指令,并立即传给执行单元执行。三、8088的内部寄存器14个寄存器:P208个通用寄存器、4个段寄存器2个控制寄存器、图1.108086/8088内部寄存器12通用寄存器数据寄存器(AX,BX,CX,DX)地址指针寄存器(SP,BP)变址寄存器(SI,DI)13数据寄存器8088含4个16位数据寄存器,它们又可分为8个8位寄存器,即:AXAH,ALBXBH,BLCXCH,CLDXDH,DL常用来存放参与运算的操作数或运算结果14数据寄存器特有的习惯用法AX:累加器。多用于存放中间运算结果。所有I/O指令必须都通过AX与接口传送信息;BX:基址寄存器。在间接寻址中用于存放基地址;CX:计数寄存器。用于在循环或串操作指令中存放循环次数或重复次数;DX:数据寄存器。在32位乘除法运算时,存放高16位数;在间接寻址的I/O指令中存放I/O端口地址。15地址指针寄存器SP:堆栈指针寄存器,其内容为栈顶的偏移地址;BP:基址指针寄存器,常用于在访问内存时存放内存单元的偏移地址。16BX与BP在应用上的区别作为通用寄存器,二者均可用于存放数据;作为基址寄存器,BX通常用于寻址数据段;BP则通常用于寻址堆栈段。BX一般与DS或ES搭配使用17变址寄存器SI:源变址寄存器DI:目标变址寄存器变址寄存器常用于指令的间接寻址或变址寻址。特别是在串操作指令中,用SI存放源操作数的偏移地址,而用DI存放目标操作数的偏移地址。18段寄存器用于存放逻辑段的段基地址(逻辑段的概念后面将要介绍)CS:代码段寄存器代码段用于存放指令代码DS:数据段寄存器ES:附加段寄存器数据段和附加段用来存放操作数SS:堆栈段寄存器堆栈段用于存放返回地址,保存寄存器内容,传递参数19控制寄存器IP:指令指针寄存器,其内容为下一条要执行的指令的偏移地址FLAGS:标志寄存器状态标志:存放运算结果的特征控制标志:控制某些特殊操作6个状态标志位(CF,SF,AF,PF,OF,ZF)----P213个控制标志位(IF,TF,DF)四、存储器寻址8086、8088储存器管理:分段逻辑地址:段基址,偏移地址内存分段:16位地址结构提供20位地址每段0----64K段的起始地址:高16位(段基址)+低4位(0000)--DS偏移地址:0----64K物理地址:20根地址线----1M内存---------------例子P28段基址:偏移地址21物理地址物理地址..60000H60001H60002H60003H60004H...12HF0H1BH08H存储器的操作完全基于物理地址。问题:8088的内部总线和内部寄存器均为16位,如何生成20位地址?解决:存储器分段22存储器分段高地址低地址段基址段基址段基址段基址最大64KB,最小16B段i-1段i段i+123逻辑地址段基地址和段内偏移组成了逻辑地址段地址偏移地址(偏移量)格式为:段地址:偏移地址物理地址=段基地址×16+偏移地址60002H00H12H60000H0000段基地址(16位)段首地址××ו••×××偏移地址=0002H24BIU中的地址加法器用来实现逻辑地址到物理地址的变换8088可同时访问4个段,4个段寄存器中的内容指示了每个段的基地址段基址段内偏移物理地址+16位20位000025[例]:已知CS=1055H,DS=250AH,ES=2EF0H,SS=8FF0H,DS段有一操作数,其偏移地址=0204H,1)画出各段在内存中的分布2)指出各段首地址3)该操作数的物理地址=?10550H250A0H2EF00H8FF00HCSSSCSDSES解:各段分布及段首址见右图所示。操作数的物理地址为:250AH×10H+0204H=252A4H五、8088引脚图1.128088引脚•地址总线AB:20根•数据总线DB:8或16根•控制总线CB:•指令预取队列:8088为4字节,8086为6字节•数据总线引脚:8088有8根,8086有16根•8088为准16位CPU,内部DB为16位,但外部仅为8位,16位数据要分两次传送六、8088系统总线工作方式最小模式-----单机模式最大模式-----多机模式图1.138086/8088最小模式下的配置工作方式:最小模式-----单机模式最大模式-----多机模式图1.148086/8088最大模式下的配置第1章、微型计算机基础1.4微处理器1.4.2Intel8087协处理器-----浮点数据处理图1.16入栈、出栈操作示意图第1章、微型计算机基础1.4微处理器1.4.3Intel80286----16位CPU图1.1980286功能结构框图地址总线AB:24根;数据总线DB:16根;内存分段管理,支持虚拟内存工作方式:实地址,虚地址保护第1章、微型计算机基础1.4微处理器1.4.4Intel80386-----32位CPU图1.2280386功能结构框图地址总线AB:32根;数据总线DB:32根;内存分段、分页管理,支持虚拟内存工作方式:实地址,虚地址保护,虚拟8086第1章、微型计算机基础1.4微处理器1.4.5Intel80486-----32位CPU地址总线AB:32根;数据总线DB:32根;内存分段、分页管理,支持虚拟内存工作方式:实地址,虚地址保护,虚拟8086时钟频率:33HZ第1章、微型计算机基础1.4微处理器1.4.6Pentium系列微处理器-----64位CPU图1.29Pentium功能框图地址总线AB:36根;数据总线DB:64根;2条流水线2个超高速缓冲器cache时钟频率:66HZ第1章、微型计算机基础1.4微处理器1.4.6Pentium系列微处理器图1.30Pentium的引脚第1章、微型计算机基础1.4微处理器1.4.6Pentium系列微处理器单条多级流水线•1条指令执行分为几个步骤,由CPU的相应功能模块完成各步骤。•同一时间,指令由CPU的不同功能模块执行,实现并行指令执行.第1章、微型计算机基础1.4微处理器1.4.6Pentium系列微处理器-----64位CPU超标量流水线结构------多条多级流水线采用多条流水线,多条指令并行执行。第1章、微型计算机基础1.4微处理器1.4.6Pentium系列微处理器