电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

微机原理与接口技术-电子教案-李云强 第2章 微处理器

142页
  • 卖家[上传人]:E****
  • 文档编号:89439298
  • 上传时间:2019-05-25
  • 文档格式:PPT
  • 文档大小:1.79MB
  • / 142 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、微机原理与接口技术,中国水利水电出版社,主编 李云强,第2章 微处理器,2.1 8086/8088 CPU结构 2.2 8086/8088 CPU引脚功能 2.3 8086/8088 中断系统 2.4 8086 系统配置 2.5 8086 CPU的典型时序及操作 2.6 32位微处理器编程结构简介,2.1 8086/8088 CPU结构,2.1.1 8086/8088 CPU内部结构 16位微处理器基本结构具有如下特点: 引脚功能复用 总线分时复用 可控三态电路 单总线、累加器结构 Intel 8086 CPU是16位微处理器。外型为双列直插式,有40个引脚。8086CPU有16根数据线和20根地址线,直接寻址空间为220byte(1MB)。时钟频率有3种:8086型微处理器为5MHz,8086-2型为8MHz,8086-l型为10MHz。,如图2-1所示,8086/8088 CPU的内部结构包含两大部分:指令执行单元(EU)和总线口单元(BIU) EU从BIU的指令队列中取出指令,执行指令 BIU完成取指令,读操作数,送结果,所有与外部的操作由其完成 BIU和EU的操作是并行的。 若

      2、需要访问内存或I/O端口,则由EU向BIU发出访问所需要的地址,在BIU中形成物理地址,然后访问内存或I/O端口,得到操作数后送到EU,或将结果到送指定的内存单元或I/O端口。这种并行工作方式,大大提高了系统工作效率。,总线接口部件BIU BIU具有地址形成、取指令、指令排队、读/写操作数和总线控制的功能,它是CPU与外部(内存和I/O端口)的接口,它提供了16位双向数据总线和20位地址总线,完成所有外部总线操作。 它由4个16位段寄存器、16位指令指针IP和内部暂存器、6字节(8088为4字节)指令队列缓存器、20位地址加法器以及总线控制逻辑部件等组成。 段寄存器。 指令指针。 地址加法器。 指令队列缓存器。 总线控制逻辑。,指令执行部件EU EU完成指令译码和执行指令的工作。EU从BIU的指令队列中取得指令,并在ALU上执行指令;然后,将处理的结果送回BIU,由BIU进行存储处理。它由ALU、标志寄存器、通用寄存器、暂存器、控制部件等组成。 算术逻辑运算单元ALU。 标志寄存器flags。 通用寄存器组。 EU控制器。,2.1.2 8086/8088 寄存器结构,寄存器可以用来存放

      3、运算过程中所需要的操作数地址、操作数及中间结果。 8086微处理器内部包含有4组16位寄存器,它们分别是通用寄存器组、段寄存器、指针和变址寄存器、指令指针和标志位寄存器 ,如图2-2所示。,通用寄存器组 4个16位通用寄存器,它们是AX、BX、CX和DX,用以存放16位数据或地址。也可分为8个8位寄存器来使用,低8位是AL、BL、CL和DL,高8位为AH、BH、CH和DH,只能存放8位数据,不能存放地址。 AX:常作为累加器使用,是算术运算的主要寄存器。在乘法、除法等指令中指定用来存放操作数。除此之外,所有的输入、输出指令都使用这一寄存器与外部设备传送信息。 BX:常作为通用寄存器使用,此外,还经常作为基址寄存器。 CX:除作为通用寄存器外,还常在循环、移位指令中用来保存计数值。 DX:除作为通用寄存器外,一般在进行双字运算时把DX和AX组合在一起存放一个双字,DX用来存放高位字。此外,在进行输入、输出操作时,该寄存器用来存放端口地址。,段寄存器 8086/8088CPU内部设置了4个16位段寄存器,它们分别是CS、DS、SS、ES,由它们给出相应逻辑段的首地址,称为“段基址”。 段基

      4、址与段内偏移地址(也称为有效地址,EA)组合形成20位物理地址,段内偏移地址可以存放在寄存器中,也可以存放在内存中。 CS:内存放可执行的指令代码段基址。 DS、ES:内存放操作的数据段基址,通常操作数在现行DS中,而在串指令中,目的操作数指明必须在现行ES中。 SS:开辟为程序执行中所要用的堆栈区,采用先进后出(FILO)的方式访问它 。 堆栈:存储器中开辟的一个区域,用来存放需要暂时保存的数据 。,各个段寄存器指明了一个规定的现行段,各段寄存器不可互换使用。程序较小时,CS、DS、SS可放在一个段内,即包含在64KB之内,而当程序或数据量较大,超过了64KB时,可以定义多个CS或DS、SS、ES。现行段由段寄存器指明段地址,使用中可以修改段寄存器内容,指向其它段。有时为了明确起见可在指令前加上段超越的前缀字节,以指定操作数所在段。 堆栈的一端地址是固定的,叫做栈底;另一端的地址是动态变化的,叫做栈顶。 有两种情况需要使用堆栈。 一是CPU自动使用堆栈,当调用子程序或响应中断,处理中断服务程序时,CPU自动将返回地址存放到堆栈中;当调用子程序时,CPU可能通过堆栈传递参数。 二是程序

      5、员使用堆栈,用堆栈暂时存放数据。8086中规定堆栈设置在堆栈段(SS)内,堆栈指针SP始终指向堆栈的顶部,即始终指向最后推入堆栈的信息所在的单元。SP的初值,可由MOV SP,im指令来设定,SP的初值规定了所用堆栈的大小。,指针和变址寄存器 EU中,有一组4个16位寄存器,这组寄存器存放的内容是某一段地址偏移量,用来形成操作数地址,主要用在堆栈操作和变址运算中。 基址指针寄存器BP。 堆栈指针寄存器SP。 源变址寄存器SI。 目的变址寄存器DI。,指令指针寄存器 8086/8088CPU中设置了一个16位指令指针寄存器IP,用来存放将要执行的下一条指令在现行代码段CS中的偏移地址。 程序运行中,它由BIU自动将其修改,使IP始终指向下一条将要执行的指令的地址,因此,它是用来控制指令序列的执行流程的,是一个重要的寄存器 。 8086程序不能直接访问IP,但是可以通过某些指令修改IP的内容。,标志寄存器flags 16位标志寄存器flags寄存器用来存放运算结果的特征,具体格式如图2-3。 这些运算后的特征(标志位)常用作后续的条件转移指令的转移控制条件,其中7位没有定义,其余9位分成两

      6、类: 状态标志,表示运算后结果的状态特征它影响后面的操作,有6位:CF、PF、AF、ZF、SF和OF 控制标志,用来控制CPU操作,有3个:TF、IF和DF,(1) 6个状态标志位 OF(Overflow Flag):溢出标志位 。 SF(Sign Flag):符号标志位。 ZF(Zero Flag):全零标志位 。 AF(Auxiliary Carry Flag):辅助进位标志位 。 PF(Parity Flag):奇偶校验标志位 。 CF(Carry Flag):进位标志位 。 例2-1 将5394H与777FH两数相加,并说明其标志位状态: 解:二进制运算竖式如下图所示。 运算结果为23EBH,并置标志位为OF=0,SF=1,ZF=0,AF=0, PF=0,CF=0。,(2) 3个控制标志位 DF(Ditection Flag):方向标志位。 IF(Interrupt Flag):中断标志位。 TF(Trap Flag):单步标志位 。,2.1.3 8086/8088 存储器与I/O组织,1. I/O内存地址分段与合成 8086/8088系统有20位地址线可寻址1MB字节的存储空

      7、间,而8086为16位机,CPU内部寄存器只有16位,可寻址216B=64KB 。 为了解决这一矛盾,8086/8088 CPU采用了将存储器地址空间分段的方法,即将1 MB空间划分成若干个逻辑段,每个逻辑段的最大长度为64KB 。 把段起始地址的高16位称为段基地址,相对于段起始地址的一个偏移量称为偏移地址(也叫有效地址),把“段基地址:偏移地址”的表示形式称为存储单元的逻辑地址,逻辑地址也是编程时采用的地址形式 。,存储器采用分段编码的好处,使得程序中的指令只涉及16位地址,缩短了指令长度,提高了程序执行的速度。尽管8086的存储器空间多达1MB,但在程序执行过程中,不需要在1MB空间中去寻址,多数情况下只须在一个较小的存储器段中运行。大多数指令运行时,并不涉及段寄存器的值,只涉及16位的偏移量。 物理地址:内存的绝对地址,从00000FFFFFH,是CPU访问内存的实际寻址地址。 物理地址由逻辑地址变换而来。物理地址=段基址16+偏移地址,物理地址在BIU的地址加法器中形成 物理地址的计算如图2-5所示 :,例2-2 CS存放当前代码段基地址,IP存放了下一条要执行指令的段内偏移

      8、地址, 若CS=2000H,IP=003AH。 则物理地址=CS16+IP=2000H10H+003AH=2003AH,2. 逻辑地址来源 由于访问内存的操作类型不同,BIU所使用的逻辑地址来源也不同,如表2-1所示。,取指令时,自动选择CS值作段基址,偏移地址由IP来指定,计算出取指令的物理地址。 当堆栈操作时,段基址自动选择SS值,偏移地址由SP来指定。 当进行读/写内存操作数或访问变量时,则自动选择DS或ES值作为段基址(必要时修改为CS或SS),此时,偏移地址要由指令所给定的寻址方式来决定,可以是指令中包含的直接地址,可以是地址寄存器中的值,也可以是地址寄存器的值加上指令中的偏移量。 当用BP作为基地址寻址时,段基址由堆栈寄存器SS提供,偏移地址从BP中取得。 在字符串寻址时,源操作数放在现行数据段中,段基址由DS提供,偏移地址由源变址寄存器SI取得,而目标操作数通常放在当前ES中,段基址由ES寄存器提供,偏移地址从目标变址寄存器DI取得。,图2-6是段寄存器与其它寄存器组合寻址存储单元的示意图,3. 8086内存的分体结构及访问方法 8086系统中,1MB的存储空间分成两个存

      9、储体:偶地址存储体和奇地址存储体,各为512KB,示意图如图2-7所示。对于任何一个存储体,只需要用19位地址码A19A1就够了,最低地址码A0用于区分当前访问哪一个存储体。 当A0=0时,表示访问偶地址存储体,偶地址存储体与数据总线低8位相连,从低8位数据总线读/写一个字节。当A0=1表示访问奇地址存储体。8086系统设置一个高位有效控制信号 。 与A0相互配合使得CPU可以访问两个存储体中的一个字节。A0和 功能组合见表2-2。,两个存储体与CPU总线之间的连接如图2-8所示。奇地址存储体的片选端受控于信号 ,偶地址存储体的片选端受控于地址线A0。 内存中存放的信息称为存储单元的内容,例如,存储单元00100H中的内容为34H,表示为(00100H)=34H。 一个字在内存中按相邻两个字节存放,存入时以低位字节在低地址,高位字节在高地址的次序存放,字单元的地址以低位地址表示。 一个字可以从偶地址开始存放,也可以从奇地址开始存放,8086CPU访问内存时,都是以字为单位进行的,并从偶地址开始。这种存放方式也称作“对准存放”。 当CPU读/写一个字时,如果字单元地址从偶地址开始,那么只需要访问一次内存;如果字单元地址从奇地址开始,那么CPU需要两次访问内存,第一次取奇地址上数据(偶地址8位数据被忽略),第二次取偶地址上数据(奇地址8位数据被忽略)。 因此,为了加快程序运行速度,编程时要采用 “对准存放”的方式。,4. 专用和保留的存储器单元 Intel公司为了保证与未来产品的兼容,规定在存储区的最低地址区和最高地址区保留一些单元供CPU的某些特殊功能专用 00000H003FFH:存放中断向量表,每个中断向量占4个字节,前2个字节存放中断处理服务程序入口的偏移地址,后2个字节存放中断处理服务程序入口的段地址 B0000HB0FFFH:单色显示器的视频缓冲区,存放单色显示器当前屏幕显示字符所对应的ASCII码及其属性 B8000HBBFFFH:彩色显示器的视频缓冲区,存放彩色显示器当前屏幕像素点所对应的代码 FFFF0HFFFFFH:存放一条无条件转移指令,使系统在上电或复位时,自动跳转到系统的初始化程序。这个区域被包含在系统的ROM范围内,在ROM

      《微机原理与接口技术-电子教案-李云强 第2章 微处理器》由会员E****分享,可在线阅读,更多相关《微机原理与接口技术-电子教案-李云强 第2章 微处理器》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.