Skip to content

Latest commit

 

History

History
12 lines (6 loc) · 3.18 KB

File metadata and controls

12 lines (6 loc) · 3.18 KB

#‫اعداد نقطه شناور

‫اعداد نقطه شناور یک نوع داده مهم در محاسبات هستند که به طور گسترده استفاده می شوند.‪ ‫در عمل، همه کامپیوترهای مدرن از نمایش ممیز شناور که در استاندارد IEEE 754 مشخص شده برای تمامی اعدادی که با یک مانتیس و یک توان نمایش داده می‌شوند، بهره می‌برند. همانند نماد علمی، مقدار هر عدد ممیز شناور عبارتست از Mantissa * 2 ^ exponent.

این نحوه‌ی نمایش اجازه می‌دهد تا محدوده‌ی وسیعی از مقادیر با تعداد نسبتا کمی از بیت‌ها نمایش داده شوند که هم شامل مقادیر کوچک و هم مقادیری است که اندازه‌ی آن بسیار بزرگ‌تر از آن است که در عدد صحیحی با همان تعداد بیت نمایش داده شود. با این همه، مشکلی که به وجود می‌آید این است که تعداد زیادی از مقادیر در محدوده‌ی نمایش ممیز شناور نمی‌توانند به درستی نمایش داده شوند. درست مانند تعداد زیادی از اعداد حقیقی که نمی‌توانند توسط یک عدد دهدهی با تعدادی رقم ثابت معنی دار به نمایش در آیند. وقتی یک محاسبه مقداری را ایجاد می‌کند که نمی تواند دقیقا به وسیله قالب ممیز شناور نمایش داده شود، سخت افزار باید نتیجه را به مقداری که به درستی نمایش داده می‌شود، گرد کند. در استاندارد IEEE 754، روش پیش فرض برای این کار این است که به نزدیک‌ترین عدد گرد شود. در این روش، مقادیر به نزدیک‌ترین عدد قابل نمایش گرد می‌شوند و نتایجی که دقیقا در میان دو عدد قابل نمایش قرار دارند طوری انتخاب می‌شوند که کم ارزش ترین رقم حاصل‌شان زوج شود. این استاندارد چندین شیوه گرد کردن دیگر را که قابل انتخاب توسط برنامه هستند، تعیین می‌کند که شامل گرد کردن به 0، گرد کردن به بی نهایت مثبت و گرد کردن به بی نهایت منفی است. استاندارد IEEE 754، چند پهنای بیتی را برای اعداد ممیز شناور تعیین کرده است. دو پهنای که بیشتر از همه مورد استفاده قرار می گیرند، دقت ساده ( Single Precision ) و دقت مضاعف ( Double Precision ) هستند. اعداد با دقت ساده 32 بیت طول دارند و شامل 8 بیت برای نما، 23 بیت برای بخش کسر و 1 بیت علامت هستند که شامل علامت بخش کسری است. اعداد دقت مضاعف دارای 11 بیت برای نما، 52 بیت برای بخش کسر و 1 بیت برای علامت هستند.

منبع: تبیان