Table of Contents

    Single and Double Precision Representation Schemes

    কম্পিউটারে Floating-Point Number সংরক্ষণের জন্য IEEE 754 Standard ব্যবহার করা হয়।

    এই পদ্ধতিতে সংখ্যা তিনটি অংশে ভাগ করা হয়:

    • Sign Bit
    • Exponent
    • Mantissa (বা Significand)

    Floating-Point Number-এর সাধারণ রূপ

    Floating-Point Number সাধারণত নিচের আকারে প্রকাশ করা হয়:

    \[ F \times 2^E \]

    এখানে,

    • F = Fraction বা Mantissa
    • E = Exponent

    Precision কী?

    Precision বলতে বোঝায় একটি সংখ্যা কতটা সঠিকভাবে সংরক্ষণ করা যায়।

    যত বেশি Bit Mantissa-এর জন্য ব্যবহার করা হবে, তত বেশি Accuracy পাওয়া যাবে।


    দুই ধরনের Precision Representation

    IEEE 754 Standard অনুযায়ী Floating-Point Number প্রকাশের দুটি প্রধান পদ্ধতি আছে:

    1. Single Precision (32-bit)
    2. Double Precision (64-bit)

    1. Single Precision Representation

    Single Precision-এ একটি Floating-Point Number মোট 32 Bit ব্যবহার করে সংরক্ষণ করা হয়।


    32-bit Single Precision Structure

    অংশ Bit সংখ্যা
    Sign Bit 1 bit
    Exponent 8 bits
    Mantissa 23 bits

    Sign Bit

    • \(0\) → Positive Number
    • \(1\) → Negative Number

    Exponent Field

    Exponent অংশে Bias ব্যবহার করা হয়।

    Single Precision-এ Bias = 127


    Mantissa Field

    Mantissa অংশে সংখ্যার Significant Digits সংরক্ষণ করা হয়।

    Normalized Form-এ Binary Point-এর আগে থাকা \(1\) Store করা হয় না।


    Single Precision Example

    ধরা যাক একটি Binary Floating-Point Pattern:

    \[ 1\ 01111100\ 01000000000000000000000 \]


    Step 1: Sign Bit

    \[ 1 \]

    অতএব এটি Negative Number।


    Step 2: Exponent নির্ণয়

    \[ 01111100_2 = 124_{10} \]

    Bias = 127

    অতএব প্রকৃত Exponent:

    \[ 124 - 127 = -3 \]


    Step 3: Mantissa নির্ণয়

    Mantissa:

    \[ 1.01_2 \]

    এটি Decimal-এ:

    \[ 1 + 2^{-2} = 1.25 \]


    Final Value

    \[ -1.25 \times 2^{-3} \]

    \[ = -0.15625 \]


    2. Double Precision Representation

    Double Precision-এ Floating-Point Number সংরক্ষণের জন্য 64 Bit ব্যবহার করা হয়।


    64-bit Double Precision Structure

    অংশ Bit সংখ্যা
    Sign Bit 1 bit
    Exponent 11 bits
    Mantissa 52 bits

    Double Precision-এর বৈশিষ্ট্য

    • আরও বেশি Accuracy প্রদান করে
    • খুব বড় ও খুব ছোট সংখ্যা প্রকাশ করতে পারে
    • Scientific Calculation-এ ব্যবহৃত হয়
    • Memory বেশি ব্যবহার করে

    Single Precision বনাম Double Precision

    বিষয় Single Precision Double Precision
    Total Bits 32 bits 64 bits
    Exponent Bits 8 bits 11 bits
    Mantissa Bits 23 bits 52 bits
    Accuracy কম বেশি
    Memory Usage কম বেশি
    Speed দ্রুত তুলনামূলক ধীর

    Trade-off between Size of Mantissa and Exponent

    Floating-Point Representation-এ Mantissa এবং Exponent-এর Bit সংখ্যা নির্ধারণ করা খুব গুরুত্বপূর্ণ।

    কারণ এখানে একটি Trade-off বা সমঝোতা থাকে।


    Mantissa বেশি হলে কী হয়?

    যদি Mantissa-এর জন্য বেশি Bit ব্যবহার করা হয়:

    • Accuracy বা Precision বৃদ্ধি পায়
    • Fractional Part আরও সঠিকভাবে সংরক্ষণ করা যায়
    • কিন্তু Exponent-এর জন্য কম Bit বাকি থাকে
    • ফলে খুব বড় বা খুব ছোট সংখ্যা প্রকাশের ক্ষমতা কমে যায়

    Exponent বেশি হলে কী হয়?

    যদি Exponent-এর জন্য বেশি Bit ব্যবহার করা হয়:

    • অনেক বড় ও অনেক ছোট সংখ্যা প্রকাশ করা যায়
    • Range বৃদ্ধি পায়
    • কিন্তু Mantissa-এর জন্য কম Bit থাকে
    • ফলে Accuracy কমে যায়

    সহজ উদাহরণ

    ধরা যাক আমাদের কাছে মোট 8 Bit আছে।


    Case 1: Mantissa বেশি

    Mantissa = 6 bits Exponent = 2 bits

    • Accuracy বেশি
    • কিন্তু Range কম

    Case 2: Exponent বেশি

    Mantissa = 3 bits Exponent = 5 bits

    • Range বেশি
    • কিন্তু Accuracy কম

    Trade-off Summary

    যদি Bit বেশি দেওয়া হয় যা বাড়ে যা কমে
    Mantissa Precision / Accuracy Range
    Exponent Range Precision

    গুরুত্বপূর্ণ Note

    Mantissa-এর Bit যত বেশি হবে, Accuracy তত বেশি হবে কিন্তু Range কমে যাবে।

    Exponent-এর Bit যত বেশি হবে, Range তত বেশি হবে কিন্তু Accuracy কমে যাবে।


    বাস্তব জীবনে ব্যবহার

    • Scientific Calculator
    • Computer Graphics
    • Artificial Intelligence
    • Game Development
    • Weather Simulation
    • Engineering Software

    উপসংহার

    Single এবং Double Precision Floating-Point Number প্রকাশের দুটি গুরুত্বপূর্ণ পদ্ধতি।

    Single Precision কম Memory ব্যবহার করে কিন্তু Accuracy কম দেয়।

    Double Precision বেশি Memory ব্যবহার করে কিন্তু অনেক বেশি Accurate Result প্রদান করে।

    Floating-Point Representation-এ Mantissa এবং Exponent-এর মধ্যে সবসময় Precision এবং Range-এর একটি Trade-off থাকে।