בינארי, עשרוני והקסדצימלי: איך עוברים מאחד לשני

המרה בין בסיסים נראית כמו קסם עד שמבינים שזה תמיד אותו רעיון: כל ספרה שווה לפי המקום שהיא תופסת. כאן תלמדו להמיר ידנית מבינארי לעשרוני ומעשרוני לבינארי, לקרוא הקסדצימלי בלי חשש ולתרגם טקסט לביטים, עם חישובים פתורים וטבלה מ-0 עד 15 שתמיד תהיה לכם בהישג יד.

עודכן:

מהי שיטה מיקומית

במספר העשרוני 4,095 הספרה 4 לא שווה 4: היא שווה 4,000, כי היא נמצאת במקום האלפים. כל מקום מכפיל את הספרה בחזקה של 10 (1, 10, 100, 1,000…). זו השיטה המיקומית, והבסיס הוא מספר הספרות השונות שבהן משתמשים: עשר בשיטה העשרונית.

הבינארי פועל באותו אופן, אבל בבסיס 2: קיימות רק הספרות 0 ו-1, וכל מקום שווה פי שניים מהקודם. ההקסדצימלי הוא בסיס 16: ששת עשר הספרות הן 0 עד 9 והאותיות A עד F, וכל מקום שווה פי 16 מהקודם. מחשבים עובדים בבינארי כי מעגל חשמלי צריך להבחין רק בשני מצבים (כבוי ודלוק), וההקסדצימלי הוא דרך קצרה לכתוב את הביטים האלה.

הערך של כל מקום. אם תשננו את חזקות ה-2 עד 128, תחסכו כמעט את כל החישובים.
מיקום (מימין לשמאל)ערך בבינאריערך בהקסדצימלי
111
2216
34256
484,096
51665,536
6321,048,576
76416,777,216
8128268,435,456

מבינארי לעשרוני, ידנית

כותבים כל ספרה עם הערך של המקום שלה, ומחברים רק את המקומות שבהם יש 1. דוגמה עם 1101: מימין לשמאל המקומות שווים 1, 2, 4 ו-8.

  1. כתבו את המספר ומתחתיו את הערך של כל מקום: 1 1 0 1 מעל 8 4 2 1.
  2. בדקו מה יש בכל מקום: 1 במקום של ה-8, 1 במקום של ה-4, 0 במקום של ה-2 ו-1 במקום של ה-1.
  3. התעלמו מהמקומות שיש בהם 0 (כאן, המקום של ה-2).
  4. חברו: 8 + 4 + 0 + 1 = 13. כלומר 1101 בבינארי הוא 13 בעשרוני.

עם יותר ספרות זה אותו דבר: 11111111 הוא 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255, הערך הגדול ביותר שנכנס ב-8 ביטים. ו-10110110 הוא 128 + 32 + 16 + 4 + 2 = 182.

מעשרוני לבינארי, בחילוקים עוקבים

מחלקים את המספר ב-2 שוב ושוב, רושמים את השארית של כל חילוק (תמיד 0 או 1), עד שמגיעים למנה 0. השאריות, כשקוראים אותן מלמטה למעלה, הן המספר הבינארי. דוגמה עם 45:

אם קוראים את השאריות מלמטה למעלה מקבלים 101101. לבדיקה, חברו: 32 + 8 + 4 + 1 = 45.

יש שיטה חלופית שרבים מעדיפים: להחסיר חזקות של 2 מהגדולה לקטנה. עבור 200: ה-128 נכנס (נשאר 72), ה-64 נכנס (נשאר 8), 32 ו-16 לא נכנסים, אבל ה-8 כן (נשאר 0). המקומות שנוצלו הם 128, 64 ו-8, ולכן 200 = 11001000.

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

מכיוון שאין ספרות ל-10 עד 15, משתמשים באותיות A, B, C, D, E ו-F. ספרה הקסדצימלית אחת שווה בדיוק לארבעה ביטים («ניבל»), ולכן זה כל כך נוח: בייט, שהוא 8 ביטים, נכתב בשתי ספרות הקסדצימליות בלבד.

כדי לעבור מהקסדצימלי לעשרוני, הכפילו כל ספרה בחזקת ה-16 של מקומה וחברו. למשל, 3F = 3 × 16 + 15 = 63 ו-A3 = 10 × 16 + 3 = 163.

מ-0 עד 15 בארבעת הבסיסים שהכלי מציג.
עשרוניבינארי (4 ביטים)אוקטליהקסדצימלי
0000000
1000111
2001022
3001133
4010044
5010155
6011066
7011177
81000108
91001119
10101012A
11101113B
12110014C
13110115D
14111016E
15111117F

למה משתמשים בהקסדצימלי: בתים, צבעים וכתובות

בייט הוא 8 ביטים ונע בין 0 ל-255 (00000000 עד 11111111). כתיבת ביטים ביד איטית ומועדת לטעויות; בהקסדצימלי אותו בייט הוא שני תווים, מ-00 עד FF. כדי לעבור מבינארי להקסדצימלי, חלקו את הביטים לקבוצות של ארבעה מימין והחליפו כל קבוצה בספרה שלה מהטבלה. דוגמה: 11010111 מתחלק ל-1101 ול-0111, שהם D ו-7, ולכן הערך הוא D7. בעשרוני זה 13 × 16 + 7 = 215.

המקרה המוכר ביותר הוא צבעי אינטרנט. ב-#FF8800 יש שלושה בתים: FF לאדום (255), 88 לירוק (136) ו-00 לכחול (0). זה כתום עז: כל האדום, קצת יותר ממחצית הירוק ושום כחול. הקסדצימלי מופיע גם בכתובות זיכרון, בקודי שגיאה ובמזהי רשת.

מטקסט לבינארי עם ASCII

מחשב שומר כל אות כמספר, ואת המספר כביטים. בטבלת ASCII האות A היא 65, שבבינארי של 8 ביטים הוא 01000001. המילה «Hi» היא שתי אותיות: H היא 72 (01001000) ו-i היא 105 (01101001), ולכן היא נכתבת 01001000 01101001. עם «Hola» אלה 72, 111, 108 ו-97, כלומר 01001000 01101111 01101100 01100001, או בהקסדצימלי 48 6F 6C 61.

הכלי משתמש בקידוד UTF-8: באותיות לטיניות בסיסיות כל תו תופס בייט אחד של 8 ביטים, אבל אות בעברית, אות עם סימן או אמוג׳י תופסים כמה בתים, ולכן הם נותנים יותר מ-8 ביטים. למשל, האות א היא שני בתים: 11010111 10010000 (D7 90 בהקסדצימלי).

איך עושים את כל זה עם הכלי

הממיר «בינארי, עשרוני והקסדצימלי» מתאים לבדיקת החישובים הידניים שלכם או לפתרון מספרים ארוכים בלי טעויות.

  1. הקלידו את המספר בשדה של הבסיס שלו: «עשרוני (בסיס 10)», «בינארי (בסיס 2)», אוקטלי או «הקסדצימלי (בסיס 16)». שלושת האחרים מתמלאים מעצמם.
  2. אם ספרה לא מתאימה לבסיס (למשל 2 בבינארי), הכלי מתריע על כך.
  3. לטקסט, הקלידו אותו בשדה «טקסט» והסתכלו על «בינארי (8 ביטים לכל תו)» ועל ההקסדצימלי לפי בתים. אפשר גם להדביק ביטים בקבוצות של 8 כדי לחזור לטקסט.
  4. לבסיסים נדירים, השתמשו ב«כל בסיס (מ-2 עד 36)»: בוחרים את בסיס המקור, את בסיס היעד ואת המספר.

המגבלות: הכלי ממיר רק מספרים שלמים לא שליליים (בלי שבר עשרוני ובלי סימן) ולא מוסיף אפסים משמאל במקומכם, ולכן אם אתם רוצים 8 ביטים קבועים צריך להשלים ידנית (13 הוא 00001101). שום דבר ממה שאתם מקלידים לא יוצא מהדפדפן שלכם.

טעויות נפוצות

תרגילים פתורים לאימון

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

שאלות נפוצות

איך ממירים 1101 מבינארי לעשרוני?

מחברים את הערכים של המקומות שבהם יש 1: 8 + 4 + 1 = 13. הספרה השנייה מימין היא 0, ולכן ה-2 לא נכלל בסכום.

כמה זה 255 בבינארי ובהקסדצימלי?

255 הוא 11111111 בבינארי ו-FF בהקסדצימלי. זה הערך הגדול ביותר שנכנס בבייט של 8 ביטים.

למה בהקסדצימלי משתמשים באותיות?

כי צריך ששה עשר סימנים שונים והשיטה העשרונית מספקת רק עשרה (0 עד 9). לכן A שווה 10, B שווה 11, C שווה 12, D שווה 13, E שווה 14 ו-F שווה 15.

כמה מספרים שונים אפשר לכתוב ב-8 ביטים?

256, מ-0 עד 255. באופן כללי, עם n ביטים אפשר לייצג 2 בחזקת n ערכים.

האם הכלי ממיר מספרים שליליים או עם שבר עשרוני?

לא, רק מספרים שלמים לא שליליים. לטקסט הוא משתמש ב-UTF-8, ולכן אותיות בעברית ואמוג׳י נותנים יותר מ-8 ביטים.