- 1、本文档共61页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
8086微处理器及其系统结构 本章学习目的 1.掌握微处理器的编程结构; 2.掌握标志寄存器F各位的含义、作用及DEBUG运行后标志位的表示方法; 3.掌握8086微处理器的主要引脚功能; 4.掌握8086系统的存储器组织结构及堆栈的活动情况; 第一节 8086微处理器内部结构 一、指令和程序的解释方式 取指 从内存中取出指令,明确指令规定的功能; 二、8086的内部结构 8086/8088 CPU的内部是由两个独立的工作部件构成,分别是总线接口部件BIU(Bus Interface Unit)和执行部件EU(Execution Unit)。图中虚线右半部分是BIU,左半部分是EU。两者并行操作,提高了CPU的运行效率。 总线接口部件BIU ▲任务: (1)从内存取指令?指令队列缓冲器; (2) 取数据到运行单元进行运算并将运算结果送 到目的单元(内存或外设端口); 指令队列缓冲器 设立指令队列缓冲器的目的是为了实现重叠解释指令。 ▲工作原理: ①缓冲器中只要有一条指令,EU就开始执行; ②缓冲器中只要有两个字节为空,BIU便自动执行取指操作; 地址发生器 ▲设立地址加法器的目的: 8086 CPU地址总线有20位,而内部地址寄存器都是16位,需要加法器形成20位地址。 执行部件EU ▲结构: (1)16位算术逻辑单元ALU; (2)16位标志寄存器F; (3)数据暂存寄存器(与编程无关,即不对用户开放) (4)通用寄存器组: AX、BX、CX、DX---数据寄存器 SP、BP ---指针寄存器 SI、DI ---变址寄存器 8086 CPU的编程模型 程序设计者所看到(或程序可见)的8086CPU即为该CPU的编程模型。包括三个部分: 三、8086的寄存器结构 1. 通用寄存器 (1)数据寄存器 数据寄存器可以用于存放8位或16位的二进制操作数,这些操作数可以是参加操作的原始数据、运算得到的中间结果,也可以是操作数的地址。大多数算术和逻辑运算指令都可以使用这些寄存器。 在8086微处理器中,数据寄存器有4个,累加器AX(Accumulator)、基址寄存器BX(Base)、计数寄存器CX(Count)、数据寄存器DX(Data)。 指针寄存器和变址寄存器一般用来存放地址偏移量,用于堆栈操作和变址运算中计算操作数的有效地址。 指针寄存器指的是堆栈指针寄存器SP(Stack Pointer)和基址指针寄存器BP(Base Pointer),其中SP用来指示堆栈顶部单元的位置,实现堆栈操作,而BP用来存放在现行堆栈段中的一个数据区的基地址。 指令指针IP是一个16位专用寄存器,程序运行时,它始终指向EU要执行的下一条指令所在单元。当EU执行本条指令时,IP中的内容自动增量,以指向下一条指令所在的内存单元。 3. 段寄存器 ①代码段寄存器CS(Code Segment),指向当前代码段; ②数据段寄存器DS(Data Segment),指向当前数据段; ③附加段寄存器ES(Extra Segment),指向当前附加段; ④堆栈段寄存器SS(Stack Segment),指向当前堆栈段。 标志寄存器位于EU中,它是一个16位的寄存器,但实际上只用了其中9位。 (1)状态标志位 用于反映EU执行算术或逻辑运算以后的结果特征,指令执行时由EU根据指令的执行结果设置这些位的状态,并进一步影响或控制某些后继指令(如条件转移指令、循环指令等)的执行。不同指令对各状态标志位的影响是不同的。 符号标志SF(Sign Flag) 反映运算结果最高位的状态,并与运算结果最高位状态相同。表明了本次运算的结果是正还是负。 用于对CPU的某些操作实施控制,并可在程序中用相应的指令来设置其状态。3位控制标志分别是: 方向标志DF(Direction Flag) 用于控制串操作指令执行时的步进方向,该位为“1”,则串操作指令按地址递减的顺序对串进行操作,否则按地址递增的顺序进行操作。 陷阱标志TF(Trace Flag) 当该位为“1”时,CPU每执行完一条指令便自动产生一个内部中断,并转去执行一个中断服务程序,可以借助该中断服务程序来检查每条指令的执行情况,称为“单步工作方式”,常用于程序的调试。 DEBUG中标志的表示 ? NV等价于 OF=0, OV等价于OF=1; ? UP等价于 DF=0, DN等价于DF=1; ? DI 等价于 IF =0, EI 等价于 IF =1; ? PL等价于 SF=0, NG等价于SF=1; Intel 8088是准16位CPU,其内部采用16位结构,与8
您可能关注的文档
最近下载
- 600MW机组电气系统进DCS逻辑介绍.doc VIP
- 课题申报参考:知识图谱视域下大中小学思政课一体化教学资源库建设与运用研究.docx VIP
- 2025年上海市高考语文 古诗词赏析(考情分析+知识梳理+练习)学生版+解析版 .docx
- 《医院感染风险评估表》.doc VIP
- 谭浩强(第四版)C++程序设计课件.ppt
- 初创公司商业计划书(通用8).docx
- 压力容器的分类90课件.ppt VIP
- 设备供货运输方式及运输方案.docx VIP
- 2023年12月17日广西区税务系统内部遴选笔试真题及答案解析(业务类).doc VIP
- 高中语文部编版必修上册文言文配套练习(附参考答案).doc VIP
文档评论(0)