汇编笔记---第三
段的开始地址必须是16位的倍数,偏移地址的取值范围是在0000H~FFFFH 之间,也就是<=64K
ax,bx,cx,dx寄存器又可分别折开成两个独立的寄存器使用,高位和低位
ax 折 ah 高位 al 低位
bx 折 bh bl
cx ch cl
dx dh dl
1.段寄存器是不能直接赋值的,必须要通过通用寄存器中转赋值。
2.cs ip寄存器必须通过jmp来赋值
3.汇编指令
MOV ax 1000 ax=1000
ADD ax bx ax=ax+bx
SUB ax ax ax=ax-ax
jmp 1000:0 将cs:ip指向1000:0的单元地址,cpu从这里开始执行指令
mov ds ax 将ax 的值赋给数据内存单元的段地址
mov bx [0] 将ds指向的段地址开始第0个单元读取两个字节到bx寄存器中,为什么读两个单元呢?因为读取的字节数要与寄存器大小相匹配。
mov bl [3] 那就是从内单单元3开始,读一个字节到bl 低位寄存器中。
4. ds是指数据段寄存器,cpu是根据ds来确定从这里读到的是数据而不是指令