কম্পিউটার টিউটোরিয়াল

C#-এ ৬৪-বিট সাইনড ইন্টিজারকে ডবল-প্রিসিশন ফ্লোটিং পয়েন্টে পুনর্ব্যাখ্যা

C#-এ BitConverter.Int64BitsToDouble(long value) মেথড একটি ৬৪-বিট সাইনড ইন্টিজারের বাইট প্যাটার্নকে একই বাইট প্যাটার্ন বিশিষ্ট ডবল-প্রিসিশন ফ্লোটিং পয়েন্ট নম্বর (double)-এ পুনর্ব্যাখ্যা করে। এটি মান রূপান্তর করে না, বরং বাইট রিপ্রেজেন্টেশন পুনর্ব্যাখ্যা করে।

উদাহরণ ১: বড় ইন্টিজার মান পুনর্ব্যাখ্যা

using System;

public class Demo {
    public static void Main() {
        long d = 9846587687;
        Console.Write("মান (৬৪-বিট সাইনড ইন্টিজার) = " + d);

        double res = BitConverter.Int64BitsToDouble(d);
        Console.Write("\nমান (ডবল-প্রিসিশন ফ্লোটিং পয়েন্ট) = " + res);
    }
}

আউটপুট

মান (৬৪-বিট সাইনড ইন্টিজার) = 9846587687
মান (ডবল-প্রিসিশন ফ্লোটিং পয়েন্ট) = 4.86486070491012E-314

উদাহরণ ২: ছোট ইন্টিজার মান পুনর্ব্যাখ্যা

using System;

public class Demo {
    public static void Main() {
        long d = 20;
        Console.Write("মান (৬৪-বিট সাইনড ইন্টিজার) = " + d);

        double res = BitConverter.Int64BitsToDouble(d);
        Console.Write("\nমান (ডবল-প্রিসিশন ফ্লোটিং পয়েন্ট) = " + res);
    }
}

আউটপুট

মান (৬৪-বিট সাইনড ইন্টিজার) = 20
মান (ডবল-প্রিসিশন ফ্লোটিং পয়েন্ট) = 9.88131291682493E-323

ব্যাখ্যা: এই মেথডটি বাইট-লেভেল পুনর্ব্যাখ্যা করে, গাণিতিক রূপান্তর করে না। একই ৬৪ বিটকে IEEE 754 ডবল ফরম্যাট হিসেবে বিবেচনা করা হয়। এটি নিম্ন-স্তরের ডেটা ম্যানিপুলেশন, সিরিয়ালাইজেশন বা ইন্টারঅপারেবিলিটির জন্য ব্যবহৃত হয়।

  1. C-তে ইন্টিজারকে রোমান নম্বরে কনভার্ট করা

  2. C-এ ফ্লোটিং পয়েন্ট সংখ্যার সেট বিট গণনা করা

  3. Redis INCRBYFLOAT: ফ্লোটিং-পয়েন্ট ভ্যালু ইনক্রিমেন্ট করার ধাপে ধাপে গাইড

  4. রেডিস HINCRBYFLOAT: হ্যাশে ফ্লোটিং-পয়েন্ট মান ইনক্রিমেন্ট করার ধাপে ধাপে গাইড