Menu
CoddyTech

למה הקסדצימלי?

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

עכשיו ידוע לך שמחשבים משתמשים בבינארי. אז למה מתכנתי אסמבלי כמעט אף פעם לא כותבים בינארי ישירות?

הבעיה עם מספרים בינאריים:

מספרים בינאריים ארוכים מאוד. הסתכלו על הדוגמה הזאת:

מספרבינארי
25511111111
10001111101000
655351111111111111111

כתיבת מחרוזות ארוכות של 1 ו־0 היא איטית, מועדת לשגיאות וקשה לקריאה.

הפתרון: הקסדצימלי (בסיס 16).

הקסדצימלי (או "hex") משתמש ב-16 סמלים:

ספרהערך
0-90 עד 9
A10
B11
C12
D13
E14
F15

למה הקסדצימלי מושלם למחשבים:

ספרה הקסדצימלית אחת מייצגת בדיוק 4 ביטים (חצי בייט).

ביטיםמספר הספרות ההקסדצימליות הנדרשות
4 ביטים (ניבל)ספרה הקסדצימלית אחת
8 ביטים (בייט אחד)2 ספרות הקסדצימליות
16 ביטים (2 בייטים)4 ספרות הקסדצימליות
32 ביטים (4 בייטים)8 ספרות הקסדצימליות
64 ביטים (8 בייטים)16 ספרות הקסדצימליות

אותו מספר, שלוש דרכים:

עשרוניבינאריהקסדצימלי
25511111111FF
100011111010003E8
655351111111111111111FFFF

שימו לב כמה הקסדצימלי קצר יותר מבינארי.

היכן תיתקלו בהקסדצימלי באסמבלי:

  • כתובות זיכרון (כמו 0x7FFF או 0x402000)
  • קודי ASCII (כמו 0x41 עבור 'A', 0x0a עבור ירידת שורה)
  • ערכי רגיסטרים בכלי ניפוי שגיאות
  • ערכי צבע (כמו 0xFF0000 עבור אדום)

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

קידומתדוגמהמשמעות
0x0xFFFF בהקסדצימלי (255 בעשרוני)
$$FFאותו הדבר (בשימוש בחלק מהאסמבלרים)
hFFhאותו הדבר (סגנון ישן יותר)

בקורס הזה, אנחנו משתמשים בקידומת 0x: 0x0a, 0x41, 0xFF.

נסו בעצמכם

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

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

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

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

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

בדקו המרה: ממיר בסיסי ספירה