约定
(ax)
表示寄存器AX里面的内容
-
ADR1X16+ADR2 :
((ds)*16+(bx))
- 字节型 8位 :
(al) (bl) (ch)
- 字型 16位 :
(ds) (ax) (bx)
idata 表示常量
- 合法指令:
mov ax,[idata]
mov bx,idata
- 非法指令:
mov ds,idata
mov ax,[bx]
- 将一个内存单元的内容送入
ax
- 这个内存单元的长度为
2字节(字单元)
,存放一个字
-
寄存器bx
中存放的数据作为偏移地址EA
,段地址SA
默认在DS寄存器
中 - 将
内存单元SA:EA
处的数据送入寄存器ax
中 - 即 :
(ax)=((ds)*16+(bx))
mov al,[bx]
- 将一个内存单元的内容送入
al
- 这个内存单元的长度为
1字节(字节单元)
,存放一个字节
mov [bx],ax
-
寄存器bx
中存放的数据作为偏移地址EA
,段地址SA
默认在DS寄存器
中 - 将
寄存器ax
中的数据送入内存单元SA:EA
处 - 即 :
((ds)*16+(bx))=(ax)
inc bx
-
寄存器bx
中的数据+1
- 等价
add bx,1
- 即
(bx)=(bx)+1
[BX]
-
BX
表示的是偏移地址
-
偏移地址
需要用16位
表示, - [ ] 里面从来都是写BX,不能写BL或者BH