Menu
CoddyTech

ASCII והקסדצימלי

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

מחשבים מבינים רק מספרים. אז איך הם שומרים אותיות כמו 'A', 'b' או '?'?

התשובה היא ASCII (התקן האמריקאי לקידוד מידע להחלפה). ASCII היא טבלה שמקצה מספר לכל תו.

איך ASCII עובד:

תומספר ASCII (עשרוני)מספר ASCII (הקסדצימלי)
'A'650x41
'B'660x42
'C'670x43
'a'970x61
'b'980x62
'0'480x30
'1'490x31
' ' (רווח)320x20
'\n' (שורה חדשה)100x0A
'\0' (null)00x00

ערכי ASCII חשובים שכדאי לשנן עבור שפת אסמבלי:

תוהקסדצימלילמה זה נחוץ
'A'0x41האותיות הגדולות מתחילות כאן
'a'0x61האותיות הקטנות מתחילות כאן
'0'0x30הספרות מתחילות כאן
רווח0x20מפריד בין מילים
שורה חדשה (\n)0x0Aמעבר לשורה הבאה
תו null (\0)0x00סמן סוף מחרוזת

שימו לב לדפוס:

דפוסדוגמה
האותיות הגדולות A-Z מופיעות ברצף'A'=65, 'B'=66, 'C'=67...
האותיות הקטנות a-z מופיעות ברצף'a'=97, 'b'=98, 'c'=99...
הספרות 0-9 מופיעות ברצף'0'=48, '1'=49, '2'=50...
אות קטנה = אות גדולה + 32'a' (97) = 'A' (65) + 32

איך מחרוזת נשמרת בזיכרון:

המילה "Hi" עם שורה חדשה נשמרת כך:

תוהקסדצימליבינארי
'H'0x4801001000
'i'0x6901101001
'\n'0x0A00001010

באסמבלי, כותבים זאת כך: db 'Hi', 0x0A

למה צריך את זה בשביל אסמבלי:

כשמגדירים מחרוזת בקובץ data.asm, מאחסנים בזיכרון קודי ASCII. כשמדפיסים מחרוזת, מערכת ההפעלה קוראת את קודי ה-ASCII האלה ומציגה את התווים המתאימים.

נסו בעצמכם

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

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

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

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

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

מצאו את הקוד של כל תו: ממיר ASCII