İkili Sayı Sisteminden Ondalık Sayı Sistemine Dönüştürücü | Ücretsiz Çevrimiçi Araç
İkili ve ondalık sayıları anında dönüştürün. Geliştiriciler ve öğrenciler için adım adım açıklamalar, kod örnekleri ve pratik kullanım örnekleri içeren ücretsiz bir araç.
İkili-Onlu Dönüştürücü
İkili ve onlu sayı sistemleri arasında anında dönüşüm yapın.
İkili sayılar sadece 0 ve 1 kullanır
Onlu sayılar 0-9 arasındaki rakamları kullanır
Diğer alanda dönüşümü görmek için herhangi bir alana bir değer girin.
Belgeler
İkili Sayı Sisteminden Onlu Sayı Sistemine Dönüştürücü: Sayı Sistemleri Arasında Anında Dönüşüm
Bir dizi 1 ve 0'a bakıp gerçekte hangi sayıyı temsil ettiğini hiç merak ettiniz mi? Bilgisayarlarla herhangi bir düzeyde çalışıyorsanız—ağ sorunlarını ayıklarken, mikrodenetleyiciler programlarken veya bilgisayarların nasıl düşündüğünü merak ederken—sonunda ikili ve onlu sayı sistemleri arasında dönüşüm yapmanız gerekecektir.
Bu araç, her iki yönde de dönüşümü anında gerçekleştirir. Herhangi bir alana sayınızı yazın ve çevirinin nasıl gerçekleştiğini izleyin. Daha da önemlisi, kodunuzun altında neler olup bittiğini anlamaya çalışırken nasıl dönüşüm yapıldığını göreceksiniz.
İkili-onlu dönüşümü zorlaştıran şey şudur: beyinlerimiz taban-10 için programlanmıştır (sonuçta on parmağımız var), ancak bilgisayarlar münhasıran taban-2'de çalışır. Her veri parçası—metin, görüntüler, videolar, tarama geçmişiniz—sonuçta 0 ve 1 dizilerine indirgenir. Bu ilişkiyi anlamak salt akademik değil; IP adresleri, dosya izinleri, bit düzeyinde işlemler ve bellek adresleriyle çalışırken pratik bir bilgidir.
İyi haber mi? Kalıbı yakalayınca, dönüşümler basitleşir. Matematik basit—sadece çarpma ve toplama (veya tersine çevirme için bölme). İnsanları yanıltan şey, özellikle daha uzun sayılarda, konum değerlerini takip etmektir. İşte bu dönüştürücü tam olarak bunu çözer.
Nasıl İkili Sayı Sisteminden Onlu Sayı Sistemine ve Onlu Sayı Sisteminden İkili Sayı Sistemine Dönüştürülür
Onlu Sayı Sistemini (Taban-10) Anlamak
Onlu sayı sistemini zaten biliyorsunuz—ilkokulda öğrendiğiniz sistem. On rakam (0-9) kullanırız ve her konum 10'un bir kuvvetini temsil eder:
427 sayısını inceleyelim. Konumlarına göre ayırarak:
- 4 × 10² = 400 (yüzler basamağı)
- 2 × 10¹ = 20 (onlar basamağı)
- 7 × 10⁰ = 7 (birler basamağı)
Bu değerleri toplayarak: 400 + 20 + 7 = 427
Bu konumsal gösterimi doğal karşılıyoruz, ama aslında devrimci bir buluştur. Konumsal sistemler öncesinde aritmetik inanılmaz derecede zahmetliydi (Roma rakamlarıyla çarpma işlemi yapmayı deneyin).
İkili Sayı Sistemini (Taban-2) Anlamak
İkili sayı sistemi, onlu sayı sistemiyle aynı şekilde çalışır, sadece 10'un kuvvetleri yerine 2'nin kuvvetlerini kullanır. Sadece iki rakam vardır—0 ve 1:
1010 ikili sayısını inceleyelim. Sağdan sola her konum 1, 2, 4, 8, 16 vb. değerlerini temsil eder:
- 1 × 2³ = 8
- 0 × 2² = 0
- 1 × 2¹ = 2
- 0 × 2⁰ = 0
Bu değerleri toplayarak: 8 + 0 + 2 + 0 = 10 onlu sistemde
Desen onlu sistemle aynıdır, sadece taban farklıdır. Bunu içselleştirdiğinizde, ikili sayı sistemi normal sayıları okumak kadar doğal gelecektir.
İkili (Binary) - Onlu (Decimal) Dönüşüm Formülleri ve Yöntemleri
İkili'den Onlu'ya: Arkasındaki Matematiksel Yaklaşım
İkili'den onlu sayı sistemine dönüşüm basit bir deseni izler: her basamağı konumunun 2 kuvvetiyle çarpın ve sonra hepsini toplayın. Formül şöyle görünür:
Nerede:
- her ikili basamaktır (0 veya 1)
- sağdan sola doğru konumu sayar (0'dan başlayarak)
- toplam basamak sayısı eksi 1'dir
Karmaşık mı görünüyor? Pratikte oldukça basittir. Her konum sağdan sola doğru 1, 2, 4, 8, 16, 32 ve benzeri şekilde her seferinde ikiye katlanır.
Örnek: İkili 1101 sayısını onlu sayıya çevirme
- 1 × 2³ = 8
- 1 × 2² = 4
- 0 × 2¹ = 0
- 1 × 2⁰ = 1
- Toplam: 8 + 4 + 0 + 1 = 13 onlu
Sadece 1 olan konumları topladığımıza dikkat edin. 0'lar hiçbir şeye katkıda bulunmaz, dolayısıyla zihinsel olarak atlayabilirsiniz. 1101 0, 2 ve 3 konumlarına karşılık gelir (1 + 4 + 8 = 13).
Onlu'dan İkili'ye: Bölme Yöntemi
Diğer yönde - onlu'dan ikili'ye - farklı bir yaklaşım kullanılır. Sürekli 2'ye bölersiniz ve kalanları toplayın:
- Onlu sayınızı 2'ye bölün
- Kalanı yazın (her zaman 0 veya 1)
- Bölümü tekrar 2'ye bölün
- Bölüm 0'a ulaşana kadar devam edin
- Tüm kalanları geriye doğru okuyun (alttan üste)
Örnek: Onlu 25 sayısını ikili'ye çevirme
- 25 ÷ 2 = 12 kalan 1
- 12 ÷ 2 = 6 kalan 0
- 6 ÷ 2 = 3 kalan 0
- 3 ÷ 2 = 1 kalan 1
- 1 ÷ 2 = 0 kalan 1
- Alttan üste okuma: 11001 ikili
Kilit nokta, sırayı tersine çevirmeyi hatırlamaktır. Hesapladığınız ilk kalan, ikili sonucunun son (sağdaki) basamağı olur. Bu başlangıçta insanları yanıltabilir, ama en az önemli biti ilk olarak soyduğunuzu fark ettiğinizde mantıklı gelir.
Bu Dönüştürücüyü Nasıl Kullanılır
Araç çift yönlü çalışır—herhangi bir alana yazın ve diğer alanın anında güncellenmesini izleyin. Tıklanacak düğme veya gönderilecek form yok.
İkili (Binary) Sayıyı Ondalık (Decimal) Sayıya Dönüştürme
İkili sayınızı (sadece 0 ve 1'lerden oluşan) İkili alana yazın. Ondalık karşılığı hemen görünür. Yanlışlıkla 2 veya başka geçersiz bir rakam eklerseniz, bir hata mesajı alırsınız.
Pro ipucu: İkili değerleri doğrudan koddan, veri sayfalarından veya ağ çözümleyicilerden yapıştırabilirsiniz. Araç boşlukları ve 0b gibi yaygın ön ekleri otomatik olarak çıkarır.
Ondalık Sayıyı İkili Sayıya Dönüştürme
Ondalık alana herhangi bir sıfır veya pozitif tamsayı girin ve ikili gösterimi anında görünür. 0'dan 9 katrilyon üzerine kadar her şey için çalışır.
Yaygın kullanım senaryosu: Kodda bit bayrakları ayarlarken ve hangi bitlerin ayarlandığını doğrulamak istediğinizde. 255 yazın ve 11111111 görürsünüz—bir bayttaki tüm 8 bit açık.
Dönüşümün Detayını Anlama
Giriş alanlarının altında, her dönüşümün adım adım matematiğini görürsünüz. Bu, öğrenirken veya dönüşümü başkasına açıklamanız gerektiğinde özellikle yararlıdır. İkili sayıdan ondalık sayıya için, her konumun değerini ve nasıl toplandığını gösterir. Ondalık sayıdan ikili sayıya için, 2'ye bölme işlemini gösterir.
[SVG içeriği aynı kalacaktır, çeviriye gerek yoktur]
İkili Dönüştürücü Uygulamaları: Gerçek Dünya Kullanım Örnekleri
Pratikte, ikili-ondalık dönüşüm tahmin ettiğinizden daha sık karşınıza çıkar. İşte bu dönüşümlerin gerçekten yararlı olduğu senaryolar:
Bilgisayar Bilimi ve Programlama
Bellek sorunlarını ayıklarken, genellikle onaltılık sayı sisteminde (ki bu aslında gruplandırılmış ikili sayıdır) adresler görürsünüz. Ondalık sayıya dönüştürmek, ofsetleri hesaplamanıza veya doğru konumu erişip erişmediğinizi doğrulamanıza yardımcı olur. Benzer şekilde, bit düzeyindeki işlemler, ikili gösterimi görselleştirebildiğinizde çok daha anlamlı hale gelir—x & (x-1) ifadesini bitleri görmeden anlamaya çalışın.
Sık yapılan bir hata: bit kaydırma işlemlerinin aslında 2'nin kuvvetleriyle çarpma veya bölme olduğunu unutmak. Kodda x << 3 görüldüğünde, bunu "8 ile çarpma" (2³) olarak tanımak, performans optimizasyonlarını anlamanıza yardımcı olur.
Dijital Elektronik
Mikrodenetleyici veri sayfaları, kayıt yapılandırmalarını hem onaltılık hem de ikili olarak belirtir. GPIO pinlerini ayarlarken veya zamanlayıcıları yapılandırırken, diğerlerini etkilemeden belirli bitleri çevirmeniz gerekir. Bu, hangi bit konumunun hangi ondalık değere karşılık geldiğini tam olarak anlamayı gerektirir. Örneğin, 5. biti ayarlamak, kayıt değerinize 32 (2⁵) eklemeniz anlamına gelir.
Ağ Mühendisliği
IPv4 adresleri aslında dört oktete bölünmüş 32 bitlik ikili sayılardır. 192.168.1.1 görüp alt ağ maskelerini anlamanız gerektiğinde, ikili ile çalışıyorsunuz demektir. 192.168.1.50 ve 192.168.1.200 adreslerinin aynı /25 ağında olup olmadığını ikili dönüşüm yapmadan hesaplamaya çalışın—neredeyse imkansızdır. RFC 791'e göre, IP adresleri temel olarak ikili değerler olarak çalışır, her ne kadar kolaylık için ondalık olarak yazılsalar da.
Dosya İzinleri (Unix/Linux)
755 veya 644 gibi üç haneli izin kodları? Her bir hane aslında sekizlik (taban-8) sayı sistemindedir ve temiz bir şekilde 3 bitlik ikili gruplara dönüştürülür. İzinleri 755 olarak ayarladığınızda, aslında 111 101 101 ikili olarak—sahip için tam izinler, grup için okuma+çalıştırma, diğerleri için okuma+çalıştırma. Bu ikili temeli anlamak, chmod işlemlerini ezberlenmesi gereken şeyler yerine sezgisel hale getirir.
Örnek: IP Adreslerini Dönüştürme
Bir IPv4 adresi olan 192.168.1.1, ikili olarak şu şekilde temsil edilebilir:
- 192 = 11000000
- 168 = 10101000
- 1 = 00000001
- 1 = 00000001
Birleştirilmiş: 11000000.10101000.00000001.00000001
Karşılaşacağınız Diğer Sayı Sistemleri
İkili ve ondalık bilişimde tek oyuncular değil. İşte karşılaşacağınız diğer sayı sistemleri:
Onaltılık (Taban-16)
Hex programlamada her yerde—bellek adresleri, renk kodları, assembly dili. 0-9 rakamları ve A-F harflerini kullanır. Hex'in güzelliği, her bir hanenin tam olarak 4 ikili bite karşılık gelmesidir, bu da onu ikiliyi yazmak için çok daha okunabilir bir yol haline getirir.
Örnek: İkili 1010 1101 = Hex AD (ondalık 173 olarak)
#FF5733 gibi bir renk kodunu gördüğünüzde, bu hex'tir—her çift, kırmızı, yeşil ve mavi değerlerini temsil eder. FF (ondalıkta 255) maksimum kırmızı yoğunluğu anlamına gelir.
Sekizlik (Taban-8)
Sekizlik 0-7 rakamlarını kullanır, her bir hane tam olarak 3 ikili bite karşılık gelir. Günümüzde daha az yaygın olsa da, Unix dosya izinlerinde (chmod 755) ve bazen eski sistemlerde hala görürsünüz. Erken bilişimde, 3'ün katları olan kelime boyutları nedeniyle popülerdi.
Örnek: İkili 101 011 = Sekizlik 53
İkili-Kodlu Ondalık (BCD)
BCD, her ondalık haneyi kendi 4 bitlik ikili koduyla temsil eder. Tüm sayıyı dönüştürmek yerine, her haneyi ayrı ayrı dönüştürürsünüz. Bu alan kaybına neden olur (16 olası 4 bitlik kombinasyondan sadece 10'unu kullanırsınız) ama donanımda ondalık aritmetiği basitleştirir. Hesap makinelerinde, dijital saatlerde ve ondalık kesinliğin önemli olduğu finansal sistemlerde bulabilirsiniz.
Örnek: Ondalık 42 BCD'de = 0100 0010 (4 ve 2 ayrı ayrı kodlanmış)
İkili ve Onlu Sayı Sistemlerinin Tarihi
Neden Onlu Sayma Sisteminde Sayıyoruz
Onlu sayma sistemi doğal geliyor çünkü on parmağımız var—gerçekten, nedeni bu. Eski uygarlıklar dünya çapında bağımsız olarak onlu tabanlı sistemler geliştirdiler. Mısırlılar yaklaşık 3000 BCE'de hiyeroglif onlu sayı sistemini kullandılar. Babilliler altmışlı ve onlu tabanı karıştırdılar (bu yüzden hala bir dakikada 60 saniye var). Ama asıl devrim, Hint matematikçileri tarafından 500 CE civarında sıfırı ve konumsal gösterimi icat ettiklerinde geldi—burada bir basamağın konumu onun değerini belirler. Bu yenilik Arap matematiği aracılığıyla 800 CE'de Avrupa'ya yayıldı ve bugün kullandığımız "Hint-Arap rakamlarını" verdi.
İkili Sistemin Şaşırtıcı Tarihi
İkili sistem bilgisayarlardan yüzyıllar önce var oldu. İ.Ö. yaklaşık 1000 yıllarında yazılan I Ching adlı eski bir Çin metni, ikili gösterime oldukça benzeyen kırık ve bütün çizgiler kullandı. Ama resmi ikili aritmetik 1679'da Gottfried Wilhelm Leibniz "İkili Aritmetiğin Açıklaması"nı yayınlayana kadar ortaya çıkmadı. Leibniz ikili sistemin zarafetine hayrandı—herhangi bir sayıyı sadece iki sembolle temsil edebilirsiniz.
Asıl sihir George Boole'un 1854'te Boolean cebiri geliştirmesiyle oldu, mantıksal işlemleri temsil etmek için ikili doğru/yanlış değerlerini kullanarak. Sonra kritik bağlantı geldi: 1937'de Claude Shannon'ın yüksek lisans tezi, Boolean cebirin elektrik devreleri kullanılarak uygulanabileceğini kanıtladı. Bu tek öngörü, inşa edilen her dijital bilgisayarın temelini attı.
Bilgisayar Devrimi
John Atanasoff ve Clifford Berry 1939'da ikili sistemi kullanan ilk elektronik dijital bilgisayarı tasarladılar. John von Neumann 1945'te hem verilerin hem de talimatların ikili kod olarak bellekte var olduğu depolama programlı mimariyi resmi hale getirdi—bugün hala kullandığımız model. 1953'te IBM ticari ikili bilgisayarlar satmaya başladı. 1963 ASCII standardı sonunda metin karakterlerini ikili olarak temsil etmek için birleşik bir yol sağladı.
Şaşırtıcı olan, bilişimdeki her gelişmenin—delgi kartlardan akıllı telefonlara kadar—hala temelde ikili sistemde çalışıyor olmasıdır. Sadece bu karmaşıklığı soyutlama katmanlarının arkasına gizlemede çok iyi hale geldik.
Geliştiriciler için İkili (Binary) - Ondalık (Decimal) Kod Örnekleri
Kendi kodunuzda bu dönüşümü uygulamak mı istiyorsunuz? İşte birkaç dilde temiz, üretime hazır uygulamalar. Her biri, kullanıcıların kaçınılmaz olarak geçersiz veri yapıştıracağını düşünerek girdi doğrulaması içerir.
Çoğu modern dilde bu dönüşüm için yerleşik fonksiyonlar vardır—JavaScript'te parseInt(str, 2), Python'da int(str, 2), Java'da Integer.parseInt(str, 2). Bu örnekler hem yerleşik fonksiyonların nasıl kullanılacağını hem de dönüşüm mantığının nasıl çalıştığını gösterir:
JavaScript
1// İkili (Binary) - Ondalık (Decimal) dönüşümü
2function binaryToDecimal(binary) {
3 if (!/^[01]+$/.test(binary)) {
4 return "Geçersiz ikili sayı";
5 }
6 return parseInt(binary, 2);
7}
8
9// Ondalık (Decimal) - İkili (Binary) dönüşümü
10function decimalToBinary(decimal) {
11 if (!/^\d+$/.test(decimal) || decimal < 0) {
12 return "Geçersiz ondalık sayı";
13 }
14 return Number(decimal).toString(2);
15}
16
17// Örnek kullanım
18console.log(binaryToDecimal("1010")); // Çıktı: 10
19console.log(decimalToBinary("42")); // Çıktı: 101010
20Python
1# İkili (Binary) - Ondalık (Decimal) dönüşümü
2def binary_to_decimal(binary):
3 try:
4 # Girdinin yalnızca 0 ve 1'lerden oluşup oluşmadığını kontrol et
5 if not all(bit in '01' for bit in binary):
6 return "Geçersiz ikili sayı"
7 return int(binary, 2)
8 except ValueError:
9 return "Geçersiz ikili sayı"
10
11# Ondalık (Decimal) - İkili (Binary) dönüşümü
12def decimal_to_binary(decimal):
13 try:
14 # Girdinin negatif olmayan bir tamsayı olup olmadığını kontrol et
15 decimal = int(decimal)
16 if decimal < 0:
17 return "Geçersiz ondalık sayı"
18 return bin(decimal)[2:] # '0b' önekini kaldır
19 except ValueError:
20 return "Geçersiz ondalık sayı"
21
22# Örnek kullanım
23print(binary_to_decimal("1010")) # Çıktı: 10
24print(decimal_to_binary("42")) # Çıktı: 101010
25Java
1public class BinaryDecimalConverter {
2 // İkili (Binary) - Ondalık (Decimal) dönüşümü
3 public static int binaryToDecimal(String binary) {
4 if (!binary.matches("[01]+")) {
5 throw new IllegalArgumentException("Geçersiz ikili sayı");
6 }
7 return Integer.parseInt(binary, 2);
8 }
9
10 // Ondalık (Decimal) - İkili (Binary) dönüşümü
11 public static String decimalToBinary(int decimal) {
12 if (decimal < 0) {
13 throw new IllegalArgumentException("Negatif sayılar desteklenmiyor");
14 }
15 return Integer.toBinaryString(decimal);
16 }
17
18 public static void main(String[] args) {
19 System.out.println(binaryToDecimal("1010")); // Çıktı: 10
20 System.out.println(decimalToBinary(42)); // Çıktı: 101010
21 }
22}
23C++
1#include <iostream>
2#include <string>
3#include <cmath>
4#include <regex>
5
6// İkili (Binary) - Ondalık (Decimal) dönüşümü
7int binaryToDecimal(const std::string& binary) {
8 // Girdinin yalnızca 0 ve 1'lerden oluşup oluşmadığını kontrol et
9 if (!std::regex_match(binary, std::regex("[01]+"))) {
10 throw std::invalid_argument("Geçersiz ikili sayı");
11 }
12
13 int decimal = 0;
14 for (int i = 0; i < binary.length(); i++) {
15 if (binary[binary.length() - 1 - i] == '1') {
16 decimal += std::pow(2, i);
17 }
18 }
19 return decimal;
20}
21
22// Ondalık (Decimal) - İkili (Binary) dönüşümü
23std::string decimalToBinary(int decimal) {
24 if (decimal < 0) {
25 throw std::invalid_argument("Negatif sayılar desteklenmiyor");
26 }
27
28 if (decimal == 0) {
29 return "0";
30 }
31
32 std::string binary = "";
33 while (decimal > 0) {
34 binary = (decimal % 2 == 0 ? "0" : "1") + binary;
35 decimal /= 2;
36 }
37 return binary;
38}
39
40int main() {
41 std::cout << binaryToDecimal("1010") << std::endl; // Çıktı: 10
42 std::cout << decimalToBinary(42) << std::endl; // Çıktı: 101010
43 return 0;
44}
45Excel
1' İkili (Binary) - Ondalık (Decimal) dönüşümü
2Function BinaryToDecimal(binary As String) As Variant
3 ' Girdinin yalnızca 0 ve 1'lerden oluşup oluşmadığını kontrol et
4 Dim i As Integer
5 For i = 1 To Len(binary)
6 If Mid(binary, i, 1) <> "0" And Mid(binary, i, 1) <> "1" Then
7 BinaryToDecimal = CVErr(xlErrValue)
8 Exit Function
9 End If
10 Next i
11
12 BinaryToDecimal = Application.WorksheetFunction.Bin2Dec(binary)
13End Function
14
15' Ondalık (Decimal) - İkili (Binary) dönüşümü
16Function DecimalToBinary(decimal As Long) As String
17 If decimal < 0 Then
18 DecimalToBinary = CVErr(xlErrValue)
19 Exit Function
20 End If
21
22 DecimalToBinary = Application.WorksheetFunction.Dec2Bin(decimal)
23End Function
24
25' Örnek kullanım bir hücrede:
26' =BinaryToDecimal("1010") ' Çıktı: 10
27' =DecimalToBinary(42) ' Çıktı: 101010
28İkili Sayıdan Onlu Sayıya Dönüşüm Hakkında Sık Sorulan Sorular
İkili sayı nedir?
İkili sayı, değerleri temsil etmek için yalnızca iki basamak—0 ve 1—kullanan bir sayı sistemidir. Her basamağa bit (ikili basamak) denir. Bunu bir ışık anahtarı gibi düşünün: ya kapalıdır (0) ya da açıktır (1). Bu sınırlı görünse de, yeterli bitleri bir araya getirerek herhangi bir sayıyı temsil edebilirsiniz, tıpkı yalnızca 26 harfle herhangi bir kelimeyi yazabildiğiniz gibi.
Bilgisayarlar neden onlu sayı yerine ikili sayıyı kullanır?
İşte pratik neden: on farklı voltaj seviyesini (onlu sayı için) güvenilir bir şekilde ayırt eden elektronik bileşenler inşa etmek pahalı ve hata yapmaya meyillidir. İki durum—yüksek voltaj vs. düşük voltaj, manyetize edilmiş vs. manyetize edilmemiş—çok daha güvenilir ve üretimi daha ucuzdur. Claude Shannon, 1937 yılındaki yüksek lisans tezinde, Boolean mantığının (ikili değerler kullanan) herhangi bir mantıksal işlemi temsil edebileceğini kanıtladı ve modern dijital devrelerin temelini attı. Boolean cebir temelleri hakkında daha fazla bilgiyi Stanford Felsefe Ansiklopedisi'nin Boolean cebir girişinde okuyabilirsiniz.
İkili sayıyı elle onlu sayıya nasıl dönüştürürüm?
İkili sayıyı elle onlu sayıya dönüştürmek için:
- İkili sayıyı yazın
- Her konuma ağırlıklar atayın (sağdan sola: 1, 2, 4, 8, 16, vb.)
- Her ikili basamağı kendi ağırlığıyla çarpın
- Tüm sonuçları toplayın
Örneğin, ikili 1101: 1×8 + 1×4 + 0×2 + 1×1 = 8 + 4 + 0 + 1 = 13
Onlu sayıyı elle ikili sayıya nasıl dönüştürürüm?
Onlu sayıyı elle ikili sayıya dönüştürmek için:
- Onlu sayıyı 2'ye bölün
- Kalanı (0 veya 1) yazın
- Bölümü 2'ye bölün
- Bölüm 0 olana kadar tekrarlayın
- Kalanları alttan yukarı okuyun
Örneğin, onlu 13: 13 ÷ 2 = 6 kalan 1 6 ÷ 2 = 3 kalan 0 3 ÷ 2 = 1 kalan 1 1 ÷ 2 = 0 kalan 1 Alttan yukarı okuyarak: 1101
Bu dönüştürücü negatif sayıları işleyebilir mi?
Şu anda hayır—bu araç yalnızca pozitif tam sayıları kapsar, bu da pratik dönüşüm ihtiyaçlarının büyük çoğunluğunu karşılar. Negatif ikili sayılar ek karmaşıklık gerektirir: bilgisayarlar tipik olarak "iki'nin tümleyenini" kullanır, burada tüm bitleri çevirip 1 eklersiniz. Bu ilginç (ve düşük seviye programlama için önemli) olsa da, ayrı bir açıklamayı hak eden ayrı bir konudur.
Programlamada işaretli tam sayılarla çalışıyorsanız, çoğu dil iki'nin tümleyen matematiğini otomatik olarak halleder. Düşük seviye hata ayıklama veya gömülü sistemlerle çalışmadığınız sürece, negatif onlu sayıları elle ikili sayıya dönüştürmenize nadiren ihtiyaç duyulur.
Bu araçla dönüştürebileceğim en büyük sayı nedir?
Araç, JavaScript'in güvenli tam sayı sınırına kadar olan sayıları işler: 2⁵³ - 1, ki bu onlu sayıda 9.007.199.254.740.991 veya ikili olarak 53 bittir. Bu, 9 katrilyon üzerinde—herhangi bir pratik uygulama için yeterince fazla.
Perspektif için, 32 bitlik bir tam sayı yaklaşık 2,1 milyarda (işaretli için 2³¹ - 1) durur. Dolayısıyla bu araç 32 bit ve 53 bit aralıklarını rahatça kapsar. Daha büyük sayılarla çalışmanız gerekiyorsa (örneğin şifreleme anahtarları), Python'un yerleşik int türü veya JavaScript'in BigInt'i gibi özelleştirilmiş keyfi hassasiyet kütüphanelerine ihtiyaç duyarsınız.
[Çeviri devam eder...]
Referanslar ve Daha Fazla Okuma
-
Knuth, Donald E. "Bilgisayar Programlama Sanatı, Cilt 2: Yarı Sayısal Algoritmalar." Addison-Wesley, 1997.
-
Shannon, Claude E. "Röle ve Anahtarlama Devrelerinin Sembolik Analizi." Amerikan Elektrik Mühendisleri Enstitüsü İşlemleri, cilt 57, no. 12, 1938, ss. 713-723. IEEE Xplore'dan Erişilebilir
-
Leibniz, Gottfried Wilhelm. "İkili Aritmetiğin Açıklaması". Kraliyet Bilimler Akademisi Raporları, 1703.
-
Boole, George. "Düşünce Yasalarının İncelenmesi." Dover Yayınları, 1854 (1958'de yeniden basılmış).
-
Ifrah, Georges. "Sayıların Evrensel Tarihi: Prehistoryadan Bilgisayarın İcadına." Wiley, 2000.
-
"POSIX.1-2017: chmod." The Open Group Temel Özellikleri. https://pubs.opengroup.org/onlinepubs/9699919799/utilities/chmod.html
-
"RFC 791: İnternet Protokolü." İnternet Mühendisliği Görev Grubu (IETF), 1981. https://tools.ietf.org/html/rfc791
-
"Intel 64 ve IA-32 Mimarileri Yazılım Geliştirici El Kitabı." Intel Corporation. https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html
Şimdi Dönüştürmeye Başlayın
Sayfanın üst kısmındaki dönüştürücü, her iki yönde de dönüşümleri anında gerçekleştirir. Numaranızı her iki alandan birine yazın ve dönüşümün tam olarak nasıl çalıştığını gösteren matematiksel açıklamayla birlikte sonucu hemen görün.
Elde edeceğiniz:
- İkili ve ondalık arasında anında dönüşüm
- Dönüşüm sürecinin görsel açıklaması
- 53 bite kadar numaraları destekleme (9 katrilyon üzeri)
- Sonuçları bir tıklamayla kopyalama
- Kayıt gerektirmez, ücretsiz, herhangi bir cihazda çalışır
İster ağ yapılandırmalarını hata ayıklıyor, ister dosya izinlerini ayarlıyor, ister bilgisayar mimarisi hakkında bilgi ediniyor olun, ikili-ondalık dönüşümü anlamak temel bir beceridir. Bu araç bunu basitleştirir.