微机原理教案71.ppt
《微机原理教案71.ppt》由会员分享,可在线阅读,更多相关《微机原理教案71.ppt(51页珍藏版)》请在三一办公上搜索。
1、第 六 讲,8086/8088的指令系统,指令系统概述,按照汇编指令格式划分,指令有三种:双操作数指令:指令中指定两个操作数,其中一个是源操作数(SRC),另一个是目的操作数(DEST)。单操作数指令:指令只需一个操作数。它既是源操作数(SRC),也是目的操作数(DEST)。无操作数指令:虽然指令本身未指明操作数在哪里,但是指令却隐含指明操作数的地方。,指令系统概述,学习每一条指令应该注意以下几点:指令的格式和执行的操作允许的寻址方式与标志位的关系,指令系统概述,按照汇编指令功能划分,8086的指令可以分成六大类:数据传送指令算术运算指令位运算指令串操作指令控制转移指令处理器控制指令,数据传送
2、指令,指令类型,指令,指令功能,通用数据传送,目标地址传送,标志位传送,I/O数据传送,MOVd,sPUSH sPOP dXCHG d,sXLAT,字节或字传送字压入堆栈字弹出堆栈字节或字交换字节翻译(代码转换),LEAd,sLDSd,sLESd,s,装入有效地址装入地址指针(用DS)装入地址指针(用ES),LAHFSAHFPUSHFPOPF,将F低字节装入AH寄存器将AH内容装入F低字节将F的内容压入堆栈从堆栈中弹出一个字装入F,IN累加器,端口OUT端口,累加器,输入字节或字输出字节或字,表一数据传送指令列表,通用数据传送指令,有以下五条MOV 把源操作数传送到目的操作数PUSH指针上移,
3、源操作数进栈POP 出栈到目的操作数,指针下移XCHG交换源,目的操作数XLAT代码转换,通用数据传送指令,MOV 指令 基本格式和功能指令格式:MOV dest,src 其中 dest 表示目的操作数,src表示源操作数 执行的操作:(dest)(src)与标志的关系:与标志没有关系,不影响标志位。,通用数据传送指令,MOV 指令 数据传送通道,图1 MOV 指令数据传送通道,通用数据传送指令,MOV 指令 一些说明说明:立即数不能直接传给段寄存器;段寄存器之间也不能进行直接传送。(这2种情况通常要通过通用寄存器间接进行)DEST和SRC两个操作数不能同时为存储器操作数;两个存储单元之间不能
4、用一条MOV指令直接完成数据传送。存储器操作数可用任何一种存储器寻址方式。DEST和SRC长度须相同,即同时为字或字节。,通用数据传送指令,MOV 指令 一些说明说明立即数只能出现在源操作数位置,不能作DESTCS只能作源操作数,不能作目的操作数。传送实质上是复制,对源操作数无影响。16位数据的传送遵循地址“高对高,低对低”的原则。这个原则不仅对MOV指令适用,对所有的传送皆适用。,通用数据传送指令,MOV 指令 例子立即数r/m MOV CL,05H MOV AX,1234H MOV ADDR,12H MOV ADDR,1234H,通用数据传送指令,MOV 指令 例子reg reg MOV
5、DH,AL MOV DS,AXr m MOV DL,DA_BYTE MOV DL,SI MOV AX,DA_WORD,通用数据传送指令,MOV 指令 例子m m MOV DL,DA_BYTE1 MOV DA_BYTE2,DLm m(存储单元内容互换)MOV CL,DA_BYTE1 MOV DL,DA_BYTE2 MOV DA_BYTE1,DL MOV DA_BYTE2,CL,通用数据传送指令,MOV 指令 例子指令辩误:判断下列指令的正误并说明原因MOV AL,CXMOV AL,CXMOV 3000H,BXMOV AL,1200HMOV CS,BXMOV DS,1200HMOV ES,DS,通
6、用数据传送指令,MOV 指令 练习 题目1:已知当前BX=1200H,CS=1800H,IP=0500H,DS=3000H,则执行指令MOV BX+2000H,12ABH 后,12ABH放在哪两个存储单元(物理地址)?,答案:12ABH放在33200H和33201H存储单元中。其中12H放在33201H单元中,而0ABH放在33200单元中。,通用数据传送指令,MOV 指令 练习题目2:将DS段中2000H单元与3000H单元的内容互换,请写出指令序列。解:,MOV AL,2000HMOV BL,3000HMOV 2000H,BLMOV 3000H,AL,通用数据传送指令,PUSH 和 POP
7、指令 基本格式和功能指令格式:PUSH SRC POP DEST执行的操作:PUSH 压入。源操作数进栈至栈顶。“先减再压”SP SP-2 SS:(SP),(SP)+1)(SRC)POP 弹出。栈顶出栈到目的操作数。“先弹再加”(DEST)SS:(SP),(SP)+1)SP SP+2,通用数据传送指令,PUSH 和 POP指令 基本格式和功能与标志的关系:与各标志位无关,不影响标志位寻址方式:PUSH mem/reg POP mem/reg 注意:操作数一律为16位操作数。允许使用段寄存器,但POP操作数不允许为CS。可以使用除立即数以外的任何数据寻址方式。,通用数据传送指令,PUSH 和 P
8、OP指令 关于堆栈堆栈是一段特殊组织的内存区域,其内容的存取主要由堆栈指针控制,规则是:“先进后出”或者“后进先出”。,XX,32H,30012H,30013H,30011H,30010H,3000FH,3000EH,30000H,3000H,SS,000FH,SP,6CH,45H,0AH,0013H,SP,堆栈段,通用数据传送指令,PUSH 和 POP指令 关于堆栈例:将4456H压入堆栈。,XX,30012H,30013H,30011H,30010H,3000FH,3000EH,30000H,3000H,SS,56H,堆栈段,44H,“先减再压”,通用数据传送指令,PUSH 和 POP指令
9、 关于堆栈例:从堆栈弹出两个字节送AX。,XX,30012H,30013H,30011H,30010H,3000FH,3000EH,30000H,3000H,SS,56H,堆栈段,78H,12H,34H,34H,AX,12H,AH,AL,“先弹再加”,通用数据传送指令,PUSH 和 POP指令 用途堆栈常有两个用途:暂存和传送。暂存:PUSH AX PUSH BX POP BX POP AX传送:PUSH AX PUSH BX POP AX POP BX,XX,5A06H,AX,1200H,BX,sp,通用数据传送指令,PUSH 和 POP指令 练习题目:已知SS=2000H,AX=1600H
10、,SP=0202H,CX=3456H,当执行以下两条指令后:PUSH AX PUSH CX问:这时SS,AX,CX,SP的内容?存储器中20200H单元的内容为多少?,答案:SS=2000H,AX=1600H,CX=3456H,SP=01FEH;(20200H)=00H,01FEH,01FFH,0200H,0201H,0202H,XX,通用数据传送指令,XCHG指令 基本格式和功能指令格式:XCHG DEST,SRC执行的操作:源操作数与目的操作数内容互换(DEST)(SRC)与标志的关系:与各标志位互不影响,通用数据传送指令,XCHG指令 基本格式和功能寻址方式:XCHG mem/reg,m
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 教案 71
链接地址:https://www.31ppt.com/p-5296446.html