我们知道mov, add, sub指令,它们都带有两个操作对象
现在,我们知道,mov指令可以有以下几种形式:
mov 寄存器,数据 mov ax, 1000h
mov 寄存器,寄存器 mov ax, bx
mov 寄存器,内存单元 mov ax, [0] mov 段寄存器,内存单元
mov 内存单元,寄存器 mov [0], ax mov 内存单元,段寄存器
mov 段寄存器,寄存器 mov ds, ax mov 寄存器,段寄存器
注:下面验证的指令是我们之前没有遇到过的。
验证:① mov 寄存器,段寄存器
② mov 内存单元,段寄存器
mov ax, 1000h
mov ds, ax
mov [0], cs
③ mov 段寄存器,内存单元
mov ax, 1000h
mov ds, ax
mov ds, [0]
add和sub指令同mov一样,都有两个操作对象,它们也可以有以下几种形式:
它们可以对段寄存器进行操作吗?比如:“add ds, ax”。请自行在debug实验。
add 寄存器, 数据
add 寄存器, 寄存器
add 寄存器,内存单元
add 内存单元,寄存器
sub 寄存器, 数据
sub 寄存器,寄存器
sub 寄存器,内存单元
sub 内存单元,寄存器
注:段寄存器不能像通用寄存器那样进行运算,这是硬件限制, mov不涉及运算,只是传送指令。