سؤال عن موضوع تخزين قيم ints في ذاكرة الحاسب (عند التحويل من float إلى int )

السلام عليكم شباب:

There is another aspect of the operation: converting a float into an int is not always feasible. Integer variables (like the floats) have a limited capacity. They cannot contain arbitrarily large (or arbitrarily small) numbers. For example, if a certain type of computer uses four bytes (i.e. 32 bits) to store int values, you are only able to use the numbers from the range of -2147483648..2147483647.

ماذا يُقصد بالضبط من أخر عبارة : إنك قادر فقط على استخدام أعداد تتراوح من ......إلى ........ ؟ و لماذا كُتبت لهذا الشكل؟

و شكراً .......


التعليق السابق

كيف عرفنتا أن أكبر قيمة هي 2147483648؟

لان مجموع قيم البتات عدا بت الاشارة يساوي هذا الرقم, قيمة كل بت هي مضاعف قيمة البت الذي قبله من اليمين الى اليسار, ونبدأ من 1 ثم 2 ثم 4 .. الى ان نصل الى البت رقم 31

وتحسب من خلال 2 قوة (عدد البتات - بت الاشارة), في مثالنا الحالي 2 قوة 31

(2^32) -1

2 قوة 31 وليس 32 لان هناك بت مخصص للاشارة, في حال كنا نتعامل مع ارقام موجبة فقط, فنستخدم 32

خطأ مطبعي .. شكرا على التصحيح ..