




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
8086/8088在组成结构上分为:总线接口部件(BIU)执行部件(EU)总线接口部件负责取指令,执行部件负责执行指令,从而构成了一个“两段的流水线”。,取指令1,执行指令1,取指令2,执行指令2,取指令3,执行指令3,2019/11/27,通用寄存器组,AX,BX,CX,DX,外部总线,内部总线,地址加法器,2019/11/27,8086/8088的分段存储结构,存储器为什么要分段呢?16位微处理器,常规上管理216=64KB的存储空间这样的存储空间满足不了应用的要求。用什么方法来扩大呢?将正常管理的64KB存储空间定义为一个段让微处理器能够管理多个这样的段通过分段存储结构,8086/8088能够管理1MB的存储空间。,2019/11/27,8086/8088的分段存储结构,存储器分段后如何来管理呢?每个段的起始地址称为:段基址或段地址每个段内的地址称为:段内偏移地址一个物理存储单元就可以通过“段地址:偏移地址”来唯一确定了如何管理“段地址”和“偏移地址”呢?设置多个段基址寄存器设置多个偏移地址寄存器都有哪些“段基址寄存器”和“偏移地址寄存器”呢?,2019/11/27,依照用途的不同,可分为如下段,8086/8088的分段存储结构,存储程序(指令)代码。其段基址存放于CS寄存器,段内偏移地址存放于IP寄存器,存储程序定义的变量。段基址存放于DS寄存器,段内偏移地址存放于SI、DI或BX寄存器,管理系统堆栈。段基址存放于SS寄存器,段内偏移地址存放于SP或BP寄存器,存储经过处理的中间变量。段基址存放于ES寄存器,段内偏移地址存放于SI、DI或BX寄存器,2019/11/27,8086/8088的分段存储结构,由段基址和相对于该段的偏移地址共同描述的地址逻辑地址,例如:5000H:2000H,20根地址线所表示的地址物理地址,2019/11/27,0000,段地址,如何根据16位的段地址和16位的段内偏移地址来计算20位的物理地址呢?,19430,段地址左移四位,20位的物理地址,8086/8088的分段存储结构,2019/11/27,物理地址的计算方法,段地址左移四位,再加上偏移地址,就得到20位的物理地址。,2019/11/27,Intel80 x86系列微处理器,8086/8088的标志分为两类:状态标志和控制标志。状态标志表示前面操作执行后,算术逻辑单元所处的状态,这些状态常作为后继指令执行的条件。状态标志有6个,分别是符号标志SF、零标志ZF、奇偶标志PF、进位标志CF、辅助进位标志AF和溢出标志OF。控制标志有3个,分别是方向标志DF、中断标志IF和陷阱标志TF。,2019/11/27,3.4Intel80 x86系列微处理器,状态标志,(1)符号标志SF。与计算结果的最高位相同,表示计算结果的正/负。0表示正,1表示负。(2)零标志ZF。若计算结果为零,则ZF=1,否则=0。(3)奇偶标志PF。若计算结果的低8位中1的个数为偶数,则PF=1,否则=0。(4)进位标志CF。若执行的加法运算在最高位产生进位,或者执行的减法运算引起最高位产生借位,则CF=1,否则=0。此外,带进位的循环移位也可能会改变CF。可以用指令STC将CF置1,用指令CLC将CF清0,用指令CMC将CF取反。,2019/11/27,3.4Intel80 x86系列微处理器,状态标志,(5)辅助进位标志AF。若执行加法运算时第3位向第4位进位(即低半字节向高半字节),或者执行减法运算时第3位从第4位借位,则AF=1,否则=0。(6)溢出标志OF。若计算过程产生溢出,则OF=1,否则=0。溢出是指字节运算的结果超出了128+127的范围,或者字运算的结果超出了32768+32767的范围。在进行加法运算时,每当次高位向最高位有进位而最高位没有向前进位,或者最高位向前进位而次高位没有向最高位进位,则ALU置OF为1。,2019/11/27,3.4Intel80 x86系列微处理器,控制标志,(1)方向标志DF。这是控制串操作指令的标志。若DF=0,则串操作过程中地址将不断增值,否则不断减值。可用指令STD将DF置1,用指令CLD将DF清0。(2)中断标志IF。这是控制可屏蔽中断的标志。如果IF=0,则8086/8088对可屏蔽中断请求不能做出响应,否则可以响应可屏蔽中断请求。可用指令STI将IF置1,用指令CLI将IF清0。“将IF置1”称为“开中断”,“将IF清0”称为“关中断”,2019/11/27,3.4Intel80 x86系列微处理器,控制标志,(3)陷阱标志TF。这是控制8086/8088是否进入单步执行状态的标志。若TF=1,则8086/8088进入单步执行状态或跟踪方式执行指令状态,即每条指令执行完后,微处理器暂停(进入陷阱),显示处理器内部各寄存器的值。进入单步执行状态便于程序的调试。如果TF=0,则连续执行指令。,标志寄存器FR有16位,9个标志位的定义如下,未定义的7位保留,2019/11/27,3.4Intel80 x86系列微处理器,溢出标志OF(Overflowflag)OV(1)NV(0)方向标志DF(Directionflag)DN(1)UP(0)中断标志IF(Interruptflag)EI(1)DI(0)符号标志SF(Signflag)NG(1)PL(0)零标志ZF(Zeroflag)ZR(1)NZ(0)辅助标志AF(Auxiliarycarryflag)AC(1)NA(0)奇偶标志PF(Parityflag)PE(1)PO(0)进位标志CF(Carryflag)CY(1)NC(0),标志寄存器FR有16位,9个标志位的定义如下,未定义的7位保留,2019/11/27,在Debug状态下,标志寄存器每位的状态含义,AX,BX,CX,DX,8086/8088的寄存器组,作为累加器用,在加法运算中参与运算,结果存于累加器中;所有的I/O指令都隐含地使用AX与外部设备传送信息。,作为通用寄存器使用在采用基址寻址方式时,用作基址寄存器,作为通用寄存器使用;常用来保存计数值,如在移位指令、循环指令和串处理指令中用作隐含的计数器。,作为通用寄存器使用;在一些指令中,通常用它来存放数据,所以又称为数据寄存器;在做双字长运算时,将DX和AX组合在一起存放双字长数,用DX存放高位字。,2019/11/27,SP是一个专门为堆栈设置的寄存器。,堆栈(Stack),后进先出(LastInFirstOut,LIFO)例如:子弹匣,注意与队列(Queue)的区别,先进先出(FirstInFirstOut,FIFO)例如:排队乘车,2019/11/27,对堆栈的操作只有两种:压入PUSH弹出POP,90FFCH90FFDH90FFEH90FFFH91000H,对堆栈的操作总是针对栈顶单元进行的,栈顶单元的偏移地址总是由堆栈指示器(StackPointer,SP)给出,堆栈段的段地址由SS指示。,2019/11/27,55,AA,执行PUSHAX操作,执行PUSHAX操作之前,对压入指令而言,只需说明把谁压入即可。例如:PUSHAX,堆栈操作示意图,0FFEH,2019/11/27,堆栈操作示意图,执行POPAX操作,执行POPAX操作之前,对弹出指令而言,只需说明弹出到哪儿即可。例如:POPAX,AA,5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 杭州数控水幕施工方案
- 威海市烟草公司2025秋招系统运维岗位面试模拟题及答案
- 眉山市烟草公司2025秋招物流调度岗位高频笔试题库含答案
- 借款合同二3篇
- 土地修复咨询方案
- 2025艺考考前辅导与心理调适服务合同
- 户外绿植施工方案
- 2025年土地整治项目土地抵押合同范例
- 张家界市烟草公司2025秋招配送管理岗位面试模拟题及答案
- 攀枝花东区中烟工业2025秋招生产管理岗位高频笔试题库含答案
- GB/T 8492-2024一般用途耐热钢及合金铸件
- 开学季饮品店促销方案(2篇)
- 布病脊柱炎影像学表现
- 房屋市政工程施工现场安全风险分级管控与防范措施清单
- 钢管及配件报价单
- 成功学习方法助你事半功倍
- 河北盛都温泉假日酒店有限公司盛都地热井矿山地质环境保护与土地复垦方案
- 山西省职校技能大赛(植物病虫害防治赛项)参考试题库(含答案)
- 小学语文一年级上册《汉语拼音-i-u-ü》教学课件
- 主题班会课件++高效晚自修主题班会
- 轴承保持器行业报告
评论
0/150
提交评论