微机与汇编第3章

上传人:仙*** 文档编号:245583344 上传时间:2024-10-09 格式:PPT 页数:35 大小:509KB
返回 下载 相关 举报
微机与汇编第3章_第1页
第1页 / 共35页
微机与汇编第3章_第2页
第2页 / 共35页
微机与汇编第3章_第3页
第3页 / 共35页
点击查看更多>>
资源描述
,基本概念,(,总线、堆栈等,),Intel 8086,微处理器的结构,Intel 8088,微处理器的结构,本章内容,了解三总线及堆栈的工作原理。,掌握,Intel 8086,系统的构成和工作原理,重点掌握,Intel 8086,微处理器的结构。,学习目的,3.1,8086,微处理器的结构,一、总线,1.,总线的由来,在,计算机中,,CPU,与其他功能部件之间存在大量的信息交流,其间就需要使用通信线路连接起来,通信线的设置和连接可采用两种方式。,(1),专线式,:将各个功能部件分别设置与其它部件通信的线路,,优点,:传送速率高,它只受传送线本身的限制,且控制简单。,缺点,:,机器所需要的信息传送线数量大,增加了复杂性,不便于实现机器的模块和积木化。,(2),总线式,:在多个功能部件之间设置公共的通信线即总线。,图中当,A,和,A,门打开时,信息由,A,传至,A,;,A,和,C,门打开时,信息便从,A,传至,C,。,A,B,C,A,B,C,总 线 示 意 图,总线上能同时传送二进制信息的位数称为总线宽度。见下图。,由于采用了分时传送的总线结构从而大大减少了机器中信息传送线的数目。,a.,分时传送:,多个部件并联在总线上,某一时刻,只允许一路信息在总线上传送。,b.,控制复杂,:,总线的发送端及接收端均有三态门电路。,打开三态门信息经总线传送到目的端。,若不传送信息,则使三态门处于高阻状态,相当于此部件在逻辑上与总线脱离联系。,c.,系统结构简单,便于扩展,。,特点:,2.,总线的分类,总线按信息传送的,方向,可分为,单向总线,和,双向总线,。,单向总线,只能向一个方向发送信息。,双向总线,则可在两个方向传送。,总线,按所传信息的类别,通常分为,数据总线,、,地址总线,和,控制总线,。,(1),数据总线,(Data Bus),是,微处理器,与,存储器,和,I/O,电路,间数据交换的通道,可,双向,传送。数据总线的,宽度,一般与微处器处理数据的,字长,相同,三状态。,(2),地址总线,(Address Bus),是微处理器,输出地址,用的总线,它将地址送到存储器或,I/O,电路,用来确定存储器中信息存放的地址或,I/O,电路的地址,,AB,一般为单向、三状态。,(3),控制总线,(Control Bus),是用来传送,控制信号,,使各功能部件动作同步。,8086,是,Intel,系列的,16bit,微处理器,属第三代。,8086,有,16bit,数据总线和,20bit,地址线,可寻址,1M,空间。,8086,采用单一,+5V,电源和单相时钟,频率为,5MH,Z,。,二、,Intel 8086,微处理器的结构,20,位,AH,AL,BH,BL,CH CL,DH DL,SP,BP,DI,SI,ALU,运算寄存器,标志,执行部件,控制电路,16位,CS,DS,SS,ES,IP,内部暂存器,8位,1 2 3 4 5 6,执行部件,(,EU,),输入,/,输出,控制电路,16位,外部总线,指令队列缓冲器,总线接口部件(,BIU,),通用寄存器,地址,加法器,1.,总体功能结构,8086CPU,的结构框图,8086,从功能结构来讲,分为两大部分,即,总线接口部件,BIU(Bus Interface Unit),和,执行部件,EU(Execution Unit),。,(1)BIU,部件,由,段,寄存器,、,指令指针,、,地址加法器,、,指令队列缓冲器,和,控制电路,等部分组成。,在执行指令时,如要取操作数,则也由,BIU,从,内存,或,I/O,接口,指定区域取出,送给,EU,部件去执行。,BIU,负责与存储器、,I/O,接口电路传送信息。,BIU,负责从指定内存单元取出指令,送到指令队列缓冲器中排队。,指令队列缓冲器,是一个,6,个字节,的,RAM,存储器,(8088,为,4,个字节,),,队列中最多可同时存放,6,个字节的指令,取来的指令是按字节顺序存放的。,当队列中有两个以上的指令字节空的时候,,BIU,会自动地执行总线操作,继续取指令。,(2)EU,部件,由,ALU,、,通用寄存器,、,标志寄存器,和,控制电路,组成,负责指令的执行。,ALU,、,寄存器和数据传输通路均是,16bit,的。,若执行的是一条,转移指令,,则存放在指令队列缓冲器中的指令就没有用了,应到新的地址单元去取出。,BIU,新取出的第一条指令将直接送到,EU,中去执行,随后重新填充指令队列缓冲器。,EU,从,BIU,中的指令队列缓冲器中取得指令和数据。,当指令要求将数据,写,到,存储器,和,I/O,电路,,或需从,存储器,和,I/O,电路,中,读,取数据时,,EU,向,BIU,发出请求,,BIU,自动完成这些操作。,(3)8086,与传统微处理器指令执行过程比较,取指,3,执行,3,取指,4,执行,2,取指2,执行,1,取指1,传统微处理器的执行方式,传统微处理器取指与执行串行进行,,CPU,的工作效率低。,取,数据,取指5,取指,4,取指,3,取指,2,取指1,BIU,执行,4,执行,3,执行,2,执行,1,等待,EU,8086,的指令执行方式,8086CPU,取指与执行并行进行,大大减少了等待取指令所需时间,提高了,CPU,的工作效率。,2.,寄存器结构,8086CPU,内部寄存器,DL,DH,CL,CH,BL,BH,AL,AH,通用寄存器,AX,BX,CX,DX,SP,BP,SI,DI,数据寄存器,CS,DS,SS,ES,IP,FLAG,变址寄存器,指针寄存器,堆栈指针,基数指针,源变址,目的变址,指令指针,状态标志,代码段,数据段,堆栈段,附加段,段寄存器,控制寄存器,(1),通用寄存器,8,个,16bit,通用寄存器。,SP,堆栈指针,存放堆栈栈顶的现行地址,与,SS,堆栈段寄存器一起方可确定堆栈的实际地址。,BP,基址指针,SI,源变,址,寄存器,AX,,,BX,,,CX,,,DX 4,个,16bit,的通用数据寄存器,它们的高,8bit AH,,,BH,,,CH,,,DH,与低,8bit AL,,,BL,,,CL,,,DL,又可分别看成,8,个,8bit,的寄存器。,DI,目的变址寄存器,(2),控制寄存器,IP(Instruction Pointer),指令指针与,PC,类似,但有区别:,a.PC,是,指向下一条即将要执行的指令,而,IP,一般是指向下一次要取出的指令。,b.,在,8086,中,IP,要与,CS,代码段寄存器的内容一起,才能得到指令的实际地址。,TF,SF,ZF,AF,PF,OF,DF,IF,CF,15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0,标志寄存器格式,a.6,个状态标志位,,,即,CF,、,PF,、,AF,、,ZF,、,SF,和,OF,。,进位标志,CF(Carry Flag),:,FLAG(,标志寄存器,),为,16bit,,,其中,9,位有定义,当结果的最高位,(,字节,D,7,,,字,D,15,),产生进位,(,加法运算,),或借位,(,减法运算,),时,,CF=1,,,否则,CF=0,移位和循环指令也影响,CF,。,奇偶标志位,PF(Parity Flag),:,若结果中的低,8,位含有“,1”,的个数为偶数,则,PF=1,,,否则,PF=0,。,辅助进位标志,AF(,Auxitiary,Carry Flag),:,在低半字节向高半字节有进位或借位时,AF=1,,,否则,AF=0,。,零标志,ZF(Zero Flag),:,当运算结果为,0,时,ZF=1,,,否则,ZF=0,。,符号标志,SF(Sign Flag),:,SF,等于最高位,对于带符号数,最高位为符号位,,SF=1,运算结果为负,,,SF=0,为正。,溢出标志,OF(Overflow Flag),:,带符号数运算结果超出其表达范围时(字节数:,-128,+127,,字类型数:,-32768,+32767,),,OF=1,,,否则,OF=0,。,用表达式给出,(,字节运算,),(,字运算,),例:,2345H+3219H,6400H+7A3CH,CF=0 PF=0 AF=0 ZF=0 SF=0 OF=0,CF=0 PF=1 AF=0 ZF=0 SF=1 OF=1,b.3,个控制标志位,追踪标志,TF(Trace Flag),:,TF=1,,,处理器进入单步方式,以便调试,,CPU,每执行一条指令自动产生一个内部中断以利于检查指令的执行情况;,TF=0,为连续工作方式。,中断允许标志,IF(Interrupt-enable Flag),:,IF=1,,,允许,CPU,响应外部的可屏蔽中断请求;,IF=0,则禁止响应。,IF,对外部非屏蔽中断及内部中断不起作用。,方向标志,DF(Direction Flag),:,在串操作指令中,,DF=0,时,变址指针自动增量,,DF=1,时,则自动减量。,(3),段寄存器,CS,代码段寄存器,用于定义代码段基地址,该段用于存放指令代码。,DS,数据段寄存器,用于定义数据段基地址,该段用于存放数据。,有,4,个,16bit,的段寄存器,SS,堆栈段寄存器,用于定义堆栈段基地址,该段作堆栈区使用。,ES,附加数据段,用于定义附加段基地址,与,DS,类似。,上述,4,个段在,8086,寻址的,1MB,空间内,其位置不受限制,可连续排列、分隔排列、部分重叠甚致全部重叠。,8086,采用分段管理的办法实现对,1MB,存储空间的管理,(,物理地址,00000H,FFFFFH),,,16bit,的段寄存器存放了该段的,段首址,,那么它是怎样产生,20bit,的,物理地址,的呢?,我们通常采用在地址编号能被,16,整除的地方开始分段,此时地址的低,4bit,均为,0,,这时段寄存器只用来存放高,16bit,即可,以下有几个概念。,三、,8086,存储器管理,段内偏移量,EA(Effective Address),:,是指某存储单元离开该段段首址的字节数。,逻辑地址,(Logical Address),:,是一对地址,包含段寄存器的内容和段内偏移量,如某条指令的逻辑地址可表达为:,CS:IP,。,物理地址,PA(Physical Address):,是指某个存储单元实际的,20bit,的地址,又称绝对地址。,由,上面的定义可知:,物理地址,PA=,对应段寄存器,10H,十段内偏移量,EA,。,物理地址的形成如下图所示。,物理地址的形成,段寄存器值,0000,20,位物理地址,19,0,15,0,15,0,偏移地址,加法器,16,位,4,位,例如,:若,CS=FFFFH,,,IP=0000H,,,则指令所在存储单元的物理地址为:,PA=(CS)10H+IP=FFFF0H,当取指令时,,自动选择的段寄存器是,CS,,,再加上,IP,所决定的,16,位偏移量,得到要取出指令具体的物理地址:,当涉及到取一个堆栈操作时,,自动选择的段寄存器是,SS,,,再加上,SP,所决定的,16,位偏移量,得到堆栈操作所需要的,20,位物理地址。,当涉及到取一个操作数时,,自动选择,DS,寄存器或,ES,附加段寄存器,再加上,16,位偏移量,得到操作数的,20,位物理地址。,16,位偏移量取决于指令的寻址方式。如下图所示:,IP,CS,SI,DI或BX,DS,SP或BP,SS,代码段,数据段,堆栈段,3.2 8086,的,引脚信号及工作模式,最小模式:即由,8086,组成的单处理器系统,所有的总线控制信号直接由,8086,直接产生,系统中的总线控制逻辑电路被减到最少。,最大模式:即由,8086,组成的中等规模或者大型的系统。包含两个或多个微处理器,,8086,为主处理器其它的为协处理器。,一、,8086,的两种工作模式,8086,采用双列直插式封装,有,40,个引脚,(,如右图所示,),,但总线信号数量却大于,40,,故,8086,采用了分时复用技术,部分引脚传送两种总线信号。,1,2,3,4,5,6,7,8,9,10,1
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!