- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理及其应用_第2章
(1)4个16位段地址寄存器及一个20位物理地址加法器 8086CPU有20位外部地址总线,对应的存储器地址空间范围是1MB。 CPU寻找某个地址单元时,需要给出该单元的20位地址,该地址称为存储器的物理地址。 由于CPU内部的所有寄存器,包括段寄存器,都是16位的,用它们作地址寄存器时,只能直接寻址到64KB地址范围。故在8086CPU中采用了分段技术对存储空间进行管理。 CPU将lMB的存储空间分成若干个逻辑段,每个逻辑段对应一片连续的存储空间,其长度任意,但最大不超过64KB。 当要访问逻辑段内的某一单元时,只要给出逻辑段的起始地址以及该单元与起始地址之间的距离(又称偏移量,或偏移地址,以字节数计量),即可确定其物理地址。 . 逻辑段可在整个lMB存储空间内浮动,即可重定位在不同的位置,但逻辑段的起始地址必须能被16整除,即段起始地址必须是XXXX0H的形式。 段起始地址的高16位称为段基址,它在访问存储器之前被置于某个段地址寄存器中。 CPU访问存储器时,根据所执行的操作,选择某个段寄存器,将其中的内容左移4位形成20位地址的高16位(低4位自动添0),然后通过20位地址加法器再与16位偏移量相加,形成对应的物理地址,如图2.3所示。 按不同的用途,段地址寄存器可分为代码段寄存器CS、数据段寄存器DS、附加段寄存器ES和堆栈段寄存器SS,它们分别用于存放当前代码段、数据段、附加段和堆栈段的段基址。 存储器采用分段结构,方便了CPU对存储器的访问。当所访问的存储器处于同一逻辑段时,可以不改变段寄存器的值,只需改变段内的偏移地址,此即段内寻址。当需要改变段寄存器的值寻找新的地址时,称为段间寻址 (2)16位指令指针IP IP用于存放下一条要从内存中取出来的指令的有效地址EA(即偏移地址),在取出指令时通常进行IP+1→IP的操作,但在执行转移指令、调用指令时,装入IP中的是相应的转移目的地址。 由段基址和偏移地址两部分构成了存储器的逻辑地址,如:取指令时CS:IP=3000:2000H,CS:IP=3100:1000H等,这两个不同的逻辑地址对应的物理地址都是32000H。 不同的逻辑地址可能对应同一个物理地址。 用于按先后次序存放待执行的指令,供EU按顺序取去执行。 (4)总线控制逻辑 总线控制逻辑负责产生并发出总线控制信号,实现对存储器和I/O端口的读/写操作。 2.执行部件EU EU的主要功能是执行指令,EU由以下几个部分组成: (1)算术逻辑单元ALU ALU用于完成16位或8位的二进制数的算术逻辑运算 (2)标志寄存器FR FR用来反映最近一次运算结果的状态以及存放控制标志 (3)通用寄存器组 包括4个数据寄存器AX、BX、CX、DX,4个专用寄存器SP、BP、DI、SI。 (4)EU控制器 从BIU中的指令队列获取指令,经过指令译码电路形成各种定时控制信号,向各功能部件发送相应的控制命令,以完成每条指令所规定的操作。 3. BIU和EU的协调动作 ● 8086CPU中,BIU和EU是同时工作,但并不是完全同步的。 BIU负责从内存中取出指令,并送到指令队列供EU执行;BIU必须保证指令队列始终有指令可供执行,当指令队列有2个字节的空余时,BIU将自动取指令到指令队列。 EU直接从指令队列中取指令执行,由于指令队列中至少有一个以上的指令字节,EU就可以节省因取指令而访问内存的等待时间 1.通用寄存器组 (1)数据寄存器 数据寄存器包括AX、BX、CX、DX等4个16位寄存器,主要用来保存算术、逻辑运算的操作数、中间结果或地址。 它们既可以作为16位寄存器使用,也可以将每个寄存器高字节和低字节分开作为两个独立的8位寄存器使用, 从而得到8个8位寄存器AL、BL、CL、DL、AH、BH、CH、DH等,可用于8位数据的运算和处理。 (2)指针寄存器 ● 堆栈指针SP中存放的是当前堆栈段中栈顶的偏移地址 BP是访问堆栈时的基址寄存器,存放的是堆栈中某一存储单元的偏移地址。 SI和DI是变址寄存器,分别为访问数据段提供操作数的偏移地址。 在串操作指令中规定:SI存放源操作数(即源串)的偏移地址,故称之为源变址寄存器;DI存放目的操作数(目的串)的偏移地址,故称之为目的变址寄存器,二者不能混用。 以上8个16位通用寄存器在一般情况下都具有通用性,但是为了缩短指令代码的长度,某些通用寄存器又规定了专门的用途。 例如,在字符串处理指令中约定必须用CX作为计数器存放串的长度。这样,在指令中就不必给出CX寄存器名,缩短了指令代码的长度,简化了指令的书写形式,
您可能关注的文档
最近下载
- 工程水文及水利计算 小流域设计洪水计算、由暴雨资料推求设计洪水、由流量资料推求设计洪水、准备知识 设计洪水分析计算.doc VIP
- 2019款林肯航海家_汽车使用手册用户操作图解驾驶指南车主车辆说明书电子版.pdf
- 财务管理培训之财务基础知识培训课件.pptx VIP
- 慢性阻塞性肺疾病PPT课件共29张PPT).pptx VIP
- 河北高职单招考试二类单招联考文化试题.docx VIP
- 宅经.pdf VIP
- 金川公司社招技能操作人员考试题.pdf
- 暴雨洪水计算表格.xls VIP
- 年产8万吨乙酸乙酯生产车间的设计论文.docx VIP
- 2026届高考语文复习默写专题训练---看图填诗句类默写.docx
文档评论(0)