cpp-02-07 - معرفی مبنای 16 و نوع float
cpp-02-07 - معرفی مبنای 16 و نوع float
توضیحات :
در این بخش از آموزش C++، یک نگاه کاربردی به مبنای ۱۶ (Hexadecimal)، نحوه نمایش اعداد در حافظه (RAM) و تفاوت دادههای float و double خواهیم داشت؛ بدون ورود به مباحث سنگین معماری کامپیوتر.
🔹 مبنای ۱۶ (Hexadecimal) چیست؟
در مبنای ۱۶، اعداد از ۰ تا ۱۵ به صورت زیر نمایش داده میشوند:
-
A = 10
-
B = 11
-
C = 12
-
D = 13
-
E = 14
-
F = 15
این سیستم عددی برای نمایش مقادیر داخل حافظه، آدرسها و دادههای دودویی کاربرد فراوانی دارد.
🔹 مثال: چرا عدد 45 در حافظه به شکل Hex دیده میشود؟
وقتی عددی مثل 45 در حافظه ذخیره میشود، مقدار آن به صورت هگز نمایش داده میشود.
در این نمایش:
-
رقم اول ارزش 16^0 دارد
-
رقم دوم ارزش 16^1 دارد
اگر یک مقدار مثل D3 داشته باشیم:
به همین منطق، مقدار 45 نیز از ترکیب حروف/اعداد هگز به دست میآید.
این روش نمایش دادن، مبنای کار پردازنده و حافظه است.
🔹 مقدمهای کوتاه درباره نمایش اعشار در حافظه (Floating Point)
نوع داده float برای ذخیره اعداد اعشاری بهکار میرود:
نکات مهم:
-
float و int هر دو ۴ بایت فضا میگیرند
-
اما نمایش float در حافظه با روش Floating Point انجام میشود
-
یعنی بخشی از بیتها برای علامت، بخشی برای قسمت صحیح و بخشی برای قسمت اعشار استفاده میشود
-
این ساختار جزئیات معماری سختافزاره و در سطح مقدماتی نیاز نیست کامل وارد آن شوید
🔥 نکته مهم: پیشفرض کامپایلر — double
در C++ هر عدد اعشاری (مثل 2.5) به صورت پیشفرض double در نظر گرفته میشود.
پس اگر بنویسید:
کامپایلر عدد 2.5 را double محسوب میکند و آن را به float type cast میکند.
برای جلوگیری از این مسئله و مشخص کردن اینکه عدد اعشار مخصوص float است، باید از f استفاده کنید:
این کار:
-
از تبدیل غیرضروری جلوگیری میکند
-
دقت نمایش float را درست نگه میدارد
-
با استانداردهای جدید C++ سازگارتر است
🔹 نمونه کد کامل
خروجی:
🔚 جمعبندی
در این بخش یاد گرفتیم:
✔ مبنای ۱۶ چگونه کار میکند
✔ چرا حافظه مقادیر را با Hex نشان میدهد
✔ float چگونه در RAM ذخیره میشود
✔ چرا باید به اعداد اعشاری حرف f اضافه کنیم
✔ تفاوت float و double از نگاه کامپایلر
این مفاهیم پایهای هستند، اما در ادامه مسیر یادگیری C++ (خصوصاً اشارهگرها و حافظه)، کاملاً برایتان کاربردی و ضروری خواهند شد.
لطفا برای گذاشتن نظرات خود وارد شوید