Bilgisayarlar Neden İkilik Sayı Sistemini Kullanıyor (0,1)? Neden Üçlü Sayı Sistemi'ni (0,1,2) veya bunun yerine başka bir sayı sistemini kullanmıyorlar?
Bilgisayarlar Neden İkilik Sayı Sistemini Kullanıyor (0,1)? Neden Üçlü Sayı Sistemi'ni (0,1,2) veya bunun yerine başka bir sayı sistemini kullanmıyorlar?
Yanıtlar:
Bilgisayar Bilimi’nde olduğumuz için şu şekilde cevap vereceğim: onlar cevap vermiyor.
"Bilgisayar" derken ne demek istiyoruz? Birçok tanım var ama bilgisayar biliminde bir bilim olarak en yaygın olanı Turing makinesi.
Bir turing makinesi çeşitli yönleriyle tanımlanır: durum seti, geçiş tablosu, durma seti ve tartışmamız için önemli olan bir alfabe. Bu alfabe, makinenin girdi olarak okuyabileceği ve kasetine yazabileceği sembolleri ifade eder. (Farklı girdi ve teyp alfabeleriniz olabilir, ancak şimdilik bunun için endişelenmeyin.)
Böylece, Turing makinesini veya veya giriş alfabesiyle veya . Önemli değil. Gerçek şu ki, verileri kodlamak için seçtiğim herhangi bir alfabe kullanabilirim.
Yani, 9 olduğunu söyleyebilirim veya 9 olduğunu söyleyebilirim. değil, çünkü sadece ayırt edebileceğimiz semboller.
İşin püf noktası, ikili sistemin yeterli olmasıdır. Herhangi bir bit dizisi bir sayı olarak yorumlanabilir, böylece ikili sistemden diğer sistemlere ve geriye dönüştürebilirsiniz.
Ancak, aynı zamanda tekdüze ortaya çıkıyor yeterli. 9'u 111111111 olarak kodlayabilirsiniz. Bu özellikle verimli değil, ancak aynı hesaplama gücüne sahip.
Lambda matematiği gibi alternatif hesaplama modellerine baktığınızda işler daha da deliriyor. Burada sayıları işlev olarak görüntüleyebilirsiniz. Aslında, her şeyi işlev olarak görüntüleyebilirsiniz. Her şey bit, 0 ve 1 olarak değil, değişken durumları olmayan kapalı matematiksel fonksiyonlar olarak kodlanır. Bu sayıları nasıl yapabileceğinizi öğrenmek için Kilise rakamlarına bakın .
Mesele şu ki, 0s ve 1s tamamen donanıma özgü bir meseledir ve seçim keyfidir. Kullanmakta olduğunuz kodlama, işletim sistemleri veya ağ oluşturma gibi birkaç alt alanın dışında, özellikle bilgisayar bilimi ile ilgili değildir.
Dikkate alınması gereken başka şeyler:
İkili sayı sistemi kullanmanın nedenlerinden biri, doğrusal boşluktan ziyade logaritmik sayıları temsil edebilen en düşük sayı sistemli sistemdir. Aynı şekilde farklı sayıları birbirinden ayırt etmek için , ortalama gösteriliş uzunluğu en az ile orantılı olmalıdır , çünkü sadece bir uzunluk dizesi vardır, burada ; . İkili sayıdaki farklı sayıları birbirinden benzersiz şekilde ayırt etmek için , ortalama gösterim uzunluğunun en az ile orantılı olması gerekir; çünkü ikili uzunluk uzunluğu ;nlog10nlog102≈0,3nn . Daha büyük bir taban seçmek, alan gereksinimini sabit bir faktörle geliştirir; taban 10, ortalama gösterim uzunluğunu olan sayıları alır ; bu, , bütün için temel iki gösterimin ortalama uzunluğunun katıdır . İkili ve tekli arasındaki fark çok daha büyüktür; aslında, bir işlevidir . Unary üzerinden ikiliyi seçerek çok şey elde edersiniz; Karşılaştırma yaparak daha yüksek bir üs seçerek çok daha az elde edersiniz.
Yalnızca iki durumu ayırt etmek zorunda kalırsak dijital mantığı uygulamanın daha kolay olduğu fikrine bazı gerçekler var. Elektrik sinyalleri analogdur ve bu nedenle istediğiniz kadar ayrık durumu temsil ettiği şeklinde yorumlanabilir ... ancak aynı aralıkta daha fazla durumu güvenilir bir şekilde ayırt etmek için daha kesin (dolayısıyla pahalı ve titiz) donanıma ihtiyacınız vardır. Bu, olabildiğince düşük bir üs seçmenizi önerir.
Potansiyel olarak önemli olan bir başka husus, mantığın klasik olarak iki farklı değeri içerdiği anlaşılmıştır: ve . Şimdi, bundan daha çok meraklı mantığımız var, ancak birçok matematik ve bilim hala oldukça temel kavramlara dayanıyor. Bilgisayarların hesaplama için kullanıldığını ve bu mantığın hesaplama için önemli olduğunu düşündüğünüzde, en az iki farklı durum için iyi bir desteğe sahip olduğunuzu öne sürüyor ... ama mantık bundan daha fazlasını gerektirmiyor.f bir L ler e
Bilgisayar devrelerinin çoğunun iki durum kullanmasının en büyük nedenlerinden biri, n farklı voltaj seviyeleri arasında ayrım yapmak için gereken devre miktarının kabaca n- 1 ile orantılı olmasıdır . Sonuç olarak, üç ayırt edilebilir duruma sahip olmak, sinyal başına iki kat daha fazla devre gerektirir ve dördü sahip olmak üç kat daha fazla gerektirir. Devre miktarını üçe katlarken, bilgi miktarını sadece iki katına çıkarırken verimlilikte bir kayıp meydana gelir.
Bilgilerin her öğede ikiden fazla durum kullanılarak depolandığı veya iletildiği bilgisayarlarda bazı yerler olduğunu unutmayın. Bir flash bellek dizisinde, yüzlerce veya binlerce bellek hücresine bir seviye algılayıcı devre kümesi tarafından hizmet verilebilir. Belirli bir miktarda bilgiyi saklarken iki yerine hücre başına dört seviye kullanmak, seviye algılama devresinin boyutunun üç katından fazla olabilir, ancak gereken bellek hücrelerinin sayısını yarıya indirir. 100-base-T veya daha hızlı Ethernet üzerinden haberleşirken, kablodaki çoklu sinyal seviyelerini tespit etmek için gerekli olan devrenin maliyeti, muhtemelen daha fazla kablo içeren bir kablo kullanmak veya daha fazla kablo kullanan kablo kullanmak zorunda kalmaktan kaynaklanacaktır. kabul edilemez bir bozulma seviyesi olmadan saniye başına sinyal geçişleri.
Araştırma laboratuvarlarında, aynı anda hem 0 hem de 1 olabilen temel bilgi birimi olarak q-bit kullanan kuantum bilgisayarlar var.
http://en.wikipedia.org/wiki/Quantum_computer
Ayrıca bu referansa göre yapılmış üçlü kuantum bilgisayarlar da olmuştur http://en.wikipedia.org/wiki/Ternary_computer
Bu nedenle, ikili sayı sistemine dayanmayan alternatif bilişim aygıtları oluşturmak gerçekten mümkündür. Örneğin fiber optik sistemler karanlık için 0, 1 ve -1 olarak ışığın iki farklı ortoganal polarizasyonu için kullanırlar.
Bunlardan bahsetmemin nedeni, ikili sayılar hesaplama için yeterli olmasına rağmen, hesaplama için kullanılabilecek alternatif sayı sistemlerinin olduğunu göstermek istemem.
İkili sayı sistemi bu anlamda iyidir, sayıların radix gösterimini kullanarak tamsayılarını kodlayabiliriz . http: // en.wikipedia.org/wiki/Radix Bu değerler ASCII kodunu temsil edebilir A = 0x41 = 01000001 veya değer bir makine talimatını temsil edebilir nop = 0x90 = 0x10010000.
Dijital bilgisayarların merkezinde işlem gücü, bir anahtar gibi çalışan bir transistördür. Anahtarın "kapısında" akımı yükselterek, akımın "kolektör" ve "verici" arasında akmasına izin verir - anahtar açıktır. Transistör, iki durumdan birinde - tamamen açık veya tamamen kapalı ('doymuş') - bu durumların ne olduğunu net bir şekilde bölecek şekilde çalışmak üzere tasarlanacaktır. Transistör iki durum arasında hızlı bir şekilde geçiş yapabilir, çok sınırlı hatalarla durumda kalır.
Bu devre, AND, NAND, OR, XOR ve diğer fonksiyonlar gibi mantık cihazlarının temelini oluşturur. NAND işlevi yapı taşlarının en temel işlevidir. Bu mantık cihazları, öngörülebilir bir durumda kalan işlemcileri sağlamak üzere monte edilir ve gereken işlevselliği sağlamak için çok sayıda transistör küçük bir alanda paketlenebilir.
Bir transistör birden fazla veya farklı durumları yönetebilir, ancak bu şekilde çalışırken geleneksel "dijital" bilgisayarları üretmezler - öngörülebilir bir durumda kalma eğiliminde değillerdir ve girişime, doygunluğa, osilasyona vb. Eğilimlidirler. hesaplamalı yetenekler açısından sınırlı uygulamaları var. Op-amp analog bilgisayarlar olarak kabul edilebilir.
İkili kod (1,0) kullanıyoruz, çünkü şu anda ikiden fazla olası durumu güvenilir şekilde tutabilen "anahtarlar" oluşturma teknolojisine sahip değiliz. (Kuantum bilgisayarlar şu anda tam olarak satılmamaktadır.) İkili sistem, özellikle trilyonlarca bağlantıyla çalışırken elektrik akımının varlığını elektrik akımı eksikliğinden ayırt etmek oldukça kolay olduğu için seçildi. Ve bu sistemde başka herhangi bir sayı tabanını kullanmak çok saçma çünkü sistemin aralarında sürekli dönüşüm yapması gerekecek. Hepsi bu kadar.