מהי ההוראה LEA באסמבלר?

DecayCell

New member
Load Effective Address

lea register, label​
ההוראה טוענת לאוגר register את הכתובת של התווית label ביחס למקטע המתאים. זוהי הוראת-דמה - האסמבלר מתרגם אותה להוראת mov רגילה.
 

voguemaster

New member
יש לה עוד שימוש לא טריוויאלי..

אפשר לבצע איתה חישובים זריזים בחזקות של 2. את זה לא מתרגמים ל-MOV. דוגמא:
LEA EAX,[EDI+ECX*4+8]​
מאפשר לך להחזיק ב-ECX אינדקס לתוך מערך של מצביעים (או כל DWORD) ולבצע חישוב זריז של המיקום במערך (פלוס היסט של 8 במקרה זה, סתם לשם הדוגמא). עדיף בהרבה על חישוב ישיר.
 
למעלה