Menu
Coddy logo textTech

תבנית שני הקבצים

חלק מהיחידה יסודות במסלול ה-Assembly של Coddy. שיעור 5 מתוך 45.

לאורך הקורס הזה, תכתבו כל תוכנית באמצעות שני קבצים נפרדים:

קובץמטרה
data.asmמאחסן את כל הנתונים (מחרוזות, מספרים, משתנים)
main.asmמאחסן את כל הקוד (הוראות, לוגיקה, זרימה)

האסמבלר אינו דורש זאת. אפשר לשים הכול בקובץ אחד. אבל הפרדה בין הקוד לנתונים הופכת את התוכניות שלך למסודרות יותר, קלות יותר לקריאה וקלות יותר לניפוי שגיאות.

למה שני קבצים?

  • ארגון: לנתונים ולקוד יש מטרות שונות. הפרדתם עוזרת לך לחשוב בבהירות.
  • שימוש חוזר: אפשר להשתמש באותו data.asm עם קובצי main.asm שונים.
  • קריאות: אף פעם לא צריך לגלול דרך מחרוזות ארוכות כדי למצוא את הקוד שלך.
  • נוהג מקובל בתעשייה: בפרויקטים אמיתיים מפרידים בין קוד לנתונים (אם כי לעיתים קרובות בדרכים מורכבות יותר).

איך זה עובד:

הקובץ main.asm כולל את הקובץ data.asm באמצעות ההנחיה %include. ההנחיה אומרת לאסמבלר: "הוסף כאן את כל התוכן של data.asm לפני האסמבלציה."

שני הקבצים זה לצד זה:

data.asmmain.asm
section .data%include "data.asm"
(משתנים מופיעים כאן)section .text
 global _start
 _start:
 (הוראות מופיעות כאן)

מה עושה כל יחידה:

יחידהמטרהאיזה קובץ?
section .dataמכילה נתונים שנמצאים בזיכרון בזמן שהתוכנית פועלתdata.asm
section .textמכילה את ההוראות שניתנות להרצה (קוד)main.asm
global _startהופכת את נקודת הכניסה לגלויה למקשרmain.asm
_start:תווית שבה מתחילה הרצת התוכניתmain.asm

אין צורך לשנן כרגע את section .data, את section .text, את global _start או את _start:. נלמד כל אחת מהפקודות האלה בפירוט בשיעורים הבאים. כרגע, פשוט הסתכלו על התמונה הגדולה והבינו את המבנה של שני הקבצים.

נסו בעצמכם

השיעור הזה לא כולל אתגר קוד.

quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: Assembly אונליין