欢迎来到天天文库
浏览记录
ID:57006501
大小:1.34 MB
页数:36页
时间:2020-07-26
《汇编语言 寻址方式及堆栈课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、寻址方式的概念和基本分类;7种寻址方式及“两对”寻址方式的区别;寻址方式与常量、变量和指针的关系;堆栈概念、结构元素和操作指令。本章要点CPU访问内存的两个目的:①读取指令;②存取数据。CPU访问内存的三种方式:控制器自动取指循环;程序控制方式访问数据段;堆栈方式。第三章寻址方式及堆栈一条汇编指令语句包含操作码和操作数两种信息,有些像自然文字的谓语和宾语:操作码字段为指令,描述语句的功能;操作数字段描述操作数或操作数的来源和去向;CPU获得操作数的方式叫作寻址方式。3.1寻址方式操作数或操作数的地址操作码三类寻址方式的特点:寄存器寻址:存取数据在CPU内部进行,故速度最快;寄存器数量很少,寻址
2、方式简单;存储器寻址:为便于组织串、数组等数据结构复杂的数据处理,必须有更灵活、也就相对复杂的寻址方式,是本节的重点;I/O端口寻址:I/O端口的任务是实现计算机核心和外界的数据交换,故寻址方式也相对简单。3.1.1寄存器寻址当需要处理寄存器中的数据或将处理结果存入寄存器的时,使用“寄存器寻址”;在汇编语言中直接以寄存器名对寄存器寻址:MOVDS,AX意即将AX的内容送入数据段寄存器DS。3.1.2立即数寻址先看一例子:MOVAX,201H这条指令将16进制数201送入寄存器AX。存放结果的AX的寻址方式是“寄存器寻址”,而后面的201H是一个常数,它是随指令从代码段来的。由于这类操作数就在指
3、令中,“立即”可以参与运算,故称作“立即数寻址方式”。因立即数伴随指令在代码段中,所以这种寻址也应属存储器寻址。3.1.3存储器寻址存储器寻址必然涉及段,即最终要以逻辑地址段基址:偏移量形成物理地址。由于在大多数使用场合地址指针的段基址是“现成的”和隐含的,所以本小节讨论的重点是“有效地址”——偏移量的问题。偏移量是某存储单元和段基址间的距离,又被称作有效地址。偏移量或有效地址的形成:偏移量=位移量+基地址+变址量上述三个分量的不同组合,演绎出存储器寻址的各种方式。①直接寻址是在指令中直接给出操作数地址偏移量的寻址方式。比如把200H单元的内容送入AL:MOVAL,[200H]注意直接寻址和立
4、即数寻址方式区别:方括号里的数字是操作数的有效地址,[200H]表示该单元的内容。显然,直接寻址方式是非常直观的存储器寻址方式,但不方便处理整块的数据。②寄存器间接寻址寄存器的内容是某存储单元的有效地址,以这种方式寻址就叫作寄存器间接寻址。如要将200H单元的内容送入AL,使用寄存器间接寻址需要这样:MOVBX,200HMOVAL,[BX]所谓“间接”就是操作数的取得是通过寄存器间接获得的。应注意寄存器间接寻址方式和寄存器寻址相区别:后者在意的目标的是寄存器的内容,而前者是寄存器的内容作为偏移量的存储单元的内容。两者的书写形式也不同,寄存器间接寻址时将用作间接寻址的寄存器用方括号括起来。能用作
5、存储器间接寻址的有下述地址指针寄存器:BX,SI,DI,BP显然,连续将上述寄存器的内容增一或减一,可方面地处理数据块,如处理一维数据或字符串,高精度数字运算等。可参与存储器寻址的寄存器又被成为“地址指针寄存器”,具备“准指针”的功能。③变址寻址和基址寻址(寄存器相对寻址)某地址指针寄存器的内容和指令中给出的位移量之和形成有效地址的寻址方式。它是直接寻址方式和寄存器间接寻址方式的一种组合,请看例子:MOVAL,[BX+20H]ADDAL,10[SI]指令中10[SI]和[SI+10]是等价的。和寄存器间接寻址方式相比,地址指针寄存器的内容可以从0开始,这样地址指针寄存器可以兼作计数器。至于“变
6、址寻址”和“基址寻址”的差异只涉及使用地址指针寄存器的不同,在编程应用上没有区别,故这两种寻址方式又统称为“寄存器相对寻址”。④相对基址变址寻址有效地址是基址寄存器的内容、变址寄存器的内容和指令中给出的位移量之和,如:MOVAL,20H[BX][SI]MOVAH,80[BS][DI]MOVDX,100H[BX][DI]20H[BX][SI]也可以写成[20H+BX+SI]。这种寻址方式能比较方便地处理二维数组等更复杂的结构数据。由于基于BP的基址变址寻址的隐含段寄存器是堆栈段SS,所以在数据段的这种寻址方式常是BX分别和SI和DI配合。可以认为相对基址变址寻址方式是最一般的寻址方式,其他寻址方
7、式都可以看作是基址变址寻址方式的特例。比如:MOVAL,[100H+BX+SI]去掉其中任一个或二个分量就会是某种其他寻址方式。3.1.4寻址方式与常量、变量及“准指针”①立即数寻址方式对应汇编语言的常量;②存储器寻址方式对应汇编语言的变量;③在各种地址指针寄存器参与的存储器寻址方式中,地址指针寄存器充当“准指针”的角色。串操作寻址和I/O寻址以后介绍。物理地址、段、逻辑地址和寻址方式小结:①物理
此文档下载收益归作者所有