ACPU内部各寄存器实用教案

上传人:枫** 文档编号:568763334 上传时间:2024-07-26 格式:PPT 页数:42 大小:1.56MB
返回 下载 相关 举报
ACPU内部各寄存器实用教案_第1页
第1页 / 共42页
ACPU内部各寄存器实用教案_第2页
第2页 / 共42页
ACPU内部各寄存器实用教案_第3页
第3页 / 共42页
ACPU内部各寄存器实用教案_第4页
第4页 / 共42页
ACPU内部各寄存器实用教案_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《ACPU内部各寄存器实用教案》由会员分享,可在线阅读,更多相关《ACPU内部各寄存器实用教案(42页珍藏版)》请在金锄头文库上搜索。

1、18086CPU内部(nib)结构图EU (Execution Unit)执行部件)执行部件1. 功能:负责指令执行。功能:负责指令执行。执行部件不与外部打交通,它从总线接口部件的指令队列执行部件不与外部打交通,它从总线接口部件的指令队列(duli)中取指令,这样省去了中取指令,这样省去了访问内存取指令的所需的时间。访问内存取指令的所需的时间。第1页/共41页第一页,共42页。28086CPU内部(nib)结构图EU (Execution Unit)执行部件)执行部件(bjin)2. 组成:通用寄存器,组成:通用寄存器,ALU(算术逻辑运算单),标志寄存器等。(算术逻辑运算单),标志寄存器等。

2、第2页/共41页第二页,共42页。38086CPU内部(nib)结构图ALUALU是执行是执行(zh(zh x x ng)ng)部件的核心部件,它可完成部件的核心部件,它可完成8 8位位或或1616位二进制数的运算,运算结果一方面通过数据总位二进制数的运算,运算结果一方面通过数据总线送到通用寄存器或送到线送到通用寄存器或送到BIUBIU中的内部寄存器,然后中的内部寄存器,然后写入到内存。另一方面影响标志寄存器。写入到内存。另一方面影响标志寄存器。第3页/共41页第三页,共42页。48086CPU内部(nib)结构图EUEU控制单元:负责从控制单元:负责从BIUBIU指令队列中取指令,分析指令,

3、然后指令队列中取指令,分析指令,然后分析指令的结果分析指令的结果(ji gu)(ji gu)向向EUEU内部各部件发出控制命令。内部各部件发出控制命令。第4页/共41页第四页,共42页。58086CPU内部(nib)结构图总线接口部件总线接口部件 BIU(Bus Interface Unit) BIU(Bus Interface Unit)功能:负责与功能:负责与M(M(存储器存储器)/IO )/IO 端口之间传送数据端口之间传送数据(sh(sh j j ) )。具体讲:具体讲: 1. 1.总线接口部件要从内存取指令送到指令队列;总线接口部件要从内存取指令送到指令队列; 2.CPU 2.CPU

4、执行指令时,要配合执行部件从指定的内存单元或者外设执行指令时,要配合执行部件从指定的内存单元或者外设 端口中取数据端口中取数据(sh(sh j j ) ),将数据,将数据(sh(sh j j ) )传送给执行部件传送给执行部件EUEU; 3. 3.或把执行部件的操作结果传给指定的或把执行部件的操作结果传给指定的M M或或I/OI/O端口。端口。第5页/共41页第五页,共42页。68086CPU内部(nib)结构图总线接口总线接口(ji ku)(ji ku)部件部件 BIU(Bus Interface Unit) BIU(Bus Interface Unit)2.2.组成:段寄存器组成:段寄存器

5、(CS,DS,ES,SS)(CS,DS,ES,SS),1616位指令指针寄存器,位指令指针寄存器, 地址加法器地址加法器( (产生产生2020位地址位地址) ),6B6B指令队列缓冲器指令队列缓冲器第6页/共41页第六页,共42页。78086的寄存器结构(jigu)8086/8088CPU中有中有14个个16位的寄存器,按用途分为位的寄存器,按用途分为(fn wi)三类:三类:附加段寄存器附加段寄存器堆栈段寄存器堆栈段寄存器数据段寄存器数据段寄存器代码段寄存器代码段寄存器ESSSDSCS段寄段寄存器存器DLDHCLCHBLBHALAHDXCXBXAX数据寄存器数据寄存器计数寄存器计数寄存器基址

6、寄存器基址寄存器累加器累加器数据寄存器数据寄存器目的变址寄存器目的变址寄存器源变址寄存器源变址寄存器基址指针基址指针堆栈指针堆栈指针DISIBPSP指针和变指针和变址寄存器址寄存器通用寄存器通用寄存器FRIP标志寄存器标志寄存器指令指针指令指针专用寄存器专用寄存器第7页/共41页第七页,共42页。81.1.通用寄存器通用寄存器第8页/共41页第八页,共42页。91)数据数据(shj)寄存器寄存器DLDHCLCHBLBHALAH数据寄存器数据寄存器计数寄存器计数寄存器基址寄存器基址寄存器累加器累加器DXCXBXAX第9页/共41页第九页,共42页。10数据数据(shj)寄存器寄存器数据寄存器用来

7、存放计算的结果和操作数,也可以存放地址每个寄存器又有它们各自的专用目的AX累加器,使用频度最高,用于算术(sunsh)、逻辑运算以及与外设传送信息等;BX基址寄存器,常用做存放存储器地址;CX计数器,作为循环和串操作等指令中的隐含计数器;DX数据寄存器,常用来存放双字长数据的高16位,或存放外设端口地址。第10页/共41页第十页,共42页。112)变址寄存器变址寄存器变址寄存器常用于存储器寻址时提供地址(dzh)SI是源变址寄存器DI是目的变址寄存器第11页/共41页第十一页,共42页。123)指针指针(zhzhn)寄存器寄存器指针(zhzhn)寄存器用于寻址内存堆栈内的数据SP为堆栈指针(z

8、hzhn)寄存器,指示栈顶的偏移地址SP不能再用于其他目的,具有专用目的BP为基址指针(zhzhn)寄存器,表示数据在堆栈段中的基地址SP和BP寄存器与SS段寄存器联合使用以确定堆栈段中的存储单元地址SI,DI,SP,BP ,只能按16位进行存取操作第12页/共41页第十二页,共42页。132.段寄存器段寄存器8086有4个16位段寄存器CS(代码段)指明代码段的起始(qsh)地址SS(堆栈段)指明堆栈段的起始(qsh)地址DS(数据段)指明数据段的起始(qsh)地址ES(附加段)指明附加段的起始(qsh)地址每个段寄存器用来确定一个逻辑段的起始(qsh)地址,每种逻辑段均有各自的用途第13页

9、/共41页第十三页,共42页。183.标志标志(biozh)寄存器寄存器标志(Flag)用于反映指令执行结果或控制指令执行形式(xngsh)8086处理器的各种标志形成了一个16位的标志寄存器FR(标志寄存器的内容称为程序状态字PSW) 程序设计需要利用标志(biozh)的状态0123456789101112131415CFPFAFZFSFTFIFDFOF第18页/共41页第十八页,共42页。19标志标志(biozh)的分类的分类状态标志(biozh)用来记录程序运行结果的状态信息,许多指令的执行都将相应地设置它。CFZFSFPFOFAF控制标志(biozh)可由程序根据需要用指令设置,用于控

10、制处理器执行指令的方式DFIFTF第19页/共41页第十九页,共42页。20标志(biozh)寄存器的设置标志名称标志名称设置设置未设置未设置OFOV(溢出溢出)NV(未溢出未溢出)ZF ZRNZ(不等于不等于0)AFACNA(无进位无进位)PFPE(偶偶)PO(奇奇)SFNG(负负)PL(正正)CFCYNC(无进位无进位)DFDN(减少减少)UP(增加增加)IFEI(许可许可)DI(禁止禁止)第20页/共41页第二十页,共42页。21进位进位(jnwi)标志标志CF(CarryFlag)当运算结果的最高有效位有进位(加法)或借位(jiwi)(减法)时,进位标志置1,即CF=1;否则CF=0。

11、3AH + 7CH0B6H 0111 1100 0011 10101011 0110结果:没有进位:CF = 0例:字节例:字节第21页/共41页第二十一页,共42页。22进位进位(jnwi)标志标志CF(CarryFlag)当运算结果的最高有效(yuxio)位有进位(加法)或借位(减法)时,进位标志置1,即CF=1;否则CF=0。例:字例:字AA01H + 7C80H(1)2681H 0111 1100 1000 0000 1010 1010 0000 0001 10010 0110 1000 0001 结果:结果:有进位:CF = 1第22页/共41页第二十二页,共42页。23零标志零标志

12、(biozh)ZF(ZeroFlag)若运算结果(jigu)为0,则ZF=1;否则ZF=03AH + 7CH0B6H,结果(ji gu)不是零:ZF = 084H + 7CH(1)00H,结果(ji gu)是零:ZF = 1 注意:ZF为1表示的结果是0第23页/共41页第二十三页,共42页。24符号符号(fho)标志标志SF(SignFlag)运算(ynsun)结果最高位为1,则SF=1;否则SF=03AH + 7CH0B6H,最高位D71:SF = 184H + 7CH(1)00H,最高位D70:SF = 0 有符号数据用最高有效(yuxio)位表示数据的符号,所以,最高有效(yuxio)

13、位就是符号标志的状态。第24页/共41页第二十四页,共42页。25奇偶奇偶(qu)标志标志PF(ParityFlag)当运算结果最低字节(zji)中“1”的个数为零或偶数时,PF=1;否则PF=03AH + 7CH0B6H10110110B结果(ji gu)中有5个1,是奇数:PF = 0 PF标志仅反映最低8位中“1”的个数是偶或奇,即使是进行16位字操作第25页/共41页第二十五页,共42页。26溢出溢出(ych)标志标志OF(OverflowFlag)若算术(sunsh)运算的结果有溢出,则OF1;否则OF03AH + 7CH0B6H,产生(chnshng)溢出:OF = 10AAH +

14、 7CH(1)26H,没有溢出:OF = 0第26页/共41页第二十六页,共42页。27例: 64H + 64H = 0C8H 0 1 1 0 0 1 0 0 + 0 1 1 0 0 1 0 0 1 1 0 0 1 0 0 0次位有进位最高位无进位CF0OF 次位进位(jnwi)与最高位进位(jnwi)相异或 OF1第27页/共41页第二十七页,共42页。28问题问题(wnt) 1. 什么是溢出(y ch)? 2. 溢出(y ch)和进位有什么区别? 3. 处理器怎么处理,程序员如何运用? 4. 如何判断是否溢出(y ch)?第28页/共41页第二十八页,共42页。34运算(yn sun)时D

15、7,D3位(低半字节)有进位或借位时,AF = 1;否则AF = 0。辅助进位(jnwi)标志AF (Auxiliary Carry Flag)第34页/共41页第三十四页,共42页。35AF=10 1 1 1 0 1 0 1例1: 6DH + 08H = 75H 0 1 1 0 1 1 0 1 + 0 0 0 0 1 0 0 0 AF=1 0 0 0 1 0 0 0 0 1 0 0 0 1 1 1 0例2: 2110H - 1082H = 108EH 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0- 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 这个标志(b

16、iozh)主要由处理器内部使用,用于十进制算术运算调整指令中,用户一般不必关心第35页/共41页第三十五页,共42页。36方向方向(fngxing)(fngxing)标志标志DFDF(Direction Direction FlagFlag)用于串操作指令中,控制地址的变化方向(fngxing):设置DF0,存储器地址自动增加;设置DF1,存储器地址自动减少。CLD指令(zhlng)复位方向标志:DF0STD指令(zhlng)置位方向标志:DF1第36页/共41页第三十六页,共42页。37中断允许中断允许(ynx)(ynx)标志标志IFIF(Interrupt-Interrupt-enable

17、 Flagenable Flag)用于控制外部可屏蔽中断(zhngdun)是否可以被处理器响应:设置IF1,则允许中断(zhngdun);设置IF0,则禁止中断(zhngdun)。CLI指令复位(f wi)中断标志:IF0STI指令置位中断标志:IF1第37页/共41页第三十七页,共42页。38陷阱陷阱(xinjng)标志标志TF(TrapFlag)用于控制处理器进入(jnr)单步操作方式:设置TF0,处理器正常工作;设置TF1,处理器单步执行指令。单步执行指令处理器在每条指令执行结束时,便产生一个编号为1的内部中断这种内部中断称为单步中断所以TF也称为单步标志利用单步中断可对程序进行(jnx

18、ng)逐条指令的调试这种逐条指令调试程序的方法就是单步调试第38页/共41页第三十八页,共42页。39例题(lt)CFA85623? 1100 1111 1010 1000 0101 0110 0010 0011 0010 0101 1100 10111ZF0 CF1SF=0 AF0PF0 OF=0第39页/共41页第三十九页,共42页。40例题(lt)5A3B+BA7F? 0101 1010 0111 1011 1011 1010 0111 1111 0001 0100 1011 10101ZF0 CF1SF=0 AF0PF0 OF=0第40页/共41页第四十页,共42页。41感谢您的观看(gunkn)!第41页/共41页第四十一页,共42页。内容(nirng)总结1。2.CPU执行指令时,要配合执行部件从指定的内存单元或者外设。 数据寄存器用来存放计算的结果和操作数,也可以存放地址。CX计数器,作为循环和串操作等指令中的隐含计数器。 SP不能再用于其他目的,具有专用目的。 SI,DI,SP,BP,只能(zh nn)按16位进行存取操作。CS(代码段)指明代码段的起始地址。代码段寄存器CS存放代码段的段地址。堆栈段确定堆栈所在的主存区域。堆栈指针寄存器SP指示堆栈栈顶的偏移地址第四十二页,共42页。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号