338086指令系统 8086的指令可以分为五大类 331数据传送指令_ 332算术运算指令 333逻辑运算和移位指令 334字符串处理指令 335控制转移指令 NEXT
3.3 8086指令系统 8086的指令可以分为五大类 3.3.1 数据传送指令 3.3.2 算术运算指令 3.3.3. 逻辑运算和移位指令 3.3.4 字符串处理指令 3.3.5 控制转移指令
331传送指令 (阅读教材P10--P8页的内容)见Pn表3-3 对标志为的影响:传送指令除标志传送( SAHF. POPF)外, 均不影响标志位 分类:传送指令可分为通用传送指令、堆栈操作指令、交换操作 指令、I0操作指令、目的地址传送指令和标志传送指令六类。 1通用传送指令 般格式: MOV OPRD1,OPRD2 [目的操作数oPRD1]←[源操作数oPRD2] 其中:源操作数OPRD2为:立即数data、存储器单元地址mem、 累加器AX、寄存器reg、段寄存器 regreg. 目的操作数OPRD1为:存储器地址mem、累加器AX、寄存器 reg、段寄存器 regreg、指定股寄存器
3.3.1 传送指令 (阅读教材P70----P78页的内容)见P70表3-3 对标志为的影响:传送指令除标志传送(SAHF、POPF)外, 均不影响标志位。 分类:传送指令可分为通用传送指令、堆栈操作指令、交换操作 指令、I/O操作指令、目的地址传送指令和标志传送指令六类。 1.通用传送指令 一般格式:MOV OPRD1,OPRD2 ; [目的操作数OPRD1]← [源操作数OPRD2] 其中:源操作数OPRD2为:立即数data、存储器单元地址mem、 累加器AX、寄存器reg、段寄存器segreg。 目的操作数OPRD1为:存储器地址mem、累加器AX、寄存器 reg、段寄存器segreg、指定段寄存器
功能:完成数据传送。 规定: (1)Mov指令可在cPU内部寄存器之间或CPU与存储器之间 传送字(16位)或字节(8位)数据,但代码段寄存器CS和指 令指针IP除外。 R← data men←data R←R R← men mem←R segre(CS、I除外)←R或memR← segre
功能:完成数据传送 。 规定: (1)MOV指令可在CPU内部寄存器之间或CPU与存储器之间 传送字(16位)或字节(8位)数据,但代码段寄存器CS和指 令指针IP除外。 R←data mem ←data R←R R← mem mem ←R segreg( CS 、IP除外)←R或 mem R← segreg
如: MOV AL,BL; MOV CX, BX: MOV DS, BX MOV CL, 4 MOV AX, 03FFH MOV SI, 057BH Mov[2000H,25H MovS山,35H MOV AX, 1000H MOV AL, BUFFER; BUFFER为标号 MOV AX,IS耵 MOV DI, CX MOV SI, BLOCK BPI MOV DS, DATASI+BX MOV DESTIBP+DI, ES
如: MOV AL,BL; MOV CX,BX; MOV DS,BX MOV CL,4 MOV AX,03FFH MOV SI,057BH MOV [2000H],25H MOV [SI],35H MOV AX,[1000H] MOV AL,BUFFER;BUFFER为标号 MOV AX,[SI] MOV [DI],CX MOV SI,BLOCK[BP] MOV DS,DATA[SI+BX] MOV DEST[BP+DI],ES
(2)立即数不能作为目的操作数,只能作为源操作数。 Mov1000H,AL;(×) (3)cS、IP不能作为目的操作数。 MOV CS,AX;(×) MovP,AX:(×) (4)除源操作数为立即数外(mem←data),两个操作数中 必须有一个为寄存器。即不允许在两个存储器单元之间直接传送 数据。 MOv[2000H],[1000H]:(×)
(2)立即数不能作为目的操作数,只能作为源操作数。 MOV 1000H,AL;(╳) (3) CS 、IP不能作为目的操作数。 MOV CS, AX ;(╳) MOV IP, AX ;(╳) (4)除源操作数为立即数外( mem ←data ),两个操作数中 必须有一个为寄存器。即不允许在两个存储器单元之间直接传送 数据。 MOV [2000H] ,[1000H] ;(╳)