第3章 数据&地址传送指令.ppt

第3章 数据&地址传送指令.ppt

ID:48770529

大小:256.50 KB

页数:23页

时间:2020-01-23

第3章 数据&地址传送指令.ppt_第1页
第3章 数据&地址传送指令.ppt_第2页
第3章 数据&地址传送指令.ppt_第3页
第3章 数据&地址传送指令.ppt_第4页
第3章 数据&地址传送指令.ppt_第5页
资源描述:

《第3章 数据&地址传送指令.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第3章数据和地址传送指令IBM—PC系列计算机的指令系统可以分为五组:数据传送指令、算术指令、逻辑指令、控制转移指令、处理机控制指令数据传送指令:通用数据传送指令、输入/输出指令、地址传送指令、串传送指令3.1通用数据传送指令通用数据传送指令:MOV(移动)PUSH(压入堆栈)POP(从堆栈中弹出)XCHG(交换)地址传送指令:LEA(装入有效地址)MOV指令MOV指令是把第二个操作数的地址中的数据传送(或复制)到第一个操作数的地址中。格式:[标号:]MOV寄存器/内存,寄存器/内存/立即数(MOV指令)说明:不能内存传送到内存即两个内存单元之间不能直接传送数据。

2、2.不能立即数传送到段寄存器3.段寄存器传送到段寄存器即不能在两个段寄存器之间传送数据。4.目标操作数不能是CS或立即数MOV指令不会影响标志位。操作数只影响引用的寄存器的部分。移动一个字节到CH不会影响CL。(MOV指令)例子1:通过寄存器把段地址送到段寄存器。MOVAX,DATA_SEGMOVDS,AX例子2:把TABLE的偏移地址送到BX。下面偏移属性的操作是地址(不是内容).MOVBX,OFFSETTABLEPUSH(压入栈)格式:PUSHSCR寄存器/内存/立即数操作:①(SP)←(SP)-2②((SP))←(SCR)((SP)+1)←(SCR+1)例子

3、:PUSHAX①(SP)←(SP)-2②(SP)←(AL),((SP)+1)←(AH)标示例子注释PUSHreg16PUSHreg32PUSH内存16PUSH内存32PUSHseg.PUSHimm8PUSHWimm16PUSHDimm32PUSHAPUSHADPUSHFPUSHFDPUSHBXPUSHEAXPUSH[BX]PUSH[EAX]PUSHDSPUSH12HPUSHW1000HPUSHD20000000HPUSHAPUSHADPUSHFPUSHFD16位寄存器32位寄存器16位寻址32位寻址任何段寄存器8b立即数16b立即数32b立即数所有16位通用寄存器

4、入栈所有32位通用寄存器入栈16位标志入栈32位标志入栈列表6-2-1Push指令(PUSH)(1)PUSHA把AX、CX、DX、BX、SP、BP、SI和DI按照顺序入栈,sp减16.。(2)PUSHF(pushflags)把标志寄存器入栈,sp减去2。(3)PUSHAD与POPAD从栈中压入和弹出32位寄存器的内容(80386或更新的CPU).(PUSH)注意:(1)允许PUSH立即数,不允许POP立即数(2)允许PUSHCS,不允许POPCS(3)PUSH指令压入一个字到栈中并把sp减2(8086或80286)POP指令POP指令从堆栈中弹出两个字节到指定的1

5、6位寄存器,段寄存器或两个内存单元,SP减2。格式:POPDST寄存器/内存选项:①(DST)←((SP))(DST+1)←((SP)+1)②(SP)←(SP)+2列表6-2-2POP指令格式Sign例子注释POPreg16POPreg32POP内存16POP内存32POPSeg.POPAPOPADPOPFPOPFDPOPDIPOPEBXPOPWORDPTR[DI+2]POPDATA32POPDSPOPAPOPADPOPFPOPFD16位寄存器32位寄存器16位位置地址32位位置地址.寄存器(除了CS)16b通用寄存器出栈32b通用寄存器出栈16位标志出栈32位扩

6、展标志出栈小结(Push与POP)堆栈是内存中的一段空间,以先进后出的方式运作。只有一个出入口,所以只需一个SP。任何时刻,SP的内容指向当前栈顶Push或POP一个字(不允许是一个字节).任意的寻址方式(除了立即数寻址).PUSH和POP指令不影响标志位。XCHG指令XCHG交换两个数据项.格式:[标号:]XCHG寄存器/内存,寄存器/内存例子:WORDQDW?…XCHGCL,BH;交换两个寄存器的内容XCHGCX,WORDQ;交换寄存器和内存的内容(XCHG指令)列表6-2-3XCHG指令格式标示注释XCHGreg.,reg.XCHGreg.,内存.从字节,字

7、或者双字的寄存器之间交换数据。不允许用段寄存器从内存与字节,字或者双字的寄存器之间交换数据。(XCHG指令)注意:不允许内存与立即数交换。不允许段寄存器之间交换数据。可以用任何寻址方式,除了立即寻址。不影响标志位。(XCHG指令)例子:XCHGBX,[BP+SI]执行指令之前:(BX)=6F30H,(BP)=0200H,(SI)=0046H,(SS)=2F00H,(2F246H)=4154H所以操作数的PA=(SS)*10H+(BP)+(SI)=2F000+0200+0046=2F246H执行指令之后:(BX)=4154H,(2F246H)=6F30H3.2地址传

8、送指令LE

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

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

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