mov指令的几种形式:
mov 寄存器、 数据
mov ax,8888
mov 寄存器、 寄存器
mov bx,ax
mov 寄存器、 内存单元
mov ax,[0]
mov 内存单元、寄存器
mov [0],ax
mov 段寄存器、寄存器
mov ds,ax
add和sub指令和mov一样,都有2个操作对象。
sub和add类似,不过是相减,
sub ax,9 给ax减9,之后的结果赋值给ax
sub ax,bx 语意是ax = bx - ax
sub ax,[0] 将偏移地址为0的内存单元 - ax 再赋值给ax
试一下:能不能用他们直接操作段地址? (试过了,不行)
3.5 数据段
前面讲过,对于8086 PC机,我们可以根据需要将一组内存单元定义为一个段(可以是代码段,数据段等)
如何访问内存中的数据段呢?
将一段内存当作数据段,是我们在编程时的一种安排,我们可以在具体操作的时候,
用DS存放数据段的段地址,再根据需要,用相关指令访问数据段中的具体单元
mov ax,123BH
给AX寄存器里放123BH
mov ds,ax
将123BH送入DS中,作为数据段的段地址。
mov ax,0
用AX存放累加结果
add ax,[0]
将数据段的第一个字,(偏移地址为0),加到AX中,会