אסמבלי x86/שגרות: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
אין תקציר עריכה
שורה 1:
{{אסמבלי}}
== השגרה ==
שגרה = פונקציה = שיטה = פרוצדורה
שגרה היא תת תכנית המאפשרת לנו לבצע פעולה אחת או יותר בתכנית אסמבלי. כל שגרה מתחילה בשורת החותמת של השם וPROC, כל שגרה מסתיימת בשורת חותמת, שם השגרה וENDP. חובה לכתוב בשגרה את הפקודה ret. פקודה זו גורמת לאסמבלי לחזור חזרה לתכנית הראשית. יש אפשרות שפקודה זו תגיע עם מספר לידה. לדוגמא: ret 4, ret 8.
שורה 7:
כידוע ישנו אוגר הנקרא הip. אוגר זה מכיל את כתובת ההוראה לביצוע. כאשר הפקודה מתבצעת הip מקבל את ההוראה הבאה לביצוע. כאשר האסמבלי פוגש את פקודת call הוא שומר את כתובת הפקודה הבאה לביצוע כך שבסיום השגרה נחזור חזרה לכתובת השמורה בip.
 
== מבנה השגרה ==
[[תמונה:Shigra.jpg]]
 
בכדי לקרוא לשגרה נצטרך לקורא לה:
 
<source lang="text">
==דוגמות==
 
call שם השגרה
 
</source>
 
 
== דוגמאות ==
דוגמה לשיטה שכופלת את AX ב-BX:
<source lang="text">