מערכות ספרתיות · פרק 1 — שיטות ספירהמערכות ספרתיות · סמל מקצוע 11.002⌂📚🏠
פרק 1
שיטות ספירה
כיתה י׳ · 4 שעות לימוד
אנחנו סופרים בעשר ספרות כי יש לנו עשר אצבעות. למעגל האלקטרוני יש רק "שתי אצבעות": מתח נמוך ומתח גבוה, ולכן הוא סופר בשתי ספרות: 0 ו-1. בפרק זה נלמד איך כותבים כל מספר בשתי הספרות האלה, איך עוברים בין השיטה העשרונית, הבינארית וההקסדצימלית, איך כותבים מספר שלילי בלי סימן מינוס, ואיך מחברים ומחסרים כפי שהמחשב עושה.
בסוף הפרק הזה נדע:
נפרק מספר עשרוני לסכום של חזקות הבסיס 10, ונדע מהו המשקל של כל ספרה.
נמיר מספר מן השיטה הבינארית או ההקסדצימלית לשיטה העשרונית, ולהפך.
נמיר ישירות בין השיטה הבינארית לשיטה ההקסדצימלית בעזרת קבוצות של ארבע סיביות.
נכתוב מספר שלילי בשיטת המשלים ל-1 ובשיטת המשלים ל-2.
נחבר ונחסר מספרים בינאריים, ונחסר באמצעות חיבור המשלים ל-2.
נכתוב מספר עשרוני בקוד BCD, ונבחין בינו לבין המספר הבינארי.
הצגת מספר עשרוני (Decimal Number)
שיטת ספירה: היא דרך לכתוב מספרים בעזרת מספר קבוע של סמלים. מספר הסמלים השונים בשיטה נקרא בסיס.
השיטה שבה אנחנו משתמשים כל יום היא השיטה העשרונית: הבסיס שלה 10 ויש בה עשרה סמלים, מ-0 עד 9. ערך הספרה אינו תלוי רק בספרה עצמה, אלא גם במקומה במספר. במספר 3575 הספרה 5 מופיעה פעמיים: פעם ערכה 500 ופעם ערכה 5.
ספרה ומשקל (מקום): כל מקום במספר נקרא ספרה. לכל ספרה יש משקל שהוא חזקה של הבסיס: לספרה הימנית משקל 100 = 1, לזו שמשמאלה משקל 101 = 10, אחריה 102 = 100 וכן הלאה. הסמל הכתוב במקום נקרא מקדם.
המספר 3575: מעל כל ספרה המשקל שלה, ומתחתיה ערך המשקל
פירוק מספר לסכום של חזקות הבסיס
N = an·rn + ... + a2·r2 + a1·r1 + a0·r0
סימן
משמעות
יחידת מידה
N
ערך המספר
—
r
הבסיס: 10 בשיטה העשרונית, 2 בבינארית, 16 בהקסדצימלית
—
a0 ... an
המקדמים (ספרות המספר), מן הספרה הימנית a0 עד השמאלית an
—
r0 ... rn
משקלי הספרות
—
דוגמה 1.1
נפרק את המספר העשרוני 3575 לסכום של חזקות הבסיס 10.
פתרון:
נכתוב כל ספרה כשהיא מוכפלת במשקל המקום שלה. הספרה הימנית היא ספרה מספר 0.
3575 = 3·103 + 5·102 + 7·101 + 5·100
3575 = 3000 + 500 + 70 + 5
3575 = 3·103 + 5·102 + 7·101 + 5·100
הערה: הפירוק הוא תיאור מקוצר של המספר: במקום לומר "שלושת אלפים חמש מאות שבעים וחמש" כותבים ארבעה מקדמים בלבד, והמקום מלמד אותנו מהו המשקל. אותו רעיון פועל בכל בסיס אחר — מחליפים את 10 בבסיס החדש.
שאלה 1.1: נפרק את המספר 4082 לסכום של חזקות הבסיס 10. מהו המשקל של הספרה 8?
מספרים בבסיס בינארי (2) ובבסיס הקסדצימלי (16) (Binary & Hexadecimal)
הבסיס הבינארי:
השיטה הבינארית: היא שיטת ספירה שהבסיס שלה 2 ויש בה שני סמלים בלבד: 0 ו-1. משקלי הספרות הם חזקות של 2: 1 , 2 , 4 , 8 , 16 , 32 , 64 , 128 ...
סיבית (bit): היא ספרה אחת במספר הבינארי. הסיבית הימנית נקראת הסיבית הפחות משמעותית(LSB) והסיבית השמאלית נקראת הסיבית המשמעותית ביותר(MSB). קבוצה של 8 סיביות נקראת בית.
כדי לא להתבלבל בין השיטות כותבים את הבסיס בקטן מתחת למספר: 10112 הוא מספר בינארי, ו-101110 הוא המספר העשרוני "אלף ואחד עשר".
משקלי הספרות במספר הבינארי 1011012
המרה מבינארי לעשרוני:
נכתוב מתחת לכל סיבית את המשקל שלה, ואז נחבר רק את המשקלים שמעליהם הסיבית 1. הסיבית 0 אינה מוסיפה דבר.
דוגמה 1.2
נמיר את המספר הבינארי 1011012 לשיטה העשרונית.
פתרון:
נפרק את המספר לסכום של חזקות הבסיס 2:
1011012 = 1·25 + 0·24 + 1·23 + 1·22 + 0·21 + 1·20
1011012 = 32 + 0 + 8 + 4 + 0 + 1
1011012 = 4510
1011012 = 4510
נזכור: ב-n סיביות אפשר לכתוב 2n מספרים שונים, מ-0 עד 2n − 1. למשל ב-4 סיביות: 16 מספרים, מ-0 עד 15; ב-8 סיביות: 256 מספרים, מ-0 עד 255.
תרגול מהיר — נמיר מבינארי לעשרוני
11012
210012
311002
4100112
5101102
6110112
71001102
81011012
91100112
101111002
1111001002
12111111112
תשובות:152931241952262773884595110601110012255
המרה מעשרוני לבינארי:
נחלק את המספר ב-2 שוב ושוב, ובכל פעם נרשום את השארית. נעצור כשהמנה תהיה 0. השארית הראשונה היא הסיבית הפחות משמעותית, והשארית האחרונה היא הסיבית המשמעותית ביותר, ולכן קוראים את השאריות מלמטה למעלה.
דוגמה 1.3
נמיר את המספר העשרוני 4510 לשיטה הבינארית.
פתרון:
החילוק
המנה
השארית
קוראים מלמטה למעלה
45 : 2
22
1
הסיבית הפחות משמעותית (LSB) ↓
22 : 2
11
0
11 : 2
5
1
5 : 2
2
1
2 : 2
1
0
1 : 2
0
1
הסיבית המשמעותית ביותר (MSB) ↑
נקרא את השאריות מלמטה למעלה:
4510 = 1011012
בדיקה: 32 + 0 + 8 + 4 + 0 + 1 = 45.
4510 = 1011012
דוגמה 1.4
נמיר את המספר 10010 לשיטה הבינארית בשיטת המשקלים, בלי חילוק.
פתרון:
נכתוב את משקלי הספרות: 128 , 64 , 32 , 16 , 8 , 4 , 2 , 1. נחפש את המשקל הגדול ביותר שאינו עולה על המספר, נחסר אותו, ונמשיך עם השארית.
100 − 64 = 36
36 − 32 = 4
4 − 4 = 0
השתמשנו במשקלים 64 , 32 ו-4: נכתוב 1 במקומות שלהם ו-0 בשאר המקומות.
השיטה ההקסדצימלית (בסיס 16): היא שיטת ספירה שהבסיס שלה 16 ויש בה שישה עשר סמלים: הספרות 0 עד 9, ואחריהן האותיות A , B , C , D , E , F לערכים מ-10 עד 15. משקלי הספרות הם חזקות של 16: 1 , 16 , 256 , 4096 ...
המספר הבינארי ארוך וקשה לקריאה. השיטה ההקסדצימלית היא דרך מקוצרת לכתוב אותו: כל ספרה הקסדצימלית מתאימה בדיוק לארבע סיביות, כי 16 = 24. לכן פוגשים אותה בכתובות זיכרון, בצבעי המסך ובשפות תכנות (שם כותבים 0x2F).
נחליף כל אות בערכה (F = 15) ונפרק לסכום של חזקות הבסיס 16:
2F16 = 2·161 + 15·160
2F16 = 32 + 15
2F16 = 4710
2F16 = 4710
דוגמה 1.6
נמיר את המספר העשרוני 42710 לשיטה ההקסדצימלית.
פתרון:
נחלק ב-16 שוב ושוב ונרשום את השאריות. שארית גדולה מ-9 נכתוב כאות.
החילוק
המנה
השארית
קוראים מלמטה למעלה
427 : 16
26
11 = B
הספרה הפחות משמעותית ↓
26 : 16
1
10 = A
1 : 16
0
1
הספרה המשמעותית ביותר ↑
42710 = 1AB16
בדיקה: 256 + 160 + 11 = 427.
42710 = 1AB16
המרה בין בינארי להקסדצימלי:
מבינארי להקסדצימלי: נחלק את המספר לקבוצות של ארבע סיביות, החל מימין; אם בקבוצה השמאלית חסרות סיביות, נשלים אותה באפסים. נחליף כל קבוצה בספרה ההקסדצימלית שמתאימה לה בטבלה. מהקסדצימלי לבינארי: נחליף כל ספרה בארבע סיביות.
דוגמה 1.7
נמיר את המספר הבינארי 10110101112 לשיטה ההקסדצימלית.
פתרון:
נחלק לקבוצות של ארבע סיביות מימין, ונוסיף שני אפסים משמאל כדי להשלים את הקבוצה האחרונה:
0010 1101 0111
נחליף כל קבוצה: 0010 = 2 , 1101 = D , 0111 = 7.
10110101112 = 2D716
10110101112 = 2D716
דוגמה 1.8
נמיר את המספר ההקסדצימלי C5A16 לשיטה הבינארית.
פתרון:
נחליף כל ספרה בארבע סיביות: C = 1100 , 5 = 0101 , A = 1010.
על הנייר כותבים סימן מינוס לפני המספר. במעגל הספרתי יש רק 0 ו-1, ולכן מסכימים על שיטה שבה אחת הסיביות מלמדת על הסימן. בכל השיטות עובדים במספר קבוע של סיביות (למשל 4 או 8), והסיבית השמאלית היא סיבית הסימן: 0 למספר חיובי ו-1 למספר שלילי.
שיטת המשלים ל-1:
המשלים ל-1: מקבלים אותו כאשר הופכים כל סיבית במספר: כל 0 נעשה 1 וכל 1 נעשה 0. בשיטת המשלים ל-1 המספר השלילי −N הוא המשלים ל-1 של המספר החיובי +N.
המשלים ל-1
C1(N) = (2n − 1) − N
סימן
משמעות
יחידת מידה
C1(N)
המשלים ל-1 של המספר N
—
n
מספר הסיביות
—
2n − 1
המספר שכל הסיביות שלו 1
—
דוגמה 1.9
נכתוב את המספר −13 בשיטת המשלים ל-1, ב-8 סיביות.
פתרון:
נכתוב תחילה את המספר החיובי +13 ב-8 סיביות:
+13 = 0000 1101
נהפוך כל סיבית:
−13 = 1111 0010
הסיבית השמאלית היא 1, וזה מלמד שהמספר שלילי.
−13 = 1111 0010
שימו לב: בשיטת המשלים ל-1 יש לאפס שתי צורות: 0000 0000 (אפס חיובי) ו-1111 1111 (אפס שלילי). הדבר מבלבל את המעגלים החשבוניים, ולכן המחשבים משתמשים בשיטת המשלים ל-2.
שיטת המשלים ל-2:
המשלים ל-2: מקבלים אותו כאשר מחשבים את המשלים ל-1 ואז מוסיפים 1. בשיטת המשלים ל-2 המספר השלילי −N הוא המשלים ל-2 של המספר החיובי +N.
המשלים ל-2
C2(N) = C1(N) + 1
C2(N) = 2n − N
סימן
משמעות
יחידת מידה
C2(N)
המשלים ל-2 של המספר N
—
C1(N)
המשלים ל-1 של המספר N
—
n
מספר הסיביות
—
דוגמה 1.10
נכתוב את המספר −13 בשיטת המשלים ל-2, ב-8 סיביות.
פתרון:
המספר החיובי: +13 = 0000 1101. נהפוך כל סיבית כדי לקבל את המשלים ל-1, ואז נוסיף 1:
הערה:דרך קצרה: עוברים על המספר החיובי מימין לשמאל. מעתיקים את הסיביות כמות שהן עד ה-1 הראשון (וגם אותו מעתיקים), ואז הופכים את כל הסיביות שמשמאלו. למשל 0000 1100 ← 1111 0100.
איך קוראים מספר שכתוב במשלים ל-2? אם הסיבית השמאלית היא 0 המספר חיובי וממירים אותו כרגיל. אם היא 1 המספר שלילי: מחשבים את המשלים ל-2 שלו כדי לקבל את גודלו, ושמים לפניו סימן מינוס.
דוגמה 1.11
המספר 1110 1010 כתוב בשיטת המשלים ל-2 ב-8 סיביות. מהו ערכו העשרוני?
פתרון:
הסיבית השמאלית 1 ← המספר שלילי. נחשב את המשלים ל-2 שלו:
C1 = 0001 0101
C2 = 0001 0101 + 1 = 0001 0110
גודל המספר: 000101102 = 2210 , ולכן:
1110 1010 = −22
כל המספרים שאפשר לכתוב ב-4 סיביות בשיטת המשלים ל-2: מן −8 עד +7
תחום המספרים בשיטת המשלים ל-2
−2n−1 ≤ N ≤ 2n−1 − 1
סימן
משמעות
יחידת מידה
n
מספר הסיביות
—
N
המספר המסומן (עם סימן)
—
הערה: ב-8 סיביות: מן −128 עד +127. לאפס יש צורה אחת בלבד, וזה היתרון של המשלים ל-2.
העמודה הימנית: 1 − 0 = 1. העמודה השנייה: 0 − 1 ← לווים מן העמודה השלישית: 102 − 1 = 1. העמודה השלישית: אחרי הלווה נשאר בה 0, ו-0 − 1 ← לווים מן העמודה הרביעית: 102 − 1 = 1. העמודה הרביעית: נשאר בה 0, ו-0 − 0 = 0.
1
1
0
1
−
0
1
1
0
=
0
1
1
1
בדיקה: 13 − 6 = 7.
11012 − 01102 = 01112
חיסור באמצעות חיבור המשלים ל-2:
המחשב אינו בונה מעגל מיוחד לחיסור. במקום לחשב A − B הוא מחשב A + (−B): הוא ממיר את B למשלים ל-2 שלו ואז מחבר באותו מעגל חיבור. עובדים במספר קבוע של סיביות, ומן הנשא שיוצא מהסיבית השמאלית מתעלמים.
נכתוב את שני המספרים באותו מספר סיביות.
נחשב את המשלים ל-2 של המחסר B.
נחבר את A עם המשלים.
נתעלם מן הנשא היוצא מהסיבית השמאלית. אם סיבית הסימן בתוצאה היא 0 התוצאה חיובית; אם היא 1 התוצאה שלילית וכתובה במשלים ל-2.
דוגמה 1.15
נחשב 13 − 6 באמצעות חיבור המשלים ל-2, ב-8 סיביות.
פתרון:
A = 13 = 0000 1101 , B = 6 = 0000 0110.
המשלים ל-2 של המספר B: נהפוך את הסיביות ← 1111 1001 , ונוסיף 1 ← 1111 1010.
1
1
1
1
1
0
0
0
0
1
1
0
1
A
+
1
1
1
1
1
0
1
0
המשלים ל-2 של B
=
1
0
0
0
0
0
1
1
1
מן הנשא השמאלי מתעלמים
סיבית הסימן 0 ← התוצאה חיובית: 000001112 = 710.
13 − 6 = 0000 0111 = 7
דוגמה 1.16
נחשב 6 − 13 באמצעות חיבור המשלים ל-2, ב-8 סיביות.
פתרון:
A = 6 = 0000 0110 , B = 13 = 0000 1101.
המשלים ל-2 של המספר B: נהפוך את הסיביות ← 1111 0010 , ונוסיף 1 ← 1111 0011.
1
1
0
0
0
0
0
1
1
0
A
+
1
1
1
1
0
0
1
1
המשלים ל-2 של B
=
1
1
1
1
1
0
0
1
אין נשא יוצא
סיבית הסימן 1 ← התוצאה שלילית. גודלה הוא המשלים ל-2 שלה: 000001112 = 710.
6 − 13 = 1111 1001 = −7
שימו לב: אם חיברנו שני מספרים חיוביים והתוצאה יצאה עם סיבית סימן 1, או חיברנו שני מספרים שליליים והיא יצאה עם סיבית סימן 0, התוצאה שגויה: היא גדולה מן התחום שהסיביות מאפשרות. מצב זה נקרא גלישה (Overflow). למשל ב-8 סיביות: 100 + 50 = 150 , וזה גדול מ-+127.
תרגול מהיר — נחסר באמצעות חיבור המשלים ל-2, ב-8 סיביות. נכתוב את התוצאה הבינארית ואת ערכה
▶ניסוי חי — שיטות ספירה וחשבון בינאריבשיעור הראשון של פרק המערכות הספרתיות: סימולציה של המרה בין השיטות, של המשלים ל-2 ושל חיבור בינארי עמודה אחר עמודה.
⚠
המעבדה אינה זמינה כרגע. החומר בפרק שלם גם בלעדיה — ממשיכים לקרוא, וחוזרים לניסוי מאוחר יותר או פותחים אותו ישירות בקישור שמתחת למסגרת.
ייצוג מספרים עשרוניים בקוד BCD (Binary Coded Decimal)
קוד BCD: הוא דרך לכתוב מספר עשרוני שבה כותבים כל ספרה עשרונית בנפרד בארבע סיביות. השם הוא קיצור של Binary Coded Decimal: "עשרוני מקודד בבינארי".
בקוד BCD משתמשים רק בעשרה צירופים מתוך שישה עשר: מ-0000 (הספרה 0) עד 1001 (הספרה 9). ששת הצירופים מ-1010 עד 1111אינם מותרים, כי אין ספרה עשרונית שמתאימה להם.
Dec
BCD
0
0000
1
0001
2
0010
3
0011
4
0100
Dec
BCD
5
0101
6
0110
7
0111
8
1000
9
1001
צירופים שאינם מותרים
Bin
BCD
1010
—
1011
—
1100
—
1101
—
1110
—
1111
—
דוגמה 1.17
נכתוב את המספר העשרוני 279 בקוד BCD, ונשווה לכתיבתו בשיטה הבינארית.
נקרא כל קבוצה של ארבע סיביות כספרה עשרונית אחת: 1000 → 8 , 0101 → 5 , 0011 → 3.
1000 0101 0011BCD = 85310
הערה: למה צריך BCD אם הוא דורש יותר סיביות? כי הוא נוח לתצוגה: כל ארבע סיביות עוברות ישירות לתצוגת 7 מקטעים אחת. פוגשים אותו בשעונים ספרתיים, במונים ובמחשבונים. נפגוש אותו שוב בפרק 7 ובפרק 11.
המספר 279 על שלוש תצוגות: כל תצוגה מקבלת ארבע סיביות BCD
נוכיח בדוגמה של 4 סיביות שהמשלים ל-2 של המשלים ל-2 מחזיר אותנו למספר המקורי. ניקח את המספר 0110.
תשובות:0110 → 1010 → 0110
27.
כתובת בזיכרון המחשב היא 1F4016. (א) מהי הכתובת בשיטה העשרונית? (ב) מהי הכתובת שבאה 1610 מקומות אחריה, בשיטה ההקסדצימלית?
תשובות: (א) 8000 (ב) 1F5016
28.
נכפול את המספר 10112 ב-2 , אחר כך ב-4 , ואחר כך ב-8. מה רואים?
תשובות:101102 , 1011002 , 10110002 — בכל כפל ב-2 נוסף אפס מימין (הזזה שמאלה)
תשובות סופיות לשאלות הפרק
1.14082 = 4·103 + 0·102 + 8·101 + 2·100 ; המשקל של הספרה 8 הוא 101 = 10
שאלות בגרות לפרק 1
השאלות שלהלן לקוחות כלשונן מבחינות הבגרות של משרד החינוך, שאלון 845381 (מערכות חשמל). מתחת לכל שאלה מופיעות התשובות הסופיות. הפתרון המלא, שלב אחר שלב, נמצא באתר המחבר: לוחצים על הקישור שמתחת לשאלה.