上一节:17、从1加到100并显示结果
下一节:19、硬盘和显卡的访问与控制
01、寄存器、立即数和直接寻址
寻址方式就是如何找到要操作的数据、以及如何找到存放结果的地方。
寄存器寻址:
立即数寻址:
直接(内存)寻址:
02、基址寻址
使用直接(内存)寻址:
使用基址寻址:
其中loop
会将cx
的值减1
来判断是否为0,
否则执行。
其中mov dx, [ss:bx+2]
中bx+2
不会破坏。
若使用bp
作为偏移地址的寄存器,且没有段超越前缀,则默认使用ss
作为段寄存器。
若使用bx
作为偏移地址的寄存器,且没有段超越前缀,则默认使用ds
作为段寄存器。
03、变址寻址
变址寻址使用di
、si
寄存器。
若使用di
、si
作为偏移地址的寄存器,且没有段超越前缀,则默认使用ds
作为段寄存器。
上图中就是:ds
中的内容左移4位 + [si]
、[di]
中的值构成20位有效地址来访问内存。
上述中使用了si
、di
作为偏移地址,则默认使用ds
作为段寄存器。
04、基址变址寻址
基址变址寻址格式: