
05-04-2008, 01:49
|
 |
|
|
חבר מתאריך: 21.12.04
הודעות: 30,020
|
|
כמו שחישבתי את השאר... חילקתי את 20 ב 16 ומצאתי שזה 1 עם שארית 4.
מכאן 14.
התרגיל המלא בלי קיצורי דרך לשאלה: נתון 333 בבסיס 10, מה המספר בהקסא?" הוא:
מחלקים את 333 ב 16 ומקבלים 20 עם שארית 13.
את השארית משאירים בתוך הספרה הראשונה של התשובה. השארית תמיד תהיה קטנה מ 16 ולכן היא תמיד תהה הספרה הראשונה של התשובה. לכן אנחנו יודעים שהתשובה מתחילה באות "D" (שזה בעצם 13 בהקסא).
נשארנו עם 20 שזה יותר מ 16 ולכן צריך למצוא את ההצגה ההקסאדצימלית שלו.
מחלקים ב 16 ומקבלים 1 עם שארית 4. עכשיו, השארית כזכור לך (מקודם) היא אוטומטית בתשובה ולכן התשובה היא כרגע 4D...
נשארנו עם "1". כיוון שהספרה "1" קטנה מ 16, אם נחלק אותה ב 16, נקבל 0 עם שארית "1" ולכן השארית הזו תצטרף לתשובה, שתהיה 14D.
למעשה, כאשר אתה מגיע לספרה האחרונה שהיא קטנה מ 16, היא אוטומטית בתשובה. אתה לא צריך לחלק אותה ב 16 ולגלות שהיא השארית של החלוקה 
אם אתה רוצה להתחכם, אתה יכול להגיד שנשארת עם 0 ושארית 1 וגם את ה 0 אתה יכול לחלק ב 16, רק שהתשובה תהיה 0 עם שארית 0 (אפס חלקי כל מספר זה 0) ולכן התשובה היא 014D ואם תמשיך לחלק שוב ב 16 אז תקבל 0014D ואח"כ 00014D וכן הלאה...
אלו אגב, הם האפסים המובילים שציינת קודם. לא נהוג לכתוב אותם כיוון שהם לא משנים את התשובה, אבל זו לא טעות להציג אותם, אם זה עוזר לך ברמת כתיבת הקוד.
יש לי פתרון לקוד אסמבלי שכתבתי לשיעור שלי שממיר מקוד דצימלי להקסא ולבינארי, אבל הוא לא הכי יעיל (זאת אומרת, הוא עובד טוב אבל יכלתי לכתוב אותו קצת יותר קצר עם פחות פקודות ושורות).
|