דאג LLYOYD: מספרים אז הקסדצימלי, כאילו שהיינו צריכים עוד מספר בסיס
נכון תכנית?
ובכן, רוב התרבויות המערביות, כפי שאתה בוודאי מכיר,
להשתמש בבסיס העשרוני system-- 10, לייצג נתונים מספריים.
יש לנו את הספרות 0, 1, 2, 3, 5, 6, 7,8,9.
ואם אנחנו צריכים לייצג ערכים גבוהים יותר מתשעה,
אנחנו יכולים לשלב ספרות אלה באמצעות הרעיון של ערך מקום.
אז במשך 10, יש לנו 1 ספרה אחרי ספרה 0
ואנחנו באופן אינטואיטיבי להבין כי מה שאנחנו עושים
יש אנחנו הכפלה הראשון 1 על ידי 10,
והוסיף לאחר מכן 0 עבור הסכום כולל של 10.
מחשבים לעשות משהו יפה דומה, כמו שאתם בוודאי מכירים,
עם בסיס system-- ינארי 2.
ההבדל יש להיות שיש רק 2 ספרות
לעבוד with-- 0 ו -1.
וכך ערכי המקום שלנו, במקום להיות אחד,
עשר, מאה, אלף, כפי שהם יהיה בשיטה העשרונית,
אחד, שתיים, ארבעה, שמונה, וכן הלאה.
הנה הדבר אם כי, 0 של אלה ושל 1, במיוחד
אם אנחנו להיות מדעני מחשב ואנחנו עושים הרבה תכנות
או בעבודה עם מחשבים, היו הולך להיות רואה הרבה מספרי בינאריים.
ושל 0 ו -1 של אלה ברשתות גדולות יכול להיות מאוד קשה לנתח.
אנחנו לא יכולים רק להסתכל על שורה של 0 של ושל 1 ויודע בהכרח
בדיוק מה שזה.
אבל זה עדיין שימושי כדי להיות מסוגל נתונים מפורשים באותה הדרך
שמחשב עושה.
יש לנו את הרעיון הזה של מערכת הקסדצימלי, שהוא
בסיס 16, במקום בסיס 10 או בסיס 2.
מה שאומר שיש לנו 16 ספרות לעבוד עם במקום 10 או 2.
וזה הרבה יותר דרך תמציתית להביע
מידע בינארי על מערכת מחשב, זה הרבה יותר אנושי מובן.
אז יש לנו את הספרות 0 עד 9, ולאחר מכן
יש לנו גם שש נוספים אלה digits--, ב, ג, ד, ה, ו-ו ', המייצגים את 10,
הרעיון שלנו 10, 11, 12, 13, 14 ו -15, בעשרוני.
לפעמים, אגב, תוכל גם רואה אלה באמצעות של f כהון
דרך F, שהוא דרך בה אני נוטה לעשות את זה.
זה רק שלי העדיף סגנון, אבל בכל מקרה זה בסדר,
שניהם מייצגים די הרבה את אותו הדבר.
>> אז למה זה מגניב הקסדצימלי?
למה אנחנו צריכים להשתמש בזה בסיס נוסף אחר?
יש לנו כבר 2 ו 10, למה אנחנו צריכים 16?
ובכן 16 הוא כוח של 2, וכך כל ספרה הקסדצימלי, 0 דרך F,
מתאים לייחודי הזמנה, או הסדר ייחודי
של 4 ספרות בינארי, 4 ביטים.
וכך, במובן זה, אנו יכולים להביע מספרים ארוכים מאוד, מורכבים, בינארי
בהקסדצימלי ב הרבה דרך תמציתית יותר,
מבלי לאבד מידע או שיש לעשות המרות במיוחד מסורבלות
על המספרים האלה.
>> אז, כמו שאמרתי, כל ספרה הקסדצימלי
מתאים לייחודי הסדר של 4 ספרות בינארי.
אז המחרוזת בינארי 0000 מתאים לספרה הקסדצימלי 0.
0110 מתאים לספרה הקסדצימלי 6.
ו1,111 מקבילה לF ספרה הקסדצימלי.
אם אתה מחפש ב תרשים, זה במיוחד
אם אתה מסתכל על צד השמאלי של התרשים,
אתה כבר יכול לראות שיש קצת בעיה עמימות כאן.
עשרוני 0 הוא פחות או יותר אין להבחין בין הקסדצימלי 0,
מלבד העובדה שזה מתחת ל טור שאומר הקסדצימלי.
>> אבל אנחנו כנראה לא יהיו תמיד יש עמודה שיש.
בדרך כלל כאשר אנו מביעים מספרים לסימון הקסדצימלי
להבחין בבירור שלהם משיטה עשרונית,
אנחנו בדרך כלל קידומתם עם הקידומת 0x.
0x פירוש דבר במציאות, זה רק רמז אלינו כמו בני אדם
כי מה שאנחנו עומדים לראות, או עומד להתחיל ניתוח,
הוא מספר הקסדצימלי.
ברור לספרות גבוהה יותר, ב, ג, ד, ו-ו ', שמתאים ל10-15
זה די חד משמעי זה זה מספר הקסדצימלי.
ולמעשה, כל הקסדצימלי מספר שיש לו מכתבים בזה,
הוא כנראה די ברור כמספר הקסדצימלי.
אבל, עדיין, ל למען הבהירות, זה
תמיד רעיון טוב קידומת כל פעם שאתה
מתייחס לספרות כהקסדצימלי מספר בקידומת 0x.
>> אז, בינארי, כפי שאנו אמר, יש ערכי מקום.
יש מקום אלה, מקום זוגות, מקום ארבעה, ומקום שמיני.
ויש גם ערכים עשרוניים מקום, אלה, עשרות, מאות, אלפים ו
שכולנו יכול להיזכר ב מבית הספר יסודי.
והקסדצימלי הוא לא יוצא מן הכלל כאן, באמת.
כמו כן, יש ערכי מקום אבל במקום להיות סמכויות או סמכויות של 2 מתוך 10,
הם כוחות של 16.
>> כך אנו רואים מספר כמו שזה די ברור יודע שזה 397, נכון?
ובכן, אם אנו רואים מספר כזה, אנחנו יודעים שזה לא 397 יותר.
זה הקסדצימלי מספר 3-9 ושבע.
זה לא 397, זה אומר משהו שונה,
בגלל שאנחנו משתמשים בכוחות של 16 ככל ערכי המקום שלנו במקום הכוחות
10.
למעשה, את ערכי המקום כאן הייתם להיות המקום אלה, המקום שש-עשרה,
ו, המקום מאתיים חמישים ושישית שמתאים לרעיון של אלה שלנו
מקום, מקום עשרות, ומאה מקום, אם המספר היה 397.
אבל מאז זה 0x 397, יש לנו מקום מקום, שש-עשרה אלה,
ומקום מאתיים חמישים ושישית.
או, 16 למקום 0, שהוא 1.
16 למקום הכח הראשון, 16.
16 בריבוע מקום, 256, ו כן הלאה, וכן הלאה, וכן הלאה.
אז המספר הזה הוא באמת 3 פעמים 16 בריבוע, ועוד 9 פעמים 16, בתוספת 7.
אני לא אעשה את המתמטיקה כאן, אבל זה לא 397, זה הרבה, הרבה יותר גדול מזה.
>> כמו כן, יש לנו יכולים ADC 0x, גם זה פעמים 16 בריבוע.
או אם לתרגם את זה לרעיון שלנו של מספרים עשרוניים, זה 10 פעמים
16 בריבוע, בתוספת פעמים ד 16, או בתוספת 13 פעמים 16.
ואל תדאגו אם לא שינן ד שהוא 13, או משהו כזה,
אין יותר מדי ספרות המכתב הבאות
וזה יהפוך אינטואיטיבי די מהר.
אז שוב זה 10 פעמים 16 בריבוע, בתוספת 13 פעמים 16, בתוספת 12 פעמים 1.
ADC אז 0x.
>> אז, כמו שאמרתי, כל קבוצה של 4 ספרות בינארי
מתאים ליחיד ספרה הקסדצימלי,
ואז זה ממש ממש קל לשנות קדימה ואחורה
בין משושה ובינארי.
אם יש לך מחרוזת ארוכה של ספרות בינאריות, כל מה שאתה צריך לעשות
הוא מתחיל לקבץ אותן תקין לשמאל כקבוצות של 4.
ואז אתה יכול לאחד אותם למספרים הקסדצימליים,
קשה הגבלת מספר ספרות אתה צריך לעבד נפשי.
במקום 32 של 0 ושל 1, כפי שנראה בשני,
ייתכן שתוכל לקבל את זה למטה רק 8 ספרות הקסדצימלי, הרבה
יותר תמציתי.
>> התרשימים כמה שקופיות לגבות תהיה לעזור לך להבין מיפוי זה,
אם כי, שוב תמצאו לשנן את זה די מהר.
נלך דרך דוגמא עכשיו.
אז אם יש לנו מספר כזה, מספר בינארי באמת גדול זה,
או מה שנראה מספר בינארי גדול.
והסיבה שאני אומר את זה, זה רק לכן-- זה בהמות, נכון?
יש כל כך 0 של ושל 1 יש רב.
אבל אנחנו כנראה לא באמת יש תחושה של מה ש
סדר הגודל של המספר הזה הוא באמת.
אין לנו מושג מה זה היה מתאים לעשרוני.
ולמעשה אנחנו אפילו לא רואים מה זה מתאים בעשרוני עכשיו.
אנו עשויים להיות מסוגלים לבטא בדרך זו ש
היה נותן לנו קצת יותר מידע על כמה גדול מספר זה.
>> אז בואו נלך שלתהליך הגיור.
הדבר הראשון שאנחנו צריכים לעשות הוא שאנחנו רוצים קבוצה
ספרות מתוך אלה לקבוצות של 4, החל מהימין
ופועל לשמאל.
יש במקרה 32 ספרות כאן, מה שאומר שיש לנו
הפסקה נקייה נחמדה של 8 קבוצות של 4.
זכור כי כל קבוצה של 4 כאן, באופן ייחודי, מקבילה
לספרה הקסדצימלי.
אז נתחיל שוב בנייה שלנו מספר מהימין, ועבדה בשמאל.
ובכן מה 1,101?
ובכן אנחנו עושים את המתמטיקה בראש שלנו, יש לנו 1 במקום שמיניות, 1
במקום ארבעה, 0 בזוגות מקום, ו1 במקום אלה.
זה 8 ועוד 4 בתוספת 1, שהיינו יודע שרק 13.
אבל אנחנו כנראה לא לכתוב 13 מתוך, בגלל שאנחנו עובדים עם הקסדצימלי.
אנחנו צריכים להמיר אותו להקסדצימלי שווה ערך של 13, שהוא ד.
>> 0011, גם זה 0 ב מקום שמיניות, 0 במקום ארבעה,
1 במקום הזוגות, ו1 במקום אלה.
זה 3.
אני מתכוון להמשיך לעשות את זה שוב, יש לנו כאן 9.
ולאחר מכן 11, אבל זה ב, זוכר.
2, 10-- או זה-- 6, ו -4.
וכדי שמחרוזת גדולה מאוד של של 0 ו -1 של של הראש
באו לידי ביטוי יותר תמציתי בהקסדצימלי כ46a2b93d 0x.
>> טוב, בסדר, שלמדנו חדש מיומנות מגניב, מה הטעם?
אנחנו אולי לא להשתמש בכל זה זמן, כפי שאנו הולכים לראות בקרוב,
אנו משתמשים הקסדצימלי די הרבה כמתכנתים.
לא בהכרח ל מטרה של עשיית מתמטיקה עם זה,
אבל בגלל שהרבה פעמים כתובות זיכרון במערכת שלנו
מיוצגים בהקסדצימלי.
זה באמת דרך תמציתית להביע , מספרי בינאריים אחרים מסורבלים.
וכך, שוב, ייתכן ש not-- אתה כנראה
לא הולך לעשות שום מתמטיקה עם זה, אתה לא
הולך להיות הכפלה מספרים הקסדצימליים יחד,
או עושה משהו מוזר כזה.
אבל זה הוא מיומנות שימושית יש כך שאתה יכול להביע ולהבין
זיכרון כתובות, ואחר דרכים לשימוש בנתונים בג
>> אני דאג לויד, זה CS50.