分享
分享赚钱 收藏 举报 版权申诉 / 52

类型IBM-PC汇编语言程序设计2.ppt

  • 上传人:精品资料
  • 文档编号:9819438
  • 上传时间:2019-09-08
  • 格式:PPT
  • 页数:52
  • 大小:1.03MB
  • 配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    IBM-PC汇编语言程序设计2.ppt
    资源描述:

    1、第二章 80x86计算机组织,2.1 80X86微处理器 2.2 基于微处理器的计算机系统构成 2.3 中央处理机 2.4 存储器 2.5 外部设备,2.1 80x86微处理器,计算机的五个组成部分:微处理器、存储器、输入/输出设备、系统总线 80x86微处理器是美国Intel公司生产的微处理器系列。微处理器即中央处理机(central processing unit CPU),包括运算器和控制器。,80x86微处理器概况,1晶体管数 芯片中所包含的晶体管数 2主 频 芯片所用的主时钟频率,3 运算速度:MIPS(Millions of Instructions PerSecond);以执行时

    2、间最短的指令来估算速度;取决于主频、 体系结构 4 字 长:表示机器数所用的位数,5总 线 计算机中的一组公共信号线 6数据总线 负责计算机中数据在各组成部分之 间的传送 数据总线宽度:芯片内部数据传送的宽度 外部数据总线宽度:芯片内和芯片外交换数据的宽度 7地址总线 负责指出信息的来源和目的地址总线宽度:专用于传送地址的总线宽度寻址空间:处理器可以访问的存储器的最大范围存储器容量的单位:基本单位210=1024,1024K=1M,1024M=1G 8控制总线 负责控制总线的动作,基本概念2,9存储器组织的层次结构为了在速度、容量、成本三者之间达到最佳平衡 状态,采用了层次结构的存储器组织,具

    3、体:1、高速缓冲存储器 速度快、容量小、成本高2、主存储器 速度、容量、成本居中3、外存储器 速度慢、容量大、成本低,CPU Cache 主存储器 外存储器,基本概念3,10工作方式实模式8086的工作方式 保护模式 80286+,可提供虚拟存储的管理和多任务的管理机制 虚86模式80386+ 一台机器可同时模拟多个8086处理器的工作,基本概念4,2.2 基于微处理器的计算机系统构成,硬件包括电路、插件板、机柜的物理设备;软件指为了运行、管理和维护计算机而编制的各种程序的总和。,计算机系统包括硬件和软件两大部分。,2.2.1 硬件,硬件:三个主要组成部分,用系统总线连接。,中央处理机CPU,

    4、总线控制逻辑,接 口,接 口,存储器,大容量 存储器,I/O设备,I/O子系统,系统总线,. . .,. . .,2.2.2 软件,系统软件:计算机厂家提供给用户的一组程序 用户软件:用户为了某种需要自行编制的各种程序,翻译程序:汇编程序:把汇编语言源程序翻译成机器语言程序,如:MASM、 TASM编译程序:先把高级语言翻译成机器语言,然后执行如:PASCAL 、FORTRAN解释程序:直接把高级语言在机器上执行,一边解释一边执行如:BASIC 调试程序:是系统提供给用户的能监督和控制用户程序的一种工具,可以装入、修改、显示或逐条执行一个程序。如DEBUG,2.3 中央处理机,2.3.1 中央

    5、处理机cpu的组成,1、中央处理机一般功能,l进行算术逻辑运算 l可接收和发送数据 l可暂存少量数据 l提供控制信号 l对指令解码,l算术逻辑部件ALU l控制逻辑 l寄存器组,2、CPU一般组成,2.3.2 80x86的寄存器组,1、程序可见的寄存器 汇编语言程序中用到 2、程序不可见的寄存器 系统所用,通用 寄存器,专用 寄存器,段寄 存器,80x86程序可见的寄存器,1、通用寄存器,数据寄存器 AX (accumulator) BX (base) CX (count) DX (data),指针或变址寄存器 SP (stack pointer) BP (base pointer) SI (

    6、source index) DI (destination index ),80x86通用寄存器,寄存器的主要用途,通用寄存器的特殊用途和隐含性质,16位与32位通用寄存器的异同点:相同点:每个寄存器的专用特征相同不同点:1、16位可以保存的数据宽度可以是8位、16位,而32位可以保存的数据宽度可以是8位、16位、32位2、16位只有SP、BP、SI、 DI、 BX五个寄存器可用于存放地址,而32位则8个都可以用于存放地址,2、专用寄存器,IP (instruction pointer)指令指针寄存器(存放代码段中的偏移地址, 始终指向下一条指令的首地址) FLAGS (PSW program

    7、 status word)程序状态字寄存器条件码标志控制标志系统标志位,OF 溢出标志 SF 符号标志 ZF 零标志 CF 进位标志 AF 辅助进位标志 PF 奇偶标志,TF 陷阱标志 IF 中断标志 IOPL I/O特权级,DF 方向标志,8086/8088标志寄存器(程序状态字寄存器 PSW),15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0,条件码标志: 控制标志: 系统标志位:,OF 溢出标志 DF 方向标志 IF 中断标志 SF 符号标志 TF 陷阱标志 ZF 零标志 CF 进位标志 AF 辅助进位标志 PF 奇偶标志,OF DF IF TF SF ZF A

    8、F PF CF,程序状态字(PSW),例: MOV AX, 1MOV BX, 2ADD AX, BX指令执行后,(AX)=3, OF=0, CF=0, ZF=0, SF=0例: MOV AX, FFFFHMOV BX, 1ADD AX, BX指令执行后,(AX)=0, OF=0, CF=1, ZF=1, SF=0,标志为 1,标志为 0,3、段寄存器,CS (code segment)代码段 DS (data segment) 数据段 SS (stack segment)堆栈段 ES (extra segment) 附加段 FS 附加的数据段 GS 附加的数据段,段寄存器是根据内存分段的管理模

    9、式而设置的。内存单元的物理地址由段寄存器的值和一个偏移量组合而成的,这样可用两个较少位数的值组合成一个可访问较大物理空间的内存地址。,寄存器与存储器的比较:寄存器 存储器在CPU内部 在CPU外部访问速度快 访问速度慢容量小,成本高 容量大,成本低用名字表示 用地址表示没有地址 地址可用各种方式形成,使用debug观察寄存器,2.4 存储器,存储器是用来存放程序、数据、中间结果和最终结果的记忆装置。,计算机存储信息的基本单位是一个二进制位(bit) ,1或0存储器以字节(8bit)为单位存储信息汇编语言的数据类型:字节、字、双字、四字每个字节单元有一个唯一的物理地址,从0编号,顺序加1地址也用

    10、二进制数表示(无符号整数,写成十六 进制)16位二进制数可表示216=65536=64K个地址0000H FFFFH 字长16位,一个字要占用相继的两个字节 低位字节存入低地址,高位字节存入高地址 机器以偶地址访问(读/写)存储器 字、 4字单元地址用它的最低字节地址来表示,2.4.1 存储单元的地址和内容,7 6 5 4 3 2 1 0,1 0 0 1 1 1 1 1 0000H (0000H)=9FH,0 0 1 0 0 1 1 0 0001H (0001H)=26H,0 0 0 1 1 1 1 0 0002H,1 1 0 1 0 1 1 1 0003H,存储器,15 14 13 12 1

    11、1 10 9 8 7 6 5 4 3 2 1 0,字,高位字节 低位字节,1 0 0 1 1 1 1 1,0 0 1 0 0 1 1 0,(0000H)=269FH,奇数 地址,存储单元的地址和内容的关系(地址)=内容(地址)=内容,字节12340H的内容为:12H,表示为(12340H)12H,字节12341H的内容为:34H,表示为(12341H)34H,字内容(12340H)?,字内容(12341H)?,双字内容(12340H)?,双字内容(12341H)?,3412H,5634H,78563412H,90785634H,2.4.2 实模式存储器寻址,实模式即8086/8088的工作方式

    12、,工作在20位地址,单任务工作方式下,独占系统所有资源。,8086/8088的数据总线宽度是16位,地址总线宽度是20位,因220=210*210 =1024K=1M(地址范围 00000H FFFFFH) 机器字长16位:表示范围 0000H FFFFH (64KB) 所以实模式下允许的最大寻址空间为1MB,但由于其数据总线宽度是16位,所以实模式要解决在16位字长的情况下实现20位的寻址。如何解决?,1、存储器地址的分段,每个段的最大长度可达64KB(216KB),段内地址是连续的、线性增长的,允许单个逻辑段在整个1MB存储空间内浮动。 可以有相连的段(如:C和D段)、不相连的段(如:A和

    13、B段)以及相互重叠的段(如:B和C段),小段(Paragraph):从0地址开始,每16个字节为一小段,共有64K个小段00000H,00001H, ,0000EH,0000FH00010H,00011H, ,0001EH,0001FH00020H,00021H, ,0002EH,0002FHFFFF0H, FFFF1H, , FFFFEH,FFFFFH,小段首地址的特征:在十六进制表示的地址中,最低位为0(即20位地址的低四位为0),逻辑地址 是程序中使用的地址,它由段基址和段内偏移值所组成,段基址与段内偏移值都为16位的二进制数。 物理地址 也叫实际地址或绝对地址,是CPU访问存储器时实际

    14、使用的地址,为20位地址。 段地址:段起始地址的高16位 偏移地址:段内相对于段起始地址的偏移值(16位)(有效地址EA),物理地址段基址16段内偏移地址。,16 位 段 地 址,16 位 偏 移 地 址,0000,+,20 位 物 理 地 址,存储器的逻辑地址与物理地址,10011111,00100110,01001000,逻辑地址,段地址 : 偏移地址,1000 : 0000H,1000 : 0001H,1000 : 0002H,1000 : 0003H,1000 : 0004H,1000 : 0005H,物理地址,10000H,10001H,10002H,10003H,10004H,10

    15、005H,10000011,01011100,10100010,字节内容(10000H)9FH;(10001H)26H 字内容 (10000H)269FH;(10001H)4826H,访问两次内存,例:(DS)=3000H, EA=1234H,物理地址=16d (DS) + EA=31234H,? 物理地址相同,其端地址和偏移地址是否唯一?,2、段寄存器(CS、 DS、 SS、 ES、 FS、GS)存放段地址,确定一个段的的起始地址.用途各不相同:代码段(CS):存放当前正在运行的程序数据段(DS):存放当前运行程序所用的数据 ,或串处理指令中的源操作数堆栈段(SS):定义堆栈(后进先出)的所

    16、在区域附加段(ES):附加的数据区,或串处理指令中的目的操作数各段在存储器中的分配:由操作系统负责,但需要时也可指定,存储器,64KB代码,01500H,42000H,1CD00H,段寄存器,CS DS SS ES,64KB堆栈,64KB数据,64KB附加数据,B0000H,B000H,段的重叠指每个段区的大小允许根据实际需要来分配,而不一定要占有64KB的最大段空间,8KB代码,2KB数据,256B堆栈,CS,DS,SS,ES,存储器,0200H,0400H,0480H,例 :,02000H的段地址为200H DS-CS=200H扩充为物理地址,其大小为2000H,即2138K SS-DS类

    17、似,段寄存器及其指针寄存器的引用关系,取指令所用的段寄存器和偏移量一定是用CS和IP; 堆栈操作所用的段寄存器和偏移量一定是SS和SP; 串操作的目标操作数所用的段寄存器和偏移量一定是ES和DI; 其它情况,段寄存器除了其默认引用的寄存器外,还可以强行改变为其它段寄存器。,2.4.3 保护模式存储器寻址,保护模式:工作在80286+,工作在系统所提供地址,多任务方式下,根据任务的特权级请求使用系统资源 多任务处理功能:多个应用程序能同时在一台计算机上运行,而且彼此必须相互隔离,使一个应用程序的故障或缺陷不会破坏系统,也不会影响其它应用程序的运行。 虚拟存储器:支持程序员编写的程序具有比主存储器

    18、大得多的空间。,引出保护模式的原因:,直接原因:寻址(1MB以上的地址如何访问?),重要原因:功能(支持多任务处理),1、逻辑地址,实模式逻辑地址=段地址:偏移地址,保护模式逻辑地址=选择器:偏移地址,二者区别:1.选择器(存放在段寄存器中,但不能直接表示成段基地址)2.偏移地址为32位,最大段长可达4GB,用来描述段的大小、段在存储器中的位置及其控制和状态信息 基地址(base):指定段的起始地址 界限(limit): 存放着该段的长度 访问权(access):说明该段在系统中的功能,并给出一些控制信息 附加字段:386+,表示该段的一些属性,2.描述符,保护模式下存储器寻址过程,选择器,指

    19、定的途径,描述符,基地址和界限值,段基地址,偏移地址,物理地址,逻辑地址,所选存储单元,描 述 符64,描述符表,所选段,存 储 器,段基地址32,选择器16,偏移地址 32,逻辑地址,保护模式下的存储器寻址,2.5外部设备,外部设备:实现人机交互和机间通讯为目的的一些机电设备,如键盘、鼠标、显示器、硬盘等等,外部设备与主机( CPU 和存储器)的通信是 通过外设接口(Interface)进行的,每个接口包括 一组寄存器。数据寄存器:存放外设和主机间传送的数据 状态寄存器:保存外设或接口的状态信息 命令寄存器:保存CPU发给外设或接口的控制命令,端口(port)地址:又称端口号,是外设中的每个寄存器的编号 I/O地址空间:独立于内存储器,80x86机可达64KB,也即端口地址的范围是:0000FFFFH,主机与外设交换信息的方式:直接查询中断成组传送,

    展开阅读全文
    提示  道客多多所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:IBM-PC汇编语言程序设计2.ppt
    链接地址:https://www.docduoduo.com/p-9819438.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    道客多多用户QQ群:832276834  微博官方号:道客多多官方   知乎号:道客多多

    Copyright© 2025 道客多多 docduoduo.com 网站版权所有世界地图

    经营许可证编号:粤ICP备2021046453号    营业执照商标

    1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png



    收起
    展开