汇编语言
DS 寄存器
- CPU要读写一个内存单元的的时候,必须先给出这个内存单元的地址
- 在8086pc中就,内存地址由段地址和偏移地址组成。
- 8086CPU中有一个DS寄存器,通常用来存放要访问数据的段地址
- 比如我们要读取10000H单元的内容,如下所示。
mov bx,1000
mov ds,bx
mov al,[0]
使用ds进行赋值
- 首先我们设置ds的段地址为21f0,其次偏移地址60开始的值依次设置为12,34,56,87,9a,bc
- 当我们给ax赋值时,输入一个地址,大段址即ah放后一位的数,小段址即al放低一位的数
mount c d:masm
c:
debug
r
r ds
21f0
e 21f0:60
12 34 56 78 9a bc
t
mov ax,[60] //这里的段地址是ds寄存器的21f0,偏移地址是方括号里面的60,即这里的地址
//为 21f0:0060
//输出结果为 ax = 3412
使用ds进行单个赋值
mov bl,[61]
t
//输出结果为 bx = 0034
ds也能使用其他指令,如add
add al,[60]
add cx,[62]
t
t
//结果为 ax = 3424 , cx = 8756
物理地址
- 物理地址 = 段地址x16 +偏移地址
- x16在16进制当中相当于左移一位的意思