2012-03-24 113 views
2

我在高中(MASM,x86)理論上學習ASM 8086。組裝指令mov寄存器,[註冊] [註冊]

.data 
var dd 421,422, 443, 442, 444, 217, 432 

.code 
; some code 
mov esi, (OFFSET var)+4 
mov ebx, 4 
mov edx, [ebx][esi] ; that's the line I don't uderstand 

我跑了程序和EDX == == 000001BBh 443 什麼是最後一行在代碼的含義後?它有什麼作用?

回答

1

esi var後的4個字節,即422ebx是4.

[ebx][esi]是一些東西,表示[ebx+esi][]是指針操作。

所有這些在一起會使[ebx][esi]點還有4個字節比422更遠,明顯可以在那裏找到443