Ubah angka desimal menjadi format IEEE 754 biner

Pengarang: John Pratt
Tanggal Pembuatan: 15 Februari 2021
Tanggal Pembaruan: 1 Juli 2024
Anonim
HOW TO: Convert IEEE-754 Single-Precision Binary to Decimal
Video: HOW TO: Convert IEEE-754 Single-Precision Binary to Decimal

Isi

Tidak seperti manusia, komputer tidak menggunakan sistem bilangan desimal. Mereka menggunakan sistem bilangan biner atau biner dengan dua kemungkinan digit, 0 dan 1. Jadi bilangan ditulis dengan sangat berbeda di IEEE 754 (standar IEEE untuk merepresentasikan bilangan biner dengan titik mengambang) daripada dalam sistem desimal tradisional yang kita gunakan. digunakan untuk. Pada artikel ini Anda akan belajar bagaimana menulis angka dengan presisi tunggal atau ganda sesuai dengan IEEE 754. Untuk metode ini Anda perlu mengetahui bagaimana mengubah angka menjadi bentuk biner. Jika Anda tidak tahu bagaimana melakukan ini, Anda dapat mempelajarinya dengan mempelajari artikel Mengonversi Biner ke Desimal.

Melangkah

  1. Pilih presisi tunggal atau ganda. Saat menulis angka dengan presisi tunggal atau ganda, langkah-langkah menuju konversi yang berhasil akan sama untuk keduanya. Satu-satunya perubahan terjadi dalam mengubah eksponen dan mantissa.
    • Pertama kita perlu memahami apa arti presisi tunggal. Dalam representasi floating point, sembarang angka (0 atau 1) dianggap sebagai "bit". Oleh karena itu, presisi tunggal memiliki total 32 bit yang dibagi menjadi tiga subjek berbeda. Mata pelajaran ini terdiri dari tanda (1 bit), eksponen (8 bit) dan mantissa atau pecahan (23 bit).
    • Presisi ganda, di sisi lain, memiliki pengaturan yang sama dan tiga bagian yang sama sebagai presisi tunggal - satu-satunya perbedaan adalah bilangan itu akan menjadi lebih besar dan lebih akurat. Dalam hal ini tanda akan memiliki 1 bit, eksponen 11 bit dan mantissa 52 bit.
    • Dalam contoh ini kita akan mengubah angka 85.125 menjadi presisi tunggal menurut IEEE 754.
  2. Pisahkan angka sebelum dan sesudah koma desimal. Ambil angka yang ingin Anda ubah dan pisahkan sehingga Anda mendapatkan angka bulat dan angka desimal. Dalam contoh ini, kami mengasumsikan angka 85.125. Anda dapat memisahkan ini menjadi bilangan bulat 85 dan desimal 0,125.
  3. Ubah bilangan bulat menjadi bilangan biner. Ini menjadi 85 dari 85,125, yang akan menjadi 1010101 jika dikonversi ke biner.
  4. Ubah bagian desimal menjadi bilangan biner. Ini adalah 0,125 dari 85,125, yang menjadi 0,001 dalam format biner.
  5. Gabungkan dua bagian dari bilangan yang telah diubah menjadi bilangan biner. Angka 85 adalah biner misalnya 1010101 dan bagian desimal 0,125 adalah biner 0,001. Jika Anda menggabungkannya dengan koma desimal, Anda mendapatkan 1010101,001 sebagai jawaban akhirnya.
  6. Ubah bilangan biner menjadi notasi ilmiah biner. Anda dapat mengonversi bilangan tersebut menjadi notasi ilmiah biner dengan memindahkan koma desimal ke kiri hingga ke kanan bit pertama. Angka-angka ini dinormalisasi, yang berarti bit terdepan akan selalu 1. Sedangkan untuk eksponen, berapa kali Anda memindahkan desimal adalah eksponen dalam notasi ilmiah biner.
    • Ingat, memindahkan desimal ke kiri menghasilkan eksponen positif, sedangkan memindahkan desimal ke kanan menghasilkan eksponen negatif.
    • Dalam contoh kami, Anda harus memindahkan desimal enam kali untuk membawanya ke kanan bit pertama. Format yang dihasilkan kemudian menjadi 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Tentukan tanda bilangan tersebut dan tampilkan dalam format biner. Sekarang Anda akan menentukan apakah bilangan aslinya positif atau negatif. Jika angkanya positif, tulis bit tersebut sebagai 0, dan jika negatif, sebagai 1. Karena bilangan aslinya adalah 85,125 positif, tulis bit tersebut sebagai 0. Sekarang bit pertama dari total 32 bit dalam presisi tunggal Anda rendering menurut IEEE 754.
    • Tentukan eksponen berdasarkan presisi. Ada bias tetap untuk presisi tunggal dan ganda. Bias eksponen untuk presisi tunggal adalah 127, yang berarti kita harus menambahkan eksponen biner yang ditemukan sebelumnya. Jadi eksponen yang akan Anda gunakan adalah 127 + 6 = 133.
      • Presisi ganda, seperti namanya, lebih akurat dan dapat menampung angka yang lebih besar. Oleh karena itu, bias eksponen 1023. Langkah yang sama yang digunakan untuk presisi tunggal diterapkan di sini, sehingga eksponen yang dapat Anda gunakan untuk menentukan presisi ganda adalah 1029.
    • Ubah eksponen menjadi biner. Setelah Anda menentukan eksponen akhir, Anda perlu mengubahnya menjadi biner sehingga dapat digunakan dalam konversi IEEE 754. Dalam contoh, Anda dapat mengubah 133 yang Anda temukan di langkah terakhir menjadi 10000101.
    • Tentukan mantissa. Aspek mantissa, atau bagian ketiga dari konversi IEEE 754, adalah sisa angka setelah desimal notasi biner ilmiah. Anda tinggal menghilangkan angka 1 di depan dan menyalin bagian desimal dari angka yang dikalikan dua. Tidak diperlukan konversi biner! Dalam contoh, mantissa menjadi 010101001 dari 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Terakhir, gabungkan tiga bagian menjadi satu nomor.
      • Terakhir, Anda menggabungkan semua yang telah kami hitung sejauh ini dalam konversi Anda. Angka pertama akan dimulai dengan 0 atau 1 yang Anda tentukan di langkah 7 berdasarkan tanda. Dalam contoh, Anda mulai dengan 0.
      • Kemudian Anda memiliki eksponen yang Anda tentukan di langkah 9. Dalam contoh ini, eksponennya adalah 10000101.
      • Kemudian datanglah mantissa, bagian ketiga dan terakhir dari pertobatan. Anda menyimpulkan ini sebelumnya saat Anda mengambil bagian desimal dari konversi biner. Dalam contoh tersebut, mantissa adalah 010101001.
      • Terakhir, Anda menggabungkan semua angka ini satu sama lain. Urutannya adalah tanda eksponen-mantissa. Setelah menghubungkan ketiga bilangan biner ini, isi sisa mantissa dengan nol.
      • Misalnya, mengonversi 85.125 ke format biner IEEE 754 adalah solusinya 0 10000101 01010100100000000000000.