微机原理2-1:8088CPU内部结构寄存器组存储器组织_第1页
微机原理2-1:8088CPU内部结构寄存器组存储器组织_第2页
微机原理2-1:8088CPU内部结构寄存器组存储器组织_第3页
微机原理2-1:8088CPU内部结构寄存器组存储器组织_第4页
微机原理2-1:8088CPU内部结构寄存器组存储器组织_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二局部8086/8088微处理器一、8086/8088CPU的内部结构二、8086/8088的内部存放器三、8086/8088的存储器组织四、微处理器的指令系统五、8086/8088的引脚及工作摸式六、时序与总线周期

1精选ppt控制总线数据总线地址总线内部数据总线暂存器累加器ALU标志寄存器指令寄存指令译码时序和控制逻辑通用寄存器组地址寄存器组地址总线控制数据总线控制一、8086/8088CPU的内部结构算术逻辑单元〔运算器〕存放器组指令处理单元〔控制器〕8位微处理器的内部结构2精选ppt16位微处理器也具有以上结构中的根本单元,但更为复杂。以8088为例讲解16位微处理器的功能结构。8088是8086的简化版本。两个芯片都是16位微处理器,内部运算器和存放器都是16位的,同样具有20位地址线;8088的外部数据总线为8位,而8086为16位8088/8086的功能结构3精选ppt

AH

ALBH

BL

CL

CH

DH

DLSPBPDISI通用寄存器

CSDSSSES

IP内部通信存放器总线控制逻辑1234AXBXCXDX数据总线暂存寄存器ALU标志存放器外部总线指令队列16位执行控制电路执行单元地址加法器20位16位

段寄存器指令指针〔EU〕总线接口单元(BIU)ABDBCB4精选ppt8088的编程结构从功能分成两个单元总线接口单元BIU(BusInterfaceUnit)——管理8088与系统总线的接口,负责CPU对存储器和外设进行访问执行单元EU(ExecutionUnit)——负责指令的译码、执行和数据的运算两个单元相互独立,分别完成各自操作两个单元可以并行执行,实现指令取指和执行的流水线操作5精选ppt并行操作的意义EU执行指令的同时,BIU可以继续读取后续指令,并存入指令队列〔firstinfirstout)。这叫做“指令预取〞。8位的CPU没有指令预取功能,执行指令前必须等待“取指〞操作完成。取指操作是CPU最频繁的操作。这种操作方式节省了CPU大量的取指等待时间。“指令流水线〞。6精选ppt二、8088存放器结构 8088共有8个的通用存放器,1个标志存放器,4个段存放器和1个指令指针存放器。 1、通用存放器①数据存放器 共AX、BX、CX、DX四个,每个存放器即可作为16位存放器,又可拆分为两个8位存放器,此时记为AH、AL、BH、BL等。 AX(AH、AL):累加器accumulator BX(BH、BL):基址存放器base CX(CH、CL):计数存放器counter DX(DH、DL):数据存放器data7精选ppt ②指针和变址存放器 共BP、SP、SI、DI四个BP:基址指针存放器BasePointer,默认表示堆栈段基地址; SP:堆栈指针存放器StackPointer,指示栈顶 SI:源变址存放器SourceIndex DI:目的变址存放器DestinationIndex

8精选ppt 标志存放器〔FR〕是一个十六位的存放器,但只利用了其中的9位:六个条件标志和三个控制标志。

FR的格式

CF

PF

AF

ZF

SF

TFIFDFOF0123456789101112131415校验进位

辅助进位零标志方向标志溢出标志2、标志存放器中断标志陷阱标志符号标志9精选ppt进位标志CF〔CarryFlag〕当运算结果的最高有效位有进位〔加法〕或借位〔减法〕时,进位标志置1,即CF=1;否那么CF=0。例如〔以8位运算为例,8088中为16位〕:3AH+7CH=B6H 没有进位:CF=0AAH+7CH=〔1〕26H 有进位:CF=110精选ppt溢出标志OF〔OverflowFlag〕假设算术运算的结果有溢出,那么OF=1;否那么OF=0。问题:什么是溢出?溢出和进位有什么区别?处理器怎么处理,程序员如何运用?如何判断是否溢出?P30找答案11精选ppt什么是溢出处理器内部以补码表示有符号数8位表达的整数范围是:+127~-12816位表达的范围是:+32767~-32768如果运算结果超出这个范围,就产生了溢出有溢出,说明有符号数的运算结果不正确12精选ppt溢出和进位的比照例1:3AH+7CH=B6H无符号数运算: 58+124=182

范围内,无进位有符号数运算: 58+124=182

范围外,有溢出例2:AAH+7CH=〔1〕26H无符号数运算: 170+124=294 范围外,有进位有符号数运算: -86+124=28 范围内,无溢出13精选ppt处理器对两个操作数进行运算时,按照无符号数求得结果,并相应设置进位标志CF;同时,根据是否超出有符号数的范围设置溢出标志OF应该利用哪个标志,那么由程序员来决定。也就是说,如果将参加运算的操作数认为是无符号数,就应该关心进位;认为是有符号数,那么要注意是否溢出。14精选ppt全零标志ZF〔ZeroFlag〕假设运算结果为全0,那么ZF=1,否那么ZF=0。 例如:3AH+7CH=B6H 结果不是零:ZF=086H+7CH=00H 结果是全零:ZF=115精选ppt符号标志SF〔SignFlag〕运算结果最高位为1,那么SF=1;否那么SF=0。例如:3AH+7CH=B6H 最高位D7=1:SF=186H+7AH=00H 最高位D7=0:SF=0 有符号数利用最高有效位〔MSB〕来表示它的符号。所以,运算结果的MSB与符号标志SF相一致。〔1〕16精选ppt奇偶标志PF〔ParityFlag〕当运算结果最低字节中“1〞的个数为零或偶数时,PF=1;否那么PF=0〔奇校验〕。例如:3AH+7CH=B6H=10110110B,结果中有5个1,是奇数,那么PF=0 注意:PF标志仅反映最低8位中“1〞的个数是偶或奇,即使是进行16位字操作。17精选ppt辅助进位标志AF〔AuxiliaryCarryFlag〕运算时D3位〔低半字节〕有进位或借位时,AF=1;否那么AF=0。 这个标志主要由处理器内部使用,用于十进制算术运算的调整,用户一般不必关心。18精选ppt方向标志DF〔DirectionFlag〕用于串操作指令中,控制地址的变化方向:设置DF=0,串操作后存储器地址自动增量〔增址〕;设置DF=1,串操作后存储器地址自动减量〔减址〕。串:存储器中一序列字或字节单元串操作——对序列字或字节单元中的内容进行某种操作,比方:将一个字符串从源区传送到目的区。MOVS——串传送指令CMPS——串比较指令SCAS——串扫描指令LODS——装入串指令STOS——存储串指令19精选ppt中断允许标志IF〔Interrupt-enableFlag〕用于控制外部可屏蔽中断是否可以被处理器响应:设置IF=1,那么允许中断;设置IF=0,那么禁止中断。CLI指令复位中断标志:IF=0STI指令置位中断标志:IF=120精选ppt陷阱标志TF〔TrapFlag〕用于控制处理器是否进入单步执行方式:设置TF=0,处理器正常工作;设置TF=1,处理器每执行一条指令就中断一次,中断编号为1〔称单步中断〕,TF也被称为单步标志。单步执行和单步调试利用单步中断可对程序进行逐条指令的调试。这种逐条指令调试程序的方法就是单步调试。21精选pptOF111512DF10IF9TF8SF7ZF65AF43PF21CF0控制反映结果状态反应运算过程22精选ppt 3、段存放器〔CS、DS、SS、ES〕 在8088可寻址的1MB内存空间中,可以存在四种分工不同的逻辑段:代码段、数据段、堆栈段和附加段。 段存放器即是存放各个逻辑段段首地址的存放器。23精选ppt存储器的分段管理8088有20条地址线,最大可寻址空间为220=1MB,可寻址的地址范围为00000H~FFFFFH该地址称物理地址硬件用20位的物理地址来对存储单元进行寻址24精选ppt存储器的分段管理由于8088中的地址存放器都是16位的,用户不能直接使用20位的物理地址,编程时需要使用逻辑地址来寻址存储单元。逻辑地址由两个16位数构成,其形式为:段的起始地址:段内的偏移地址〔16位段地址〕:〔16位偏移量〕分隔符物理地址14700H逻辑地址1460H:100H25精选ppt 地址加法器 将16位的逻辑地址转换为20位的物理地址,具体操作过程为:先将段存放器提供的16位段地址左移四位,低位补0,恢复为20位地址,然后与由各种寻址方式提供的16位偏移地址相加,即得到20位的物理地址。逻辑地址26精选ppt物理地址:20位逻辑地址:段基址〔段存放器的内容〕16位偏移地址〔字节距离〕16位段基址16位偏移地址16位物理地址20位0000+逻辑地址27精选ppt存储器的分段管理逻辑地址的表示——段地址:偏移地址地址偏移量〔xxxxH〕段首〔xxxx0H〕低址段尾某逻辑段某寻址单元28精选ppt段地址说明逻辑段在存储器中的起始位置,为模16地址:xxxx0H,省略低4位后,可用1个16位数来表示,该地址可被存放在不同的段存放器CS/SS/DS/ES中。偏移地址说明寻址单元距离段首的偏移量,因每段长度不超过64KB,所以偏移地址也可用1个16位数来表示。存储器的分段管理29精选ppt存储器的分段管理一个存储单元可以拥有多个逻辑地址,但只可能拥有一个唯一的物理地址。逻辑地址 1460:100、1380:F00物理地址 14700H14700H30精选ppt如何分配各个逻辑段程序的指令序列必须安排在代码段;程序使用的堆栈一定在堆栈段;程序中的数据默认是安排在数据段,也经常安排在附加段,尤其是串操作的目的区必须是附加段。数据的存放比较灵活,实际上可以存放在任何一种逻辑段中。31精选ppt段跨越前缀指令没有指明时,一般的数据访问在DS段;假设使用BP访问存储器,那么在SS段。默认的情况允许改变,需要使用段跨越前缀指令,8088指令系统中共有4个:CS: ——代码段超越,使用代码段的数据SS: ——堆栈段超越,使用堆栈段的数据DS: ——数据段超越,使用数据段的数据ES: ——附加段超越,使用附加段的数据32精选ppt段超越的例子没有段超越的指令实例:MOVAX,[2000H] ;AX←DS:[2000H],;从默认的DS数据段取出数据采用段超越前缀的指令实例:MOVAX,ES:[2000H] ;AX←ES:[2000H],;从指定的ES附加段取出数据33精选ppt段存放器的使用规定〔表2.1〕存储器访问方式 默认段存放器 段超越 偏移地址取指令 CS 无 IP堆栈操作 SS 无 SP一般数据访问 DS CS/ES/SS 有效地址EA以下特殊情况除外串操作的源操作数 DS CS/ES/SS SI串操作的目的操作数ES 无 DIBP基址的寻址方式 SS CS/DS/ES 有效地址EA34精选ppt IP〔InstructionPointer〕中存放即将要执行的指令的有效地址,IP具有自增量功能。在每取出一条指令后,IP自增一,指令指针指向下一条指令。4、指令指针存放器〔IP〕35精选ppt总结一下:通用存放器 8 AX/BX/CX/DX BP/SPDI/SI 指令指针存放器 1 IP 标志存放器 1 PSW段存放器 4 CS/SS/DS/ES 掌握通用存放器的作用熟悉PSW中各个标志的含义切实理解存储器组织和存储空间分段的概念36精选ppt8088的存放器组37精选ppt堆栈的概念堆栈〔Stack〕是主存中一个特殊的区域。它采用先进后出FILO〔FirstInLastOut〕或后进先出LIFO〔LastInFirstOut〕的原那么进行存取操作,而不是随机存取操作方式。堆栈指针——它指示栈顶位置,在8086/8086中,栈顶由SS和SP共同指示,即SS:SP。堆栈操作处理器自动维持〔子程序调用时的断点处理〕用户操作〔PUSH/POP指令〕38精选ppt三、8088/8086的存储器结构存储器是计算机存储信息的地方。掌握数据存储格式,以及存储器的分段管理对以后的汇编程序设计非常重要你能区别存放器、存储器(主存)、外存(包括硬盘、光盘、磁带等存储介质)吗?39精选ppt存放器、存储器和外存的区别存放器是微处理器〔CPU〕内部暂存数据的存储单元,以名称表示,例如:AX,BX..….等存储器也就是平时所说的主存,也叫内存,可直接与CPU进行数据交换。主存利用地址区别外存主要指用来长久保存数据的外部存储介质,常见的有硬盘、光盘、磁带、U盘等。外存的数据只能通过主存间接地与CPU交换数据程序及其数据可以长久存放在外存,在运行需要时才进入主存40精选ppt2.58086/8088的存储器结构数据的存储格式计算机中表示信息的单位有:位〔bit〕、字节〔byte〕、字〔word〕、双字〔doubleword〕等在存储器中,信息的存储单位是:字节;即每个存储单元的内容是一个字节。41精选ppt信息的表示单位最低有效位LSB〔LeastSignificantBit〕:指数据的最低位,即D0位;最高有效位MSB〔MostSignificantBit〕:指数据的最高位,对应字节、字、双字分别指D7、D15、D31位。42精选ppt图2.38088的存储格式00000H00001H00002H00003H00004H00005H34H12H56H78H00006HD7D0低地址双字D0D31字D0D15字节D0D7LSBMSB43精选ppt存储单元及其存储内容每个存储单元都有一个编号——存储器地址例如:图2.3〔下页〕中,0002H单元存放有一个数据34H,表示为[0002H]=34H如何存储一个字或双字呢?小端方式44精选ppt多字节数据在存储器中占据多个连续的存储单元:存放时,低字节存于低地址,高字节存于高地址;多字节数据占据的地址空间用它的低地址来表示。例如:图2.3中,2号“字〞单元: [0002H]=1234H 2号“双字〞单元: [0002H]=78561234H80x86处理器的“低对低、高对高〞的存储形式,被称为“小端方式〔littleendian〕〞。相对应还存在“大端方式〔BigEndian〕〞。45精选ppt地址对齐同一个存储器地址可以表示:字节单元地址、字单元地址、双字单元地址等等

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论