寄存器沒有地址
也就是寄存器存放著存儲器的地址.
CPU通過寄存器中存放的存儲器地址來訪問存儲器中的數(shù)據(jù)
X86系列的處理器中的寄存器較少,所以
沒有給cpu中的寄存器進(jìn)行編址,而是直接對這些寄存器進(jìn)行了命名.在訪問寄存器的時(shí)候只要直接使用寄存器名就可以了.
lea指令舉例:
lea 取得地址(第二個(gè)參數(shù))后放入到前面的寄存器。
如:lea edi, ebp ,就是將ebp里存儲的地址放入edi, 讓edi也只想這個(gè)地址。
其實(shí)就是edi 指向ebp指向的存儲器地址
又如: lea edi, [ebp+0cch], []中代表存儲器地址, 即ebp指向的存儲器地址+0cch偏移。
再舉一個(gè)例子:
mov ecx,30h
mov eax,0CCCCCCCCh
rep stos dword ptr es:[edi]
stos是串存儲指令,他的功能是將eax中的數(shù)據(jù)存入edi寄存器所指向的存儲器地址中。同時(shí),edi會增加4(字節(jié)數(shù))
rep是指令重復(fù)執(zhí)行ecx中填寫的次數(shù)
posted on 2010-01-22 18:57
Only Soft 閱讀(321)
評論(0) 編輯 收藏 引用