微型计算机系统的微处理器

微型计算机系统的微处理器

ID:39252960

大小:1.26 MB

页数:70页

时间:2019-06-28

微型计算机系统的微处理器_第1页
微型计算机系统的微处理器_第2页
微型计算机系统的微处理器_第3页
微型计算机系统的微处理器_第4页
微型计算机系统的微处理器_第5页
资源描述:

《微型计算机系统的微处理器》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、微机原理及应用第2章微型计算机的微处理器§2.18086微处理器的编程结构§2.28086的存储器组织§2.38086的I/O组织§2.48086的引脚功能与工作组态§2.58086的操作及典型时序2.18086微处理器的编程结构2.1.18086CPU的内部结构2.1.28086CPU的寄存器结构2.1.18086CPU的内部结构(1)执行部件的功能执行部件的主要功能是负责译码指令和执行指令。(2)执行部件的组成①运算器(ALU)②通用寄存器(AX、BX、CX、DX、SI、DI、SP、BP)③标志寄存器(FR)④执行部件控制电路1.执行部件(EU)(1)总线接口部件的功能总线接口部件

2、的主要功能是负责控制CPU与外部之间的信息传送。(2)总线接口部件的组成①地址加法器(Σ)②段寄存器(CS、DS、ES、SS)③指令指针寄存器(IP)④指令队列(6字节)⑤输入/输出控制电路2.总线接口部件(BIU)2.1.28086CPU的寄存器结构8086CPU为了应用程序编程提供了14个基本程序执行寄存器。一般将这些寄存器按功能不同分为四组:(1)通用寄存器(2)段寄存器(3)标志寄存器(3)指令指针寄存器1.通用寄存器(8个)8个16位的通用寄存器的名称分别为:AX、BX、CX、DX、SI、DI、BP和SP。其中AX、BX、CX、DX可以一分为二使用。通用寄存器的主要作用是:①

3、逻辑和算术操作的操作数;②用于地址计算的操作数;③内存指针。虽然所有这些寄存器都可用于存放操作数、结果和指针,但在引用SP寄存器时要特别小心。SP寄存器保持堆栈指针,通常不要用于其它目的。2.段寄存器(4个)8086CPU中有4个16位的段寄存器,用于存放段地址。(1)代码段寄存器(CS)(2)数据段寄存器(DS)(3)堆栈段寄存器(SS)(4)附加段寄存器(ES)这些段寄存器只能按16位使用。由于8086中只有4个段寄存器,所以任何时候,一个程序最多能访问线性地址空间中的四个段。要访问由一个段寄存器指向的段,程序必须首先把要访问的段的段地址传送到一个段寄存器中。3.标志寄存器(1个)

4、在8086CPU中有1个16位标志寄存器,其中只有9位有效,能提供9个不同的标志信息。这9个标志分为两类:(1)状态标志(6位):反映一条指令执行后的状态,当一条指令执行后其状态标志的值由CPU自动写入。(2)控制标志(3位):控制标志主要用于确定CPU的某些工作方式,其值通常由程序员根据需要写入。OFDFIFTFSFZFAFPFCF15870(1)状态标志①进位标志CF按二进制运算,当结果的最高位产生进位(加法)或借位(减法)时,CF=1,否则CF=0。②辅助进位标志AF按二进制运算,当结果的D3位向D4位有进位(加法)或借位(减法)时,AF=1,否则AF=0。该标志主要针对于BCD

5、算术运算。③奇偶标志PF按二进制运算,当结果中“1”的个数为偶数时,PF=1,否则PF=0。④符号标志SF按二进制运算,当结果这负时,SF=1,否则SF=0,它的值与运算结果的最高位相同,即由结果的最高位的值决定其正负。⑤溢出标志OF按二进制运算,当结果溢出时,OF=1,否则OF=0。溢出指结果超出了能表示的范围。具体判断方法:结果符号合理时表示无溢出,结果不合理时表示有溢出。不合理的情况:正+正=负;负+负=正;正-负=负;负-正=正⑥零标志ZF当运算结果为0时,ZF=1,否则ZF=0在这些状态标志中,只有进位标志CF能用指令STC、CLC和CMC直接进行修改。(2)控制标志①方向标

6、志DF当DF=1时,串操作指令的地址作自动减量变化;当DF=0时,串操作指令的地址作自动增量变化。可以用STD和CLD指令修改DF的值。②中断允许标志IF当IF=1时,允许CPU响应外部可屏蔽中断请求;当IF=0时,禁止CPU响应外部可屏蔽中断请求。可以用STI和CLI指令修改IF的值。③单步标志TF当TF=1时,CPU工作在单步执行指令方式;当TF=0时,CPU工作在连续执行指令方式。4.指令指针寄存器(1个)指令指针寄存器的名称叫IP,16位,其作用是随时提供下一条要执行的指令在当前代码段中的偏移地址。其特点是它的值随着指令的执行自动改变,通常它是顺序增加的,从一条指令边界至下一条

7、指令,但在执行转移指令时,它可以向前或向后移动若干条指令。IP寄存器的值不能由指令直接访问;读IP寄存器的唯一方法是执行一条CALL指令,然后从堆栈中读指令指针寄存器的保存值。IP寄存器的值可通过先修改堆栈再执行返回指令来间接修改。2.28086的存储器组织2.2.1存储器地址空间和数据存储格式2.2.2存储器的分体结构2.2.38086存储器的分段2.2.4存储器物理地址的形成2.2.1存储器地址空间和数据存储格式1.存储器地址空间8086C

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。