数字电子技术 第2章 ia-32结构微处理器与8086讲义

上传人:今*** 文档编号:106967491 上传时间:2019-10-17 格式:PPT 页数:46 大小:1.82MB
返回 下载 相关 举报
数字电子技术 第2章 ia-32结构微处理器与8086讲义_第1页
第1页 / 共46页
数字电子技术 第2章 ia-32结构微处理器与8086讲义_第2页
第2页 / 共46页
数字电子技术 第2章 ia-32结构微处理器与8086讲义_第3页
第3页 / 共46页
数字电子技术 第2章 ia-32结构微处理器与8086讲义_第4页
第4页 / 共46页
数字电子技术 第2章 ia-32结构微处理器与8086讲义_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《数字电子技术 第2章 ia-32结构微处理器与8086讲义》由会员分享,可在线阅读,更多相关《数字电子技术 第2章 ia-32结构微处理器与8086讲义(46页珍藏版)》请在金锄头文库上搜索。

1、第2章 IA-32结构微处理器与8086,IA-32结构微处理器与8086,2.1 IA-32微处理器是8086的延伸 2.2 8086的功能结构 2.3 8086微处理器的执行环境,2,4位,8位,16位,32位,IA-32结构微处理器与8086,Intel 4004,Intel 8080,Intel 8086,Intel 80486,3,IA-32结构微处理器与8086,IA-32 : (Intel Architecture)英特尔体系架构,英特尔从386开始采用,也就叫X86-32架构,在同一时间内可以处理32位二进制数据。CPU的工作宽度是32位。其它公司在软硬方面都兼容此架构,也列属

2、于IA-32架构。,4,Intel 8086 : 1978年6月Intel推出的8086微处理器,主频4.77MHz,采用16位寄存器、16位数据总线和29000个3微米技术的晶体管,标志着第三代微处理器问世。,IA-32结构微处理器与8086,5,2.1 IA-32微处理器是8086的延伸,Intel 8086,IA-32,6,MMU,实模式到保护模式,16位扩展为32位,功能扩展,流SIMD扩展(SSE),MMX技术,浮点支持,2.1 IA-32微处理器是8086的延伸,7,流水线技术,性能提高,片内缓存,2.1 IA-32微处理器是8086的延伸,8,2.2 8086的功能结构,9,2.

3、2 8086的功能结构,8位处理器执行顺序,t,10,2.3 8086微处理器的执行环境,11,2.3.1 基本执行环境概要,12,2.3.2 基本程序执行寄存器,寄存器是中央处理器内的组成部份。寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和地址。 (1)可将寄存器内的数据执行算术及逻辑运算;(2)存于寄存器内的地址可用来指向内存的某个位置,即寻址;(3)可以用来读写数据到电脑的周边设备。,13,1.通用寄存器,通用寄存器,数据寄存器,指针寄存器,AX,BX,CX,DX,DI,SI,BP,SP,14,1.通用寄存器, AX(accumulator):累加寄存器,常用于运算;在乘

4、除等指令中指定用来存放操作数,另外,所有的I/O指令都使用这一寄存器与外界设备传送数据. BX(base):基址寄存器,常用于地址索引; CX(count):计数寄存器,常用于计数/保存计算值,如在移位指令,循环(loop)和串处理指令中用作隐含的计数器. DX(data):数据寄存器,常用于数据传递。,15,1.通用寄存器,SP(Stack Pointer):堆栈指针,与SS配合使用,可指向目前的堆栈位置; BP(Base Pointer):堆栈上的数据指针,可用作SS的一个相对基址位置; SI(Source Index):源变址寄存器,可用来存放相对于DS段的源变址指针; DI(Desti

5、nation Index):目的变址寄存器,可用来存放相对于 ES 段的目的变址指针。,16,1.通用寄存器,AH,AL,BH,CH,DH,BL,CL,DL,AX,BX,CX,DX,17,2. 段寄存器,1/0,Bit,Byte,Word,0000H,数据的存储格式,0001H,0002H,0003H,0004H,0005H,0006H,0007H,0008H,0009H,000AH,18,2. 段寄存器,CS (Code Segment)代码段寄存器,存放当前执行的程序的段地址。 DS (Data Segment)数据段寄存器,存放当前执行的程序所用操作数的段地址。 SS (Stack Se

6、gment)堆栈段寄存器,存放当前执行的程序所用堆栈的段地址。 ES ( Extra Segment)附加段寄存器,存放当前执行程序中一个辅助数据段的段地址。,19,3. FLAGS寄存器,Flags 和其他寄存器不一样,其他寄存器是用来存放数据的,都是整个寄存器具有一个含义。 Flags寄存器是按位起作用的,也就是说,它的每一位都有专门的含义,记录特定的信息。,20,3. FLAGS寄存器,8086CPU的Flag寄存器的结构:,Flag的1、3、5、12、13、14、15位在8086CPU中没有使用,不具有任何含义。而0、2、4、6、7、8、9、10、11位都具有特殊的含义。,21,3.

7、FLAGS寄存器,flag的第6位是ZF位。它记录相关指令执行后: 结果为0 ,ZF = 1 结果不为0,ZF = 0,(1)ZF(Zero Flag)零标志位,mov ax,1 sub ax,1 指令执行后,结果为0,则ZF = 1。 mov ax,2 sub ax,1 指令执行后,结果为1,则ZF = 0。,22,3. FLAGS寄存器,(2) PF(Parity Flag)奇偶标志位,flag的第2位是PF,它记录指令执行后,结果的所有二进制位中1的个数: 为偶数,PF = 1; 为奇数,PF = 0。,指令:mov al,1 add al,10 执行后,结果为00001011B,其中有

8、3(奇数)个1,则PF=0; 指令:mov al,1 or al,10 执行后,结果为00000011B,其中有2(偶数)个1,则PF=1;,23,3. FLAGS寄存器,flag的第7位是SF,它记录指令执行后: 结果为负,SF = 1; 结果为正,SF = 0。,(3) SF(Sign Flag)符号标志位,mov al,10000001B add al,1 结果: (al)=10000010B,24,3. FLAGS寄存器,(4) CF(Carry Flag)进位标志位,mov al,98H add al,al ;执行后: (al)=30H,CF=1 ;CF记录了最高有效位向更高位的进位

9、值 Sub al,98H;执行后: (al)=98H,CF=1 ;CF记录了最高有效位向更高位的借位值,flag的第0位是CF。 一般情况下,在进行无符号数运算的时候,它记录了运算结果的最高有效位向更高位的进位值,或从更高位的借位值。,25,3. FLAGS寄存器,(5) OF(Overflow Flag)溢出标志位,在进行有符号数运算的时候,如结果超过了机器所能表示的范围称为溢出。 那么,什么是机器所能表示的范围呢?,比如,指令运算的结果用 8 位寄存器或内存单元来存放。 add al,3 ,那么对于 8 位的有符号数据,机器所能表示的范围就是-128127。 同理,对于16 位有符号数,机

10、器所能表示的范围是-3276832767。,26,3. FLAGS寄存器,mov al,62H ; 98 add al,63H ; 99 执行后将产生溢出(OF=1)。 因为add al,63H 进行的有符号数运算是:(al)=(al)+99=98+99=197 而结果197超出了机器所能表示的8位有符号数的范围:-128127。,27,mov al,0F0H ; add al,88H ; 执行后 CF=1,OF=1。 对于无符号数0FH+88H有进位,CF=1; 对于有符号数0FH+88H有溢出,OF=1;,3. FLAGS寄存器,OF与CF区别:,28,mov al,64H ; add a

11、l,64H ; 执行后 CF=0,OF=1。 对于无符号数64H+64H无进位,CF=0; 对于有符号数64H+64H有溢出,OF=1;,OF与CF区别:,3. FLAGS寄存器,29,4. 指令指针寄存器,IP (Instruction Pointer) 指令指针寄存器,IP: 包含下一条要执行的指令在当前码段中的偏移。,30,4. 指令指针寄存器,31,2.3.3 存储器组织,CPU对存储器的读写,CPU要想进行数据的读写,必须和外部器件(标准的说法是芯片)进行三类信息的交互: 存储单元的地址(地址信息) 器件的选择,读或写命令(控制信息) 读或写的数据(数据信息),32,2.3.3 存储

12、器组织,CPU,内存,地址总线,控制总线,数据总线,CPU对存储器的读写,33,34,2.3.3 存储器组织,总线在逻辑上划分的图示:,35,36,2.3.3 存储器组织,上述的那些存储器在物理上是独立的器件。 但是它们在以下两点上相同: 1、都和CPU的总线相连。 2、CPU对它们进行读或写的时候都通过控制线发出内存读写命令。,37,内存地址空间,将各类存储器看作一个逻辑存储器: 所有的物理存储器被看作一个由若干存储单元组成的逻辑存储器; 每个物理存储器在这个逻辑存储器中占有一个地址段,即一段地址空间; CPU在这段地址空间中读写数据,实际上就是在相对应的物理存储器中读写数据。,2.3.3

13、存储器组织,38,39,8086PC机内存地址空间分配的基本情况,2.3.3 存储器组织,2. 段寄存器,物理地址,CPU访问内存单元时,要给出内存单元的地址,所有的内存单元构成的存储空间是一个一维的线性空间,每一个内存单元在这个空间中都有唯一的地址。,40,其他部件,地址加法器,输入输出 控制电路,内存,8086,段地址,偏移地址,16位,16位,20位,20位,控制总线,数据总线,地址总线,2. 段寄存器,(1)由CPU相关部件提供两个16位的地址,(2)段地址和偏移地址通过内部总线送入地址加法器,(3)地址加法器将2个16位地址合成20位物理地址,(4)通过内部总线将20位物理地址送入输入输出控制电路,(5)将20位物理地址送入地址总线,41,2. 段寄存器,物理地址=段地址16+偏移地址,(1)相关部件提供段地址和偏移地址,(2)段地址和偏移地址送入,(3)段地址16,(4)段地址16+偏移地址,得出物理地址并送入地址总线,42,2.3.3 存储器组织,43,2.3.3 存储器组织,44,2.3.3 存储器组织,45,作业,P41 2.1 2.3 2.5,查阅:数据类型有关资料,46,

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

最新文档


当前位置:首页 > 高等教育 > 大学课件

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