Menu

Sayı Tabanı Dönüştürücü

Sayıları ikili, sekizli, onluk ve on altılık arasında dönüştür.

Son güncelleme

Bit6
  • İkilitaban 2
  • Sekizlitaban 8
  • Onluktaban 10
  • On altılıktaban 16

Sayı tabanı dönüştürücü nedir?

Sayı tabanı dönüştürücü; ikili, sekizli, onluk veya onaltılık (hex) bir sistemde yazılmış bir sayıyı alıp diğerlerinden herhangi birinde tekrar yazar. Geliştiriciler bu araca bit maskelerini okurken, renk kodlarını ayıklarken, protokol paketlerindeki bayrakları çözerken, donanım kayıtlarıyla uğraşırken; CSS'ten assembly'ye, kriptografiden network'e kadar her yerde hex ve onluk arasında çeviri yaparken başvurur.

Tabanlar arasında değişen sayının kendisi değil, *gösterimi*. Onluk 255, hex'te 0xFF, ikilide 0b11111111, sekizlide 0o377. Dördü de aynı değerin farklı yazılış biçimleri.

İyi bir araç, büyük sayıları hassasiyet kaybetmeden işlemeli. JavaScript'in alışılmış parseInt fonksiyonu 2⁵³'ten büyük her şeyi sessizce yuvarlar; bu da 64-bit register değerlerinde, ID'lerde ve zaman damgalarında fark edilmesi zor hatalara yol açar. Sağlam bir dönüştürücü arka planda BigInt kullanır, böylece 256-bit'lik bir hex değeri bile gidip gelmesinde tek bit kaybetmez.

Taban dönüşümü yaparken öğreneceğiniz şeyler

  • İkili sistem 2 rakam (0, 1), sekizli 8, onluk 10, onaltılık ise 16 rakam kullanır (0–9, a–f).
  • Her ikili rakam bir *bit*'tir. 4 bit = 1 hex basamağı. 8 bit = 1 byte = 2 hex basamağı.
  • Hex aslında ikilinin daha kompakt bir okunuşudur. 0xCAFE, ikilide 1100 1010 1111 1110 — göze çok daha kolay gelir.

Tabanlar arası dönüşüm adım adım

  1. Giriş tabanını seçin

    Elinizdeki sayıya göre ikili, sekizli, onluk veya onaltılığı seçin.

  2. Değeri yazın

    Hex hem ff hem de 0xff formatını kabul eder. İkili için 1010 ya da 0b1010 yazabilirsiniz. Dönüştürücü ön eki otomatik olarak temizler.

  3. Tüm tabanları aynı anda görün

    Aynı sayının dört farklı gösterimi anında ekrana gelir. Herhangi birine tıklayarak kopyalayabilirsiniz.

  4. Okunabilirlik için basamak gruplamayı açın

    İkiliyi 4'er bit (1100 1010 1111 1110), hex'i 2'şer karakter (CA FE) halinde gruplayın. Bit alanlarını ve memory dump'larını incelerken çok işe yarar.

Sayı tabanı hızlı referansı

Dört tabanda da sık karşılaşılan referans değerler. Aşağıdaki sözdizimi için JavaScript'in BigInt ve sayısal literal grameri belgeleri yeterli.

OnlukİkiliSekizliHex
0000
1111
81000108
10101012A
16100002010
321000004020
64100000010040
100110010014464
1281000000020080
25511111111377FF
256100000000400100
1024100000000002000400
655351111111111111111177777FFFF

Deneyebileceğiniz taban dönüşüm örnekleri

RGB renk kodları

Hex
color: #ff8800;
Onluk
color: rgb(255, 136, 0);

Her iki hex basamağı, bir kanal için tek bir byte'a (0–255) karşılık gelir. ff = 255, 88 = 136, 00 = 0.

İzin bit maskesini okumak

Onluk

5

İkili

0b101

Bitleri okumak

Bit 0 (read) açık, bit 2 (execute) açık, bit 1 (write) kapalı. Yani izinler: read + execute.

Unix dosya modları (chmod), feature flag'ler ve protokol paketleri; birden fazla boolean değeri tek bir tam sayının bitleri içine paketler. İkili görünüm bunu gözle takip etmeyi mümkün kılar.

BigInt hassasiyetli dönüşüm

Hex (çok büyük)

0xFFFFFFFFFFFFFFFF

Onluk

18446744073709551615

Bu, işaretsiz 64-bit tam sayının alabileceği en büyük değer. Sıradan parseInt burada hassasiyet kaybeder; BigInt ise temiz bir şekilde işin altından kalkar.

Taban dönüşümünde sık yapılan hatalar

  • *Sayı*'yı *literal* ile karıştırmak. 0x10 ile 10 benzer görünür ama biri 16, diğeri 10'dur — kodda mutlaka taban ön ekini yazın.
  • Hex'i soldan sağa okuyup ham memory dump'ında byte sırasını (endianness) unutmak.
  • JavaScript'te 2⁵³'ten büyük değerlerde parseInt(big, 16) kullanmak. Bunun yerine BigInt('0x' + hex) kullanın.

Sayı Tabanı Dönüştürücü SSS

İkiliyi onluğa nasıl çeviririm?
Her ikili basamağı sağdan başlayarak 2'nin uygun kuvvetiyle çarpın. 1010 için: 1·8 + 0·4 + 1·2 + 0·1 = 10. Ya da değeri taban dönüştürücüye yapıştırıp anında sonucu görün.
Onluğu hex'e nasıl çeviririm?
Onluk sayıyı sürekli 16'ya bölüp kalanları (0–15, 10–15 için A–F) not edin. Kalanları aşağıdan yukarıya okuyun. 255 ÷ 16 = 15, kalan 15FF.
Onaltılık (hex) ne için kullanılır?
Hex; ikilinin kompakt ve okunaklı bir biçimde gerektiği her yerde kullanılır: renk kodları (#ff8800), bellek adresleri, dosya dump'ları, MAC adresleri, hash'ler ve düşük seviyeli sistemlerin büyük çoğunluğu.
Sekizli ve onaltılık arasındaki fark nedir?
Sekizli (octal) 8 tabanlıdır (rakamlar 0–7); onaltılık (hex) ise 16 tabanlıdır (rakamlar 0–9, A–F). Bugün sekizli pek yaygın değil; yine de Unix dosya izinlerinde (0755) ve bazı C ailesi sayı literal'lerinde karşımıza çıkıyor.
İkili sayılar neden bu kadar hızlı büyüyor?
Her yeni basamak temsil edilebilen değer sayısını ikiye katlar. 8 bit 256 değer, 16 bit 65.536, 32 bit ise 4 milyardan fazla değer ifade eder. Bit maskelerinin küçücük bir sayıya bu kadar çok anlam sığdırabilmesinin sebebi de bu.

Daha fazla bilgi

Diğer geliştirici araçları

Coddy ile kodlamayı öğren

BAŞLA