汇编语言程序设计第三章80x86的指令系统和寻址方式课件

汇编语言程序设计第三章80x86的指令系统和寻址方式课件

ID:33493557

大小:2.26 MB

页数:461页

时间:2018-05-25

汇编语言程序设计第三章80x86的指令系统和寻址方式课件_第1页
汇编语言程序设计第三章80x86的指令系统和寻址方式课件_第2页
汇编语言程序设计第三章80x86的指令系统和寻址方式课件_第3页
汇编语言程序设计第三章80x86的指令系统和寻址方式课件_第4页
汇编语言程序设计第三章80x86的指令系统和寻址方式课件_第5页
资源描述:

《汇编语言程序设计第三章80x86的指令系统和寻址方式课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三章80X86的指令系统和寻址方式任课教师:陶雪丽xueli_xl@126.com8/27/20211河南师范大学计算机与信息技术学院本章内容提要80X86的寻址方式程序占有的空间和执行时间80X86的指令系统8/27/20212河南师范大学计算机与信息技术学院预备知识指令由操作码和操作数两部分组成。操作码说明计算机要执行哪种操作,如传送、运算、移位、跳转等操作,它是指令中不可缺少的组成部分。操作数是指令执行的参与者,也就是各种操作的对象。操作码操作数用助记符表达的指令的一般格式:操作码操作数1,……,操作数n;注释8/27/20213河南师范大学计算

2、机与信息技术学院预备知识操作码:用一个唯一的助记符表示(指令功能的英文缩写)对应着机器指令的一个二进制编码操作数:可以是操作数本身(一个具体的数值)也可以是存放数据的寄存器或指明数据在主存位置的存储器地址8/27/20214河南师范大学计算机与信息技术学院预备知识操作数字段可以是一个、二个或三个,通常称为一地址、二地址或三地址指令。单操作数指令就是一地址指令它只需要指定一个操作数。双操作数指令就是二地址指令。操作数2称为源操作数scr,操作数1称为目的操作数dest,它不仅作为指令操作的一个对象,还用来存放指令操作的结果。操作码操作数操作码操作数1,操作数28

3、/27/20215河南师范大学计算机与信息技术学院预备知识大多数运算指令可使用三地址指令:除给出参加运算的两个操作数(操作数2,操作数3)外,还指出运算结果的存放地址(操作数1)。分号后的内容是对指令的解释。操作码操作数1,操作数2,操作数38/27/20216河南师范大学计算机与信息技术学院预备知识而操作数的给出方式比较复杂,指令系统设计了多种操作数的来源。寻找操作数的方式叫做操作数的寻址方式。操作数采取哪一种寻址方式,会影响机器运行的速度和效率。这种符号指令系统中,操作码的给出方式比较简单。如何寻址一个操作数对程序的设计来讲也是很重要的。8/27/2021

4、7河南师范大学计算机与信息技术学院3.180X86的寻址方式2与转移地址有关的寻址方式1与数据有关的寻址方式8/27/20218河南师范大学计算机与信息技术学院3.1.1与数据有关的寻址方式8086、80286的机器字长位16位,一般情况下只处理8、16位数,只在乘、除指令中才会有32位数。80386及其后继机型字长位32位,它可处理8、16、32位操作数,在乘除指令中还可产生64位数。这种寻址方式用来确定操作数地址从而找到操作数。本节对数据寻址方式的讨论,均以MOV指令为例。8/27/20219河南师范大学计算机与信息技术学院3.1.1与数据有关的寻址方式立

5、即寻址方式寄存器寻址方式直接寻址方式寄存器间接寻址方式寄存器相对寻址方式基址变址寻址方式相对基址变址寻址方式比例变址寻址方式基址比例变址寻址方式相对基址比例变址寻址方式知识要点8/27/202110河南师范大学计算机与信息技术学院1.立即数寻址方式(immediateaddressing)操作数直接存放在指令中,紧跟在操作码之后,作为指令的一部分存放在代码段里。如图3.1(1)所示。这种操作数被称为立即数imm:它可以是8位数值i8;也可以是16位数值i16或32位数值i32。数据存放时采用“小端方式”。立即数寻址方式常用来给寄存器赋值。

6、只能用于源操作数字段,不能用于目的操作数字段。8/27/202111河南师范大学计算机与信息技术学院立即数寻址举例例3.1MOVAL,5指令执行后(AL)=05H。例3.2MOVAX,3064H指令执行后(AX)=3064H,如图3.2所示。例3.3MOVEAX,12345678H指令执行后(EAX)=12345678H。8/27/202112河南师范大学计算机与信息技术学院2.寄存器寻址方式(registeraddressing)操作数存放在CPU的内部寄存器reg中,无需访问存储器,因而可以得到较高的运算速度,如图3.1(2)所示。寄存器可以是:8位(r8

7、):AH、AL、BH、BL、CH、CL、DH、DL16位(r16):AX、BX、CX、DX、SI、DI、BP、SP32位(r32):EAX、EBX、ECX、EDX、ESI、EDI、EBP、ESP段寄存器(seg);CS、DS、SS、ES、FS、GS8/27/202113河南师范大学计算机与信息技术学院寄存器寻址举例例3.4(a)MOVAX,BX如指令执行前(AX)=3064H,(BX)=1234H;则指令执行后,(AX)=1234H,(BX)保持不变。例3.4(b)MOVECX,EDX如执行前(ECX)=0123754H,(EDX)=12345678H;则指令

8、执行后,(ECX)=12345678H

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。