四章节80868088指令系统.ppt
《四章节80868088指令系统.ppt》由会员分享,可在线阅读,更多相关《四章节80868088指令系统.ppt(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、四章节80868088指令系统 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望第一部分第一部分 指令系统概述指令系统概述8086/8088的指令系统中共有的指令系统中共有92种基本指令。种基本指令。可以分成可以分成6个功能组个功能组:1数据传送数据传送(Datatransfer)2算术运算(算术运算(Arithmetic)3逻辑运算和移位指令逻辑运算和移位指令(Logic&Shift)4串操作串操作(Stringmanipulation)5控制转移(控制转移(Co
2、ntrolTransfer)6处理器控制(处理器控制(ProcessorControl)2介绍指令系统使用介绍指令系统使用的符号:的符号:八位寄存器八位寄存器:AH,AL,BH,H,BL,CH,CL,DH,DL十六位通用寄存器十六位通用寄存器:AX,BX,CX,DX,SP,BP,SI,DI堆栈指针堆栈指针SP指令指针指令指针IP(或(或PC)标志位标志位Flags目的和源变址寄存器目的和源变址寄存器DI,SI段寄存器段寄存器CS,DS,ES,SS3src,dest源,目的操作数(下列寻址方式都可以用)源,目的操作数(下列寻址方式都可以用)BX+SI+n,BX+DI+n,BP+SI+n,BP+D
3、I+nSI+n,DI+n,BP+n,BX+nN,r 存储器单元的内容存储器单元的内容(正常在数据段正常在数据段)ES:附加存储器段的内容附加存储器段的内容OPRD操作数操作数Seg段寄存器(段寄存器(CS,DS,ES,SS)im立即数立即数(n8位位,nn16位位,nnnn32位位)48086/8088指令助记符表指令助记符表(自学)自学)自学5自学6第二部分第二部分8086/8088指令系统指令系统一、一、数据传送指令数据传送指令(Datatransfer)(一)通用传送指令(一)通用传送指令(GeneralPurposeTransfer)(二)输入输出指令(二)输入输出指令(Inputan
4、dOutput)(三)目的地址传送指令(三)目的地址传送指令(Address-objecttransfer)(四)标志传送指令(四)标志传送指令(Flagregistertransfer)7(一)通用传送指令(一)通用传送指令(一)通用传送指令(一)通用传送指令(GeneralPurposeTransfer)8088提供方便灵活的通用的传送操作,适用于大多数操作数。提供方便灵活的通用的传送操作,适用于大多数操作数。通用传送指令(除了通用传送指令(除了通用传送指令(除了通用传送指令(除了XCHGXCHG以外)是唯一允许以段寄存器为操以外)是唯一允许以段寄存器为操以外)是唯一允许以段寄存器为操以外
5、)是唯一允许以段寄存器为操作数指令。作数指令。作数指令。作数指令。通用传送指令包括:通用传送指令包括:1、MOV(Movement)2、PUSH(Pushwordontostack)POP(Popwordoffstack)3、XCHG(Exchange)4、XLAT(Translate)81MOV dest,src;(dest)(src)目的目的源源目的目的源源功能:功能:功能:功能:把一个字节把一个字节(B)或一个字(或一个字(W)操作数由源传送至目的。)操作数由源传送至目的。实现实现:寄存器寄存器寄存器寄存器/存储器之间;存储器之间;立即数立即数寄存器寄存器/存储器存储器寄存器寄存器/存储
6、器存储器段寄存器之间的数据传送。段寄存器之间的数据传送。9 具体说,通用数据传送指令能实现:具体说,通用数据传送指令能实现:CPU内部寄存器之间的数据的任意传送内部寄存器之间的数据的任意传送(除了码段寄存器(除了码段寄存器CS和指令指针和指令指针IP以外)。以外)。段寄存器之间不能传送。段寄存器之间不能传送。段寄存器之间不能传送。段寄存器之间不能传送。例:例:MOVDL,CH;8位寄存器位寄存器8位寄存器位寄存器MOVAX,DX;16位寄存器位寄存器16位寄存器位寄存器MOVSI,BPMOVDS,BX;通用寄存器;通用寄存器段段寄存器寄存器MOVAX,CS;段段寄存器寄存器通用寄存器通用寄存器
7、10立即数传送至立即数传送至CPU内部通用寄存器组内部通用寄存器组(AX、BX、CX、DX、BP、SP、SI、DI)。)。用于给寄存器赋初值。用于给寄存器赋初值。不能直接给段寄存器赋值不能直接给段寄存器赋值不能直接给段寄存器赋值不能直接给段寄存器赋值例:例:MOVCL,04H;立即数;立即数8位位寄存器寄存器 MOVAX,03FFH;立即数;立即数16位位寄存器寄存器 PTRPTR:属性定义符号,符号后面的变量(或地址单元)有符:属性定义符号,符号后面的变量(或地址单元)有符:属性定义符号,符号后面的变量(或地址单元)有符:属性定义符号,符号后面的变量(或地址单元)有符号前面的属性号前面的属性
8、号前面的属性号前面的属性 MOVWORDPTRSI,057BH;立即数;立即数存储器存储器MOVBYTEPTRMEM,5;立即数;立即数存储器存储器11CPU内部寄存器(除内部寄存器(除CS和和IP外)外)与存储器(所有寻址方式)之间数据传与存储器(所有寻址方式)之间数据传送。送。可以实现一字节或一个字的传送。可以实现一字节或一个字的传送。存储单元之间不能直接传送存储单元之间不能直接传送存储单元之间不能直接传送存储单元之间不能直接传送 例:例:MOVMEM,AX;累加器累加器存储器存储器,直接寻址直接寻址MOVMEM,DS;段寄存器;段寄存器存储器,存储器,直接寻址直接寻址MOVDISPBX,
9、CX;寄存器;寄存器存储器,存储器,变址寻址变址寻址MOVAX,DISPSI;存储器;存储器累加器,累加器,变址寻址变址寻址MOVDS,MEM;存储器;存储器段寄存器,段寄存器,直接寻址直接寻址MOVCX,DISPBXSI;存储器;存储器累加器,累加器,相对基址加变址相对基址加变址12 注意注意注意注意:(1 1)不能用一条)不能用一条)不能用一条)不能用一条MOVMOV指令实现以下传送。指令实现以下传送。指令实现以下传送。指令实现以下传送。j存储单元之间的传送存储单元之间的传送存储单元之间的传送存储单元之间的传送MOVMEM2,MEM1错。错。MOVAX,MEM1MOVMEM2,AX对。对。
10、kk 立即数送段寄存器立即数送段寄存器立即数送段寄存器立即数送段寄存器例例:MOVDS,2000H错。错。MOVAX,2000HMOVDS,AX对。对。13l段寄存器之间的传送段寄存器之间的传送段寄存器之间的传送段寄存器之间的传送MOVES,DS;错错MOVAX,DSMOVES,AX;对对。注意注意注意注意CSCS和和和和IPIP的使用的使用的使用的使用CSCS和和和和IPIP不能作为目标操作数,不能作为目标操作数,不能作为目标操作数,不能作为目标操作数,CSCS可以作为源操作数。可以作为源操作数。可以作为源操作数。可以作为源操作数。例:例:MOVCS,AX;错错MOVAX,CS;对对。MOV
11、IP,AX;错错MOVAX,IP;错错。14l注意操作数的范围注意操作数的范围对字节操作指令对字节操作指令0FFH0255对字操作指令对字操作指令0FFFFH065535MOVAL,260MOVAX,70000MOVAL,1FFHMOVAL,2ABCDH15注意如下指令:注意如下指令:不能两个同为存储器操作数不能两个同为存储器操作数MOVDI,SI目的操作数不能是立即数目的操作数不能是立即数ADD3,AL两个操作数的类型应相同两个操作数的类型应相同SUBAX,BL若若value定义为字类型存储器变量:定义为字类型存储器变量:MOVCL,valueBX16(后面跟立即数时)(后面跟立即数时)内存
12、操作数的属性应明确。内存操作数的属性应明确。MOVBX,0MOVbyteptrBX,0MOVwordptrBX,0MOVBX,ALMOVBX,AX17lA、B、C、D、E、F开头的十六进制数前面加开头的十六进制数前面加0,与与H结尾的标识符区别。结尾的标识符区别。如如寄存器名:寄存器名:AH、BH、CH、DH变量名变量名:abcdH等等例例 movAL,0AHmovAL,AHmovBX,0abcdH18lCS和和IP的值只在的值只在控制转移指令控制转移指令中修改。中修改。l对非控制转移指令,取完指令后对非控制转移指令,取完指令后IP值自动值自动+1,指向下条指令。指向下条指令。l段寄存器段寄存
13、器CS的值,只在的值,只在MOV、PUSH中可作操作数,中可作操作数,且这两条指令执行结果不改变且这两条指令执行结果不改变CS值。值。MOVAX,CSPUSHCSlIP、FR两个寄存器不能作为操作数在指令中出现。两个寄存器不能作为操作数在指令中出现。movIP,1234HmovFR,0F0FHlFR状态寄存器的值由指令执行后确定,状态寄存器的值由指令执行后确定,不同的指令对各标志的影响不同。不同的指令对各标志的影响不同。19(2 2)段地址的默认)段地址的默认)段地址的默认)段地址的默认BX、SI、DI间址间址默认段地址为默认段地址为DS,BP间址间址默认段地址默认段地址SS。(3 3)凡是遇
14、到给凡是遇到给凡是遇到给凡是遇到给SSSS赋值指令,系统自动禁止外部中断,执行赋值指令,系统自动禁止外部中断,执行赋值指令,系统自动禁止外部中断,执行赋值指令,系统自动禁止外部中断,执行本条指令和下条指令,恢复对本条指令和下条指令,恢复对本条指令和下条指令,恢复对本条指令和下条指令,恢复对SSSS寄存器赋值前的中断开放情况。寄存器赋值前的中断开放情况。寄存器赋值前的中断开放情况。寄存器赋值前的中断开放情况。这样做为了允许程序员连续用两条指令分别对这样做为了允许程序员连续用两条指令分别对SS和和SP寄寄存器赋值,同时又防止堆栈空间变动过程出现中断。存器赋值,同时又防止堆栈空间变动过程出现中断。*
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 章节 80868088 指令系统
限制150内