第二章8086的指令系统 1.MoV类指令 格式1: MoV reg/mem, mm MOV AX, 2050H X MOV CL, 58H MOV BYTE PTR [BX], 55H/MOV WORD PTR [BX], 55H MOV BYTE PTR [SI+051, 55H MoV BYTI MOV BYTE PTR[BX], 55H MOV BYTE MOV BYTE MOV WORD PTRLBX], 55H ·············.············································· ①MoV55H,AL②MVDH,385③M0VBX,55H√ ④M[BX],55HV×⑤ MOV DS,2000H
第 二 章 8086 的 指 令 系 统 6 2.1.1-1 mov类例1 1.MOV 类指令 格式1:MOV reg/mem,imm MOV AX,2050H / MOV CL,58H MOV BYTE PTR [BX],55H/MOV WORD PTR [BX],55H MOV BYTE PTR [SI+05],55H MOV BYTI PTR [BP+DI],55H MOV BYTE PTR [BX+DI+2000H],55H MOV BYTE PTR [4050H],55H ……………………………………………………… ① MOV 55H,AL ② MOV DH,385 ③ MOV BX,55H√ ④ MOV [BX],55H ⑤ MOV DS,2000H MOV BYTE PTR[BX],55H MOV WORD PTR[BX],55H
第二章8086的指令系统 格式2: MOV seg/reg/mem,reg M0VDS,AX/ MOV ES, AX/MOV SS,AXCs不能做目的操作数 MOV AX, BX/MOV SP, AX/MOV DH, CL/MOV AL, BH MoV[2050H] AX/MOV [2050H1, BL MOV [BX+SI+2000H], DX/Mov 2005H[BP] [DI, CL MOV DS, AL/MOV CS, AX MOV DL, AX/MOV BX, CL/ MOV SI, CH/MOV BL, DI
第 二 章 8086 的 指 令 系 统 7 mov类例2 格式2: MOV seg/reg/mem,reg MOV DS,AX/MOV ES,AX/MOV SS,AX MOV AX,BX /MOV SP,AX /MOV DH,CL/MOV AL,BH MOV [2050H],AX / MOV [2050H],BL MOV [BX+SI+2000H],DX / MOV 2005H[BP][DI],CL …………………………………………………………… MOV DS,AL / MOV CS,AX MOV DL,AX / MOV BX,CL / MOV SI,CH / MOV BL,DI CS不能做目的操作数
第二章8086的指令系统 记住:CS不能作 格式3: MOV seg/reg,men 目的操作数 MOV DS, [BX]/MOV ES, [BP+SI+25H] MOV AX, [2050H]A MOV AL, [2050H ●·······●··························●·············●······●····●·····● 注意: MOV mem,mem形式的指令是非法指令,也就是 说,如果一条指令有两个操作数,不允许两个操作数都 是存储器数,如下列指令为非法指令 MOV [BXI, [2050H]/MOV [2050H], [BX+SII 该项规定不仅适用于“M0V”类指令,也适用于其他各 类指令(串操作除外)
第 二 章 8086 的 指 令 系 统 8 mov类例3 格式3: MOV seg/reg,mem MOV DS,[BX] / MOV ES,[BP+SI+25H] MOV AX,[2050H] / MOV AL,[2050H] …………………………………………………………… 注意:MOV mem,mem 形式的指令是非法指令,也就是 说,如果一条指令有两个操作数,不允许两个操作数都 是存储器数,如下列指令为非法指令: MOV [BX],[2050H] / MOV [2050H],[BX+SI] 该项规定不仅适用于“MOV”类指令,也适用于其他各 类指令(串操作除外)。 记住: CS不能作 目 的 操 作 数
第二章8086的指令系统 S可以作源操作数 格式4: Mov reg/mem,seg MOV AX, DS / MOV BX, ES/MOV AX, CS MOV ISI], DS/ MOV [BX+SI], Cs MOV [BX1,[2050HI “MOV类指令小结: ①立即数只能作源操作数,且要与目的操作数匹配 ②两个操作数类型要匹配。 ③如汇编程序无法确定操作类型,要加类型说明符。 ④cs般不能作目的操作数(用转移指令改变)。 ⑤如果指令有两个操作数,不允许两个都是存储器数。 上述四类格式以外的指令必定是非法指令。 ⑦所有“MW”类指令均不影响标志。 返回2.1.1
第 二 章 8086 的 指 令 系 统 9 mov类例4(END) 格式4:MOV reg/mem,seg MOV AX,DS / MOV BX,ES / MOV AX,CS MOV [SI],DS / MOV [BX+SI],CS …………………………………………………………… “MOV”类指令小结: ①立即数只能作源操作数,且要与目的操作数匹配。 ②两个操作数类型要匹配。 ③如汇编程序无法确定操作类型,要加类型说明符。 ④CS一般不能作目的操作数(用转移指令改变)。 ⑤如果指令有两个操作数,不允许两个都是存储器数。 ⑥上述四类格式以外的指令必定是非法指令。 ⑦所有“MOV”类指令均不影响标志。 CS可以作源操作数 返回2.1.1 MOV [BX],[2050H]
第二章8086的指令系统 2.交换指令XCHG 指令格式: XCHG reg/mem,reg/mem ;将操作数格式“mem,mem”排除在外! ts]:/ XCHG AX, BX/XCHG DH, CL XCHG CX, [2000H]/ XCHG [BX+SI], AL 交换指令不影响标志。 3.换码指令XAT 指令格式:XLAT;AL←[DS×16+BX+AL] 该指令的操作数是隐含的(AL),且寻址方式可 理解为寄存器相对寻址,偏移量在AL中 该指令又称“查表指令”,通常用于编写查表程序。 换码指令不影响标志
第 二 章 8086 的 指 令 系 统 10 2.1.1-2. xchg --3.XLAT 2.交换指令XCHG 指令格式:XCHG reg/mem ,reg/mem ;将操作数格式“mem,mem” 排除在外! 例:XCHG AX,BX / XCHG DH,CL XCHG CX,[2000H] / XCHG [BX+SI],AL 交换指令不影响标志。 3.换码指令XLAT 指令格式:XLAT ;AL←[DS×16+BX+AL] 该指令的操作数是隐含的(AL),且寻址方式可 理解为寄存器相对寻址,偏移量在AL中。 该指令又称“查表指令” ,通常用于编写查表程序。 换码指令不影响标志