【程序设计】Intel 80x86系列微处理器.ppt

【程序设计】Intel 80x86系列微处理器.ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言程序设计 第二章 Intel 80x86系列微处理器 提纲 2.1 Intel CPU的发展 2.2 PC机操作系统的发展 2.3 16位CPU及DOS基础 2.4 32位CPU及Windows基础 2.1 Intel CPU的发展 4位CPU:4004 45条指令 执行速度为50kIPS 8位CPU:8008、8080 执行速度达到500KIPS 寻址范围达到64KB 16位CPU:8086、8088、80286 16位CPU, 能够进行16位数据的运算和处理 寻址范围达到1MB 32位CPU:80386、80486 准64位CPU:Pentium、PⅡ、P Ⅲ、P4 64位CPU:Itanium 2.2 PC机操作系统的发展 PC机操作系统主要有以下系列: 2.2.1 MS-DOS 2.2.2 桌面Windows系统 2.2.3 Windows NT系列 2.2.4 Linux 2.3 16位CPU及DOS基础 8086/8088 CPU按功能可分成两大部分: 总线接口单元BIU(Bus Interface Unit) 执行单元EU(Execution Unit) 8086一次可存取2字节,比8088的性能要高 8088微处理器的内部结构如图所示。(下页) 2.3.1 执行单元 执行单元主要包括 标志寄存器Flags、 算术逻辑单元ALU、 通用寄存器。 执行单元主要实现两种操作: 一是根据指令进行算术逻辑等运算 二是给出程序要访问的内存单元地址,交给总线接口单元 2.3.2 总线接口单元 负责CPU与存储器和外设之间的信息传送 由地址加法器、段寄存器(CS,DS,ES,SS)、指令指针IP、指令队列和总线控制逻辑组成。 在执行单元执行指令的过程中,总线接口单元负责从内存指定部分取出指令送至指令队列中排队。 在执行指令时,所需要的内存操作数也是由总线接口单元从内存的指定区域取出传送给执行单元。 总线接口单元中指示器IP的作用及用法 保存着下一次将要从内存中取出的指令的偏移地址 根据IP的内容(16位)和段寄存器CS的内容(16位)形成指令的物理地址(20位) 根据该地址从主存中取出指令,送入指令队列中排队 指令执行完毕后IP增加,指向下一条要执行的指令。 2.3.3 寄存器 1.段寄存器(CS,DS,ES,SS) 段寄存器用来确定该段在内存中的起始地址。包括: 代码段寄存器CS 数据段寄存器DS 堆栈段寄存器SS 附加数据段寄存器ES 2.指令指针IP 指令指针IP总是保存下一次将要执行的指令的偏移地址,偏移地址指的是这条指令在代码段中的位置。 在程序运行时,IP的内容由CPU自动调整 。 3.堆栈指针SP 堆栈指针寄存器SP用于存放当前堆栈段中栈顶的偏移地址 。 4.数据寄存器AX,BX,CX,DX 数据寄存器通常用来保存操作数或运算结果等信息,也有如下专门用途。 AX寄存器称为累加器,它的使用频度最高,用于算术、逻辑运算以及与外设传送信息等。 BX寄存器称为基址寄存器,可用于存放存储器地址。 CX寄存器称为计数器,可作为循环或串操作等指令中的隐含计数器。 DX寄存器称为数据寄存器,可用来存放双字数据的高16位,或存放外设端口地址。 AX,BX,CX,DX都是16位的寄存器,每一个又可以分为高8位和低8位来使用。 例如:AX的值为0E9FH,那么,AH=0EH,AL=9FH 。 5.基址寄存器BP 基址寄存器 可用来保存操作数或运算结果等信息 也用于存放某一存储单元的偏移地址,此时多用于对堆栈段中数据的非顺序存取 BX寄存器也是基址寄存器。 6.变址寄存器SI,DI SI是源变址寄存器,DI是目标变址寄存器 可用来保存操作数或运算结果等信息 也用于存放某一存储单元的偏移地址 在数据块操作中,SI和DI分别指向源地址和目标地址。 7.标志寄存器Flags 包含9个标志位,表示CPU所处状态信息及运算结果的特征, 在执行指令的过程中,根据指令执行的结果自动改变这些标志位, 在程序中可以取出这些标志位 标志寄存器如下图 标志寄存器 辅助进位标志AF: 在字操作时若低位字节向高位字节有进位或借位时,则AF=1,否则AF=0。 进位标志CF: 当结果的最高位产生一个进位或借位时,CF=1,否则CF=0。 在移位或循环移位指令中,会把操作数的最高位(左移时)或最低位(右移时)移入CF中。 标志寄存器 溢出标志OF: 有符号数运算时,当其运算结果超出了8位或16位有符号数所能表达的范围时,将产生溢出,置OF为1,否则置OF=0

文档评论(0)

精品资料 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档