汇编寻址方式

来源:互联网 发布:闲鱼网淘宝二手电脑版 编辑:程序博客网 时间:2024/05/24 05:15

寄存器寻址

mov ax, cx

立即寻址

add bx,0xf000mov dx,label_a

内存寻址

直接寻址

mov ax, [0x5c0f]add word [0x0230], 0x5000xor byte [es:label_b], 0x05

处理器将默认数据段寄存器(DS)左移4位,加上偏移地址,形成20位的物理地址。

基址寻址 (相对于直接寻址)

基址寻址的寄存器可以是 BX BP, 采用BP默认的段寄存器是SS

buffer dw 0x20, 0x100, 0x0finc word [buffer]inc word [buffer + 2]
mov bx, buffermov cx, 2lpinc:inc word [bx]add bx, 2loop lpinc

允许在基址寄存器的基础上使用一个偏移量。

变址寻址

变址寻址类似于基址寻址,但使用的是 SI DI。(index)
DS左移4位 + SI(DI)

基址变址寻址 (bx + index)

mov bx,string     mov si,0     mov di,25order:     mov ah,[bx+si]     mov al,[bx+di]     mov [bx+si],al     mov [bx+di],ah ;以上4行用于交换首尾数据 inc si     dec di     cmp si,di     jl order ;首尾没有相遇,或者没有超越,继续
0 0
原创粉丝点击