Zaman/Sayılar

IEEE 754 Float Dönüştürücü

Ondalık sayı ↔ IEEE 754 ikili gösterimi (tek veya çift duyarlık) — işaret, üs, mantis, özel değerler.


            

Computers store fractional numbers in binary under the IEEE 754 standard — a sign, an exponent, and a mantissa, packed into a fixed number of bits. This tool shows that representation for any decimal number and parses it back into a number.

How to use it

Common uses

Things to keep in mind

Most decimal fractions (0.1, for example) have no exact binary representation — that's the root cause of the typical rounding errors seen in calculation results.

Comparing floating-point numbers for exact equality (===) is unreliable — check instead whether the difference is smaller than a small threshold (epsilon).

Bu araç hakkında makale: IEEE 754: kodda 0.1 + 0.2 neden 0.3'e eşit değil

Sıkça sorulan sorular

Tek ve çift duyarlılık arasındaki fark nedir?

Tek duyarlılık (float, 32 bit) yaklaşık 7 ondalık basamak duyarlılık verir, çift duyarlılık (double, 64 bit) yaklaşık 15-17 verir. JavaScript'in Number türü çift duyarlılık kullanır.

Bazı ondalık sayılar neden duyarlılığını kaybeder?

IEEE 754 sayıları ikilik olarak saklar ve birçok ondalık kesir (0.1 gibi) tam sonlu bir ikilik gösterime sahip değildir — bu yüzden mümkün olan en yakın değer, küçük bir yuvarlama hatasıyla saklanır.

NaN, Infinity ve -0 ne anlama gelir?

NaN, 0/0 gibi geçersiz bir işlemin sonucudur. Infinity/-Infinity, bir değer temsil edilebilir aralığı aştığında (örn. 0'a bölme) ortaya çıkar. +0 ve -0, işaretli sıfırın iki farklı bit gösterimidir, ancak sayı olarak eşittirler.

Subnormal (denormalize) sayılar nedir?

Normal biçim için mutlak değeri çok küçük olan sayılar için özel bir gösterim modu — mantisin örtük öndeki 1'i atılır, bu da bir miktar hassasiyet kaybı pahasına kademeli olarak sıfıra yaklaşılmasına izin verir.

Tam eşitlik kontrolü yerine kesirli sayılar nasıl doğru şekilde karşılaştırılır?

a === b yerine, sayılar arasındaki farkın küçük bir eşik değerinden (epsilon) küçük olup olmadığı kontrol edilir: Math.abs(a - b) < 1e-9. Yuvarlama hataları nedeniyle tam eşitlik neredeyse hiçbir zaman garanti edilmez.

Makaleler: Zaman/Sayılar

Unix zamanı: bilgisayarlar zamanı neden 1970'ten itibaren sayar

1 Ocak 1970'in çoğu bilgisayar sistemi için neden zaman referans noktası haline geldiği.

Cron ifadeleri: bir görev zamanlaması nasıl çözülür

*/15 * * * * gibi bir ifadenin nasıl çözüleceği ve görevin tam olarak ne zaman çalışacağının nasıl bilineceği.

Sayı sistemleri: ikili, sekizli ve on altılık sistemler neden var

CSS'te #FF5733 renginin neden ondalık yerine on altılık rakamlarla yazıldığı.

Bit düzeyi işlemler: AND, OR ve XOR bit seviyesinde nasıl çalışır

Bit düzeyi AND'in mantıksal AND'den nasıl farklı olduğu ve bir sayının tek tek bitleri üzerinde neden işlem yapılır.

Tarih farkı: gün saymanın neden göründüğünden daha karmaşık olduğu

Tarihleri saf bir şekilde çıkarmanın artık yıllar yüzünden neden yanlış sonuç verebileceği.

Yaş hesaplama: bunun neden basit bir yıl çıkarma işlemi olmadığı

Sadece doğum yıllarını çıkarmanın neden gerçek yaştan bir fazla bir yaş verebileceği.

Saat dilimleri: UTC'nin GMT ile aynı şey olmadığı

UTC'nin yılda iki kez neden hiç değişmediği, ama Londra saatinin (GMT/BST) değiştiği.

Süre hesaplayıcı: saat, dakika ve saniyeler doğru şekilde nasıl toplanır

Dakika ve saniyeleri toplarken ondalık toplamada olduğu gibi kalanın neden bir sonraki basamağa "taşınması" gerektiği.

ISO 8601 Duration: bir süre standart biçimde nasıl yazılır

PT1H30M'nin neden "1 saat 30 dakika" anlamına geldiği, "1 dakika 30 saat" değil.

Hafta numarası: farklı ülkelerin haftaları neden farklı saydığı

1 Ocak'ın ISO 8601 standardına göre neden bazen önceki yılın 52. veya 53. haftasına ait olduğu.

Roma rakamları: sıfırı ve basamak değeri olmayan bir sistem nasıl çalışır

IV'ün neden 6 değil 4 anlamına geldiği, ve çıkarma kuralının Roma rakamlarında nasıl çalıştığı.

Sayının yazıyla ifadesi: rakamları neden kelimelere dönüştürmeli

Banka belgelerinde tutarın neden aynı anda hem rakamla hem yazıyla yazıldığı.