פקודת השמה

מתוך ויקיפדיה, האנציקלופדיה החופשית
קפיצה אל: ניווט, חיפוש

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

הסימן הנפוץ לפקודת השמה הוא =, אך קיימות לו וריאציות רבות בשפות שונות. דוגמאות אחדות מוצגות בטבלה הבאה, שבה variable הוא שמו של המשתנה, ו-expression הוא הערך שפקודת ההשמה מציבה במשתנה.

שפה סימון הפקודה דוגמה
PL/I, Fortran, C, Java variable = expression A = B + 5
ALGOL, פסקל, Ada variable := expression A := B + 5
COBOL MOVE expression TO variable MOVE B TO A
BASIC LET variable = expression LET A = B + 5

ביצוע פקודת ההשמה כולל שני שלבים:

  • חישוב ערכו של הביטוי (expression בטבלה לעיל).
  • כתיבת הערך שחושב במשתנה (variable בטבלה לעיל). לעתים מלווה שלב זה בהמרת הערך של הביטוי לטיפוס של המשתנה, למשל המרה מטיפוס נומרי לטיפוס מחרוזת.

השמה לעומת השוואה[עריכת קוד מקור | עריכה]

בחלק משפות התכנות, לסימן = שתי משמעויות:

  • השמה
  • השוואה בין שני ערכים (למשל בפקודת if).

כפל משמעויות זה עלול לבלבל מתכנתים מתחילים, ולכן בשפות אחרות משמשים למטרות אלה שני סימנים נפרדים, למשל = להשמה, == להשוואה.

בשפת PL/I, שבה הסימן = משמש בשתי המשמעויות, ניתן למצוא את שתיהן יחד בפקודה הבאה:

;A = B = C

שפירושה: כאשר B שווה ל-C, המשתנה A יקבל את הערך "אמת" (המיוצג בשפה זו על ידי ביט שערכו 1), וכאשר B אינו שווה ל-C, המשתנה A יקבל את הערך "שקר".