第二章8086的指令系统 3.指针传送指令LES LESr16,mem;r16←mem,E←mem+2 操作解释:基本与“LDS”指令相同,不同的是把段寄存 器 DS换成ES。 其他问题:①“LEA”指令的作用为取偏移地址, 要 注意与“MOV”指令区别 2050H SI=2050H, DS: [2050H](DS: L 55AAH AAH 则“ LEA BX,[SI]”执行后,BX “ MOV BX,[SI]”执行后,BX= ②“LDS”的r16常用SI;“LES”中,r16常用DI。 ③地址传送指令不影响标志
第 二 章 8086 的 指 令 系 统 21 地址传送指令(3)(end) 3.指针传送指令LES LES r16,mem ;r16←mem,ES←mem+2 操作解释:基本与“LDS”指令相同,不同的是把段寄存 器 DS换成ES。 ★其他问题:①“LEA”指令的作用为取偏移地址, 要 注意与“MOV”指令区别: 设SI=2050H,DS:[2050H](DS:[SI])=55AAH 则“LEA BX,[SI]”执行后,BX= “MOV BX,[SI]”执行后,BX= ②“LDS”的r16常用SI; “LES”中,r16常用DI。 ③地址传送指令不影响标志。 2050H 55AAH 2.1节 目录
第二章8086的指令系统 2.1.5输入输出指令 1.输入指令 心INAL,i8字节输入,AL←端i8 分INAX,i8字输入,AL←端口i8,AH←端口i8+1 INAL,DX字节输入,AL←端口[DXx] 分INAX,D字输入,AL←端口[DX],AH←[DX+1] 注释:①“i8”从形式上来说是立即数,实际上是端口 地 址,因而指令的寻址方式为直接寻址 ②“M0W”指令中,直接寻址要加中括号,输入输出指令 不加。( MOV AL,[2000H;INAL,25H) ③第三、四两条指令为寄存器间接寻址,但对DX不加中 括号。(mova1,[bx];ina1,dx)
第 二 章 8086 的 指 令 系 统 22 2.1.5输入输出指令(1) 2.1.5 输入输出指令 1.输入指令 ❖IN AL,i8;字节输入,AL←端口i8 ❖IN AX,i8;字输入,AL←端口i8,AH←端口i8+1 ❖IN AL,DX;字节输入,AL←端口[DX] ❖IN AX,DX;字输入,AL←端口[DX],AH←[DX+1] 注释:①“i8”从形式上来说是立即数,实际上是端口 地 址,因而指令的寻址方式为直接寻址。 ②“MOV”指令中,直接寻址要加中括号,输入输出指令 不加。(MOV AL,[2000H];IN AL,25H) ③第三、四两条指令为寄存器间接寻址,但对DX不加中 括号。(mov al,[bx];in al,dx)
第二章8086的指令系统 2输出指令 今0UTi8,AL字节输出,端口i8←AL 0UTi8,AX字输出,端口i8←AL,端口i8+1←AH OUT DX,AL字节输出,端口[Dx]AL OUT DX,Ax字输出,端口[Dx]←AL,[DX+1]←AH 注释:①输入输出指令从寻址方式来说分成两种: 直接寻址和寄存器DX间接寻址。如果要访问的端口地址 在0~255之间,既可以用直接寻址,也可以用DX间接寻 址;如果要访问的端口地址≥256,则只能用DX间接寻 址。②另外,输入输出指令中可用的数据寄存器只能是 AL和AX,其他寄存器不可使用。③不影响标志
第 二 章 8086 的 指 令 系 统 23 输入输出指令(2) 2. 输出指令 ❖OUT i8,AL;字节输出,端口i8←AL ❖OUT i8,AX;字输出,端口i8←AL,端口i8+1←AH ❖OUT DX,AL;字节输出,端口[DX]←AL ❖OUT DX,AX;字输出,端口[DX]←AL,[DX+1]←AH 注释:①输入输出指令从寻址方式来说分成两种: 直接寻址和寄存器DX间接寻址。如果要访问的端口地址 在0~255之间,既可以用直接寻址,也可以用DX间接寻 址;如果要访问的端口地址≥256,则只能用DX间接寻 址。②另外,输入输出指令中可用的数据寄存器只能是 AL和AX,其他寄存器不可使用。③不影响标志
第二章8086的指令系统 例题:(对错混合) 1.INAL,205H(×) 7. MOV AX, 55AAH 2. IN AX, 20H MOW DX, 3FCH 3. IN AL, 25H OUT LDX], AX 4.INAH,OFFH(×) 8. MOV ah, 86 5. MOV DX, 2050H OUT 25H, AH × OUT DX, AL 9. IN AL, 25H 6. MOV DX, 2050H MOV BL, AL INBX,DX(×) In AL, 36H OUT DX,B)(×) MOV BH. AL 2.1节目录
第 二 章 8086 的 指 令 系 统 24 输入输出指令(3)(end) 例题:(对错混合) 1.IN AL,205H (×) 7.MOV AX,55AAH 2.IN AX,20H MOV DX,3FCH 3.IN AL,25H OUT [DX],AX 4.IN AH,0FFH (×) 8.MOV AH,86 5.MOV DX,2050H OUT 25H,AH (×) OUT DX,AL 9.IN AL,25H 6.MOV DX,2050H MOV BL,AL IN BX,DX (×) IN AL,36H (OUT DX,BX ) (×) MOV BH,AL…… 2.1节 目录
第二章8086的指令系统 2.2算术运算指令 2.2.1加法指令 ADD/ADC/INC 2.2.2减法指令 SUB/SBB/DEC/NEG/ CMP 2.2.3乘法指令MUL/IMUL 2.2.4除法指令 DIV/IDIV 2.2.5符号扩展指令CBW/CWD 2.2.6十进制调整指令 (BCD)/DAA/DAS/AAA/AAS/AAM/AAD 沤回第二章
第 二 章 8086 的 指 令 系 统 25 2.2节 目录 2.2.1--2.2.6(算术) 2.2 算术运算指令 2.2.1 加法指令 ADD/ADC/INC 2.2.2 减法指令 SUB/SBB/DEC/NEG/CMP 2.2.3 乘法指令 MUL/IMUL 2.2.4 除法指令 DIV/IDIV 2.2.5 符号扩展指令 CBW/CWD 2.2.6 十进制调整指令 (BCD)/DAA/DAS/AAA/AAS/AAM/AAD 返回第二章