mov指令

一、规定

1.立即数不能作为目的操作数,如mov 110H,AX

2.立即数不能直接传给段寄存器,如mov DS,110H

2.两个操作数不能同时为段寄存器,如mov ES,DS

3.两个操作数不能同时为存储单元,如mov [0x1245],[0x1312]

5.代码段寄存器CS不能为目的操作数,但可为源操作数

6.指令指针IP不能作为mov指令的操作数

 

MOV指令的变通方法

功能描述

不正确的指令

可选的解决方法

把DS的值传送给ES

MOV  ES, DS

MOV  AX, DS
MOV  ES, AX

把100H传给DS

MOV  DS, 100H

MOV  AX, 100H
MOV  DS, AX

把字变量VARB的值传送给字变量VARA

MOV  VARA, VARB

MOV  AX, VARB
MOV  VARA, AX

 

二、传送填充指令

 

a.符号填充指令MOVSX(Move with Sign-Extend)---高位填充1

MOVSX的填充方式是:用源操作数的符号位来填充目的操作数的高位数据位。

b.零填充指令MOVZX(Move with Zero-Extend)---高位填充0

MOVZX的填充方式是:恒用0来填充目的操作数的高位数据位。


posted @ 2017-05-20 17:07  jadeshu  阅读(1657)  评论(0编辑  收藏  举报