IEEE 754 Tek Duyarlıklı Sayı Çözücü
IEEE 754 tek duyarlıklı değeri çözmek için 8 onaltılık basamak girin.
Sonuç
Nasıl hesaplanır?
Tam olarak 8 onaltılık basamak girin; başında 0x olabilir ya da olmayabilir, harf büyüklüğü fark etmez. Araç bunları 32 bit olarak okur ve işaret (1 bit), üs (8 bit, 0-255) ve mantis (23 bit) alanlarına ayırır. Normal bir sayıda değer = (−1)işaret × (1 + mantis ÷ 223) × 2üs − 127 olur. Üs 0 ise sayı alt normaldir ve baştaki 1 olmadan mantis ÷ 223 × 2−126 kullanılır; 0 ve −0 da buna dahildir. Üs 255 ise mantis sıfırsa (işaretle birlikte) sonsuz, değilse NaN anlamına gelir. Değerler en çok 9 ondalık ya da 9 anlamlı basamakla yazılır; çok küçük ya da çok büyük değerlerde üslü gösterime geçilir (örneğin 1,40129846 × 10⁻⁴⁵). Düz ondalık sonuçlarda ayırıcı Türkçe sayfada da noktadır; üslü gösterimde ise ondalık virgül kullanılır. Üç alan ayrıca işaret, üs ve mantis sayıları olarak listelenir. Tam olarak 8 onaltılık basamak olmayan girişte sonuç çıkmaz.
Örnek hesaplama
0x40490FDB değerini çözelim. İkilik olarak 0 10000000 10010010000111111011011'dir. İşaret = 0, yani pozitif. Üs = 128, dolayısıyla ikinin kuvveti 128 − 127 = 1. Mantis = 4.788.187, yani 1 + 4.788.187 ÷ 8.388.608 = 1,570796371. 21 ile çarpınca 3,141592741 bulunur. Araç 3.141592741 yazar (ondalık ayırıcı nokta). Bu, π'ye en yakın 32-bit kayan noktalı sayıdır; 3,14159'dan sonraki fazladan basamaklar tek duyarlığın kaçınılmaz yuvarlamasını gösterir.
Sık yapılan hatalar
- 8'den az ya da çok onaltılık basamak girmek. 32-bit değer tam 8 basamaktır; daha kısa sayıya baştan sıfır eklenir (
1değil00000001); 10 basamaklı bir giriş sonuç vermez. - Buraya 64-bit double (16 onaltılık basamak) girmek. Bu çözücü yalnızca tek duyarlığı işler.
- Bayt sırasını unutmak. Bellek dökümü baytları little-endian sırayla gösteriyorsa yazmadan önce ters çevirin: DB 0F 49 40 baytları
40490FDBolur. - Programınızda yazdığınız sayının aynen çıkmasını beklemek. 0,1 gibi bir float en yakın gösterilebilir değere kaydedilir;
3DCCCCCDbu yüzden 0.100000001 olarak çözülür. - NaN ya da sonsuz sonucunu aracın hatası sanmak.
7F800000geçerli bir sonsuz,7FC00000geçerli bir NaN desenidir; ikisi de 255 üs değerinden gelir.
Bu hesaplama hakkında
IEEE 754 tek duyarlıklı format, neredeyse tüm programlama dillerinde float türü için kullanılan 32-bitlik ikili gösterimdir. Bitler üç alana ayrılır: 1 işaret biti, 127 sapmalı (bias) 8 bitlik üs ve örtük bir baş 1'den sonraki anlamlı basamakları temsil eden 23 bitlik mantis (kesir). Sonuç değer (−1)^işaret × 1.mantis × 2^(üs−127) formülüyle hesaplanır.
Bu çözücü, bir float'ın ham bit dizisini temsil eden 8 onaltılık basamağı alır ve bunları tekrar bu üç alana ayırıp ondalık değeri yeniden oluşturur. Yazılım mühendisleri ve bilgisayar bilimi öğrencileri için serileştirme hatalarını ayıklarken, bellek dökümlerini incelerken veya kayan noktalı sayıların neden bu şekilde yuvarlandığını öğrenirken başvurulan günlük bir araçtır; bir değerin donanımda tam olarak nasıl temsil edildiğini görmesi gereken gömülü sistem ve düşük seviye programcılar için de aynı derecede faydalıdır.
Bu faydalı oldu mu?
En fazla 3 tepki seçebilirsiniz.
Popüler hesaplayıcılar
Kredi Hesaplama
Aylık taksit, toplam faiz ve ödeme planını hesaplayın.
Yüzde Hesaplama
Yüzde değişim, indirim ve oran hesaplamaları.
İndirim Hesaplama
İndirimli fiyatı, kazancı ve indirim tutarını hesaplayın.
Vücut Kitle Endeksi (VKİ)
Boy ve kiloya göre vücut kitle endeksini hesaplayın.
Yaş Hesaplama
Doğum tarihinden bugüne tam yıl, ay ve gün cinsinden yaşınızı hesaplayın.
Bileşik Faiz Hesaplama
Ana para, faiz oranı ve süreye göre bileşik faizle nihai tutarı hesaplayın.
Tüm Hesaplayıcılar
- Kredi Hesaplama
- Kar Hesaplama
- İndirim Hesaplama
- Vücut Kitle Endeksi (VKİ)
- Yüzde Hesaplama
- İdeal Kilo Hesaplama
- Yaş Hesaplama
- Gebelik Hesaplama
- Bileşik Faiz Hesaplama
- Bazal Metabolizma (BMR) Hesaplama
- Bahşiş Hesaplama
- Yakıt Maliyeti Hesaplama
- Tarih Farkı Hesaplama
- Uyku Döngüsü Hesaplama
- Günlük Su İhtiyacı Hesaplama
- Basit Faiz Hesaplama
- Kalp Atış Hızı Bölgeleri Hesaplama
- Koşu Temposu Hesaplama
- Evcil Hayvan Yaşı Hesaplama
- Kalori Yakım Hesaplama
- Makro Besin Dağılımı Hesaplama
- TDEE (Toplam Günlük Enerji İhtiyacı) Hesaplama
- Bel-Kalça Oranı Hesaplama
- Takdir ve Teşekkür Belgesi Hesaplama
- Tek Tekrar Maksimum (1RM) Hesaplama
- Yumurtlama (Ovülasyon) Hesaplama
- Elektrik Maliyeti Hesaplama
- Birim Fiyat Hesaplama
- Tasarruf Hedefi Hesaplama
- Başabaş Noktası Hesaplama
- Boya Hesaplama
- Vize-Final Ortalama Hesaplama
- İş Günü Hesaplama
- Saat Farkı (Süre) Hesaplama
- Yakıt Tüketimi Hesaplama
- Sıcaklık Birimi Çevirici
- Fayans (Seramik) Hesaplama
- En-Boy Oranı Hesaplama
- Roma Rakamı Çevirici
- Hedef Kilo Süresi Hesaplama
- Maaş Çevirici (Saatlik-Yıllık)
- Kredi Kartı Doğrulama (Luhn)
- Vücut Yüzey Alanı (BSA) Hesaplama
- Hissedilen Sıcaklık Hesaplama
- Ohm Kanunu Hesaplama
- PPI (Piksel Yoğunluğu) Hesaplama
- Molar Kütle Hesaplama
- Burç Hesaplama (Batı + Çin)
- IBAN Doğrulama
- Ayakkabı Numarası Dönüştürücü
- Ülke Bilgisi (Telefon Kodu) Sorgulama
- Saat Dilimi Farkı (Dünya Saati)
- CAGR (Bileşik Yıllık Büyüme) Hesaplama
- 72 Kuralı Hesaplama
- Kandaki Alkol (Promil) Hesaplama
- Yağsız Vücut Kütlesi (LBM) Hesaplama
- Pisagor Teoremi Hesaplama
- Hız Birimi Dönüştürücü
- İndirme Süresi Hesaplama
- Tarih Hesaplama (Gün Ekle/Çıkar)
Hesaplayıcı bulunamadı
Yorumlar (1)
Bellek dökümünde bir değerin makul olup olmadığını anlamak için çözücü işe yarar. BF800000 düzgün bir değer olan -1 çıkar, 00000001 ise en küçük pozitif kayan noktalı sayı olan 1,40129846 × 10⁻⁴⁵ olarak çözülür. Ölçüm bekleyip böyle bir değer görüyorsanız, baytlar büyük olasılıkla kayan noktalı sayı değil, bir tamsayı ya da bayraktır. Beklemediğiniz bir değere çözülen bir örnekle karşılaştınız mı? Onaltılık değeri ve beklediğinizi yazın.