ההבדל בין חתום ללא חתום הפרש בין

Anonim

חתום לעומת חתום

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

יצירת מספרים חתומים ולא חתומים התקבלה על ידי הצורך לייצג ערכים מספריים עם משאבים מוגבלים מאוד. לדוגמה, באמצעות 8 סיביות, יש לך בסך הכל 256 שילובים. עם מספר לא חתום, פירוש הדבר כל ערך בין 0 ל 255. לעומת זאת, מספר חתום פירושו שכבר הפסדת קצת בשביל לייצג את השלט. עם 7 סיביות יש לך מקסימום של 128 שילובים כך הטווח שלך עם 8 חתימה מספר הוא מ -128 עד 127. אז אם יש לך משאבים מוגבלים, כמו בימים הראשונים של המחשוב, באמצעות מספרים חתום היה הדרך ללכת.

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

- עם התפתחות הטכנולוגיה, המשאבים הפכו לשופעים יותר, והשימוש במספרים לא חתומים הופך פחות ופחות נחוץ. כדי להדגים זאת, זכור שמספר של 32 סיביות יכול להיות בעל ערך חתום מקסימלי של 2 מיליון או 4 מיליון אם הוא לא חתום. כאשר אתה זז לתוך 64 סיביות, ההבדל הוא בין 90 ו - 180 quintillion; ערכים המשמשים לעתים נדירות, אם בכלל, בתוכניות משותפות.

סיכום:

1. מספר לא חתום כולל רק מספרים אפס וחיוביים, כאשר מספרים חתומים כוללים מספרים שליליים.

2. במספרים חתומים יש חצי מהערך המקסימלי של מספרים לא חתומים.

3. שילוב מספרים חתומים וחתימים עלול לגרום לבעיות.

4. באמצעות מספרים חתומים או חתומים יש השפעה קטנה ביישומים המודרניים.