Bilgisayar kodu 01. İkili kodlar. İmzalı ters anahtar

İkili kod, birler ve sıfırlar biçiminde bilgi yazma biçimidir. Bu, taban 2 ile konumsaldır. Bugün, ikili kod (aşağıdaki tablo bazı sayı yazma örneklerini içermektedir) istisnasız tüm dijital cihazlarda kullanılmaktadır. Popülaritesi, bu kayıt biçiminin yüksek güvenilirliği ve basitliğinden kaynaklanmaktadır. İkili aritmetik çok basittir, bu nedenle donanımda da uygulanması kolaydır. bileşenler (veya aynı zamanda mantıksal olanlar olarak da adlandırılırlar) çok güvenilirdir, çünkü yalnızca iki durumda çalışırlar: mantıksal bir (bir akım var) ve bir mantıksal sıfır (akım yok). Bu nedenle, çalışması geçici olaylara dayanan analog bileşenlerle olumlu bir şekilde karşılaştırırlar.

İkili gösterim nasıl oluşturulur?

Böyle bir anahtarın nasıl oluştuğunu görelim. Bir ikili kodun bir biti yalnızca iki durum içerebilir: sıfır ve bir (0 ve 1). İki basamak kullanıldığında, dört değer yazmak mümkün olur: 00, 01, 10, 11. Üç basamaklı bir kayıt sekiz durum içerir: 000, 001 ... 110, 111. Sonuç olarak, uzunluğunun olduğunu buluyoruz. ikili kod, basamak sayısına bağlıdır. Bu ifade aşağıdaki formül kullanılarak yazılabilir: N =2m, burada: m basamak sayısı ve N kombinasyon sayısıdır.

İkili kod türleri

Mikroişlemcilerde, bu tür anahtarlar çeşitli işlenmiş bilgileri kaydetmek için kullanılır. Bir ikili kodun bit derinliği, yerleşik belleğini önemli ölçüde aşabilir. Bu gibi durumlarda, uzun sayılar birkaç bellek hücresini işgal eder ve birkaç komut kullanılarak işlenir. Bu durumda, çok baytlı bir ikili kod için ayrılan tüm bellek sektörleri tek bir sayı olarak kabul edilir.

Bu veya bu bilgiyi sağlama ihtiyacına bağlı olarak, aşağıdaki anahtar türleri ayırt edilir:

  • imzasız;
  • doğrudan tamsayı karakter kodları;
  • imzalı tersler;
  • ek imzala;
  • Gri kod;
  • Gray-Express kodu.;
  • kesirli kodlar.

Her birini daha ayrıntılı olarak ele alalım.

imzasız ikili

Bakalım bu kayıt türü neymiş. İşaretsiz tamsayı kodlarında, her basamak (ikili) iki katı temsil eder. Bu durumda, bu formda yazılabilecek en küçük sayı sıfırdır ve maksimum aşağıdaki formülle temsil edilebilir: M=2 p -1. Bu iki sayı, böyle bir ikili kodu ifade edebilen anahtarın aralığını tamamen tanımlar. Bahsedilen giriş şeklinin olanaklarına bakalım. Sekiz bitten oluşan bu tür işaretsiz anahtar kullanıldığında, olası sayıların aralığı 0 ile 255 arasında olacaktır. On altı bitlik bir kodun aralığı 0 ile 65535 arasında olacaktır. Sekiz bitlik işlemcilerde iki bellek sektörü kullanılır. bitişik hedeflerde bulunan bu tür numaraları saklamak ve yazmak için. Bu tür tuşlarla çalışmak özel komutlarla sağlanır.

Doğrudan tamsayı imzalı kodlar

Bu tür ikili anahtarlarda, bir sayının işaretini yazmak için en önemli basamak kullanılır. Sıfır pozitif, bir negatif. Bu bitin tanıtılmasının bir sonucu olarak, kodlanmış sayıların aralığı negatif yönde kaydırılır. Sekiz bitlik işaretli bir tamsayı ikili anahtarının -127 ila +127 aralığında sayılar yazabileceği ortaya çıktı. On altı bit - -32767 ila +32767 aralığında. Sekiz bitlik mikroişlemcilerde, bu tür kodları depolamak için iki bitişik sektör kullanılır.

Bu kayıt biçiminin dezavantajı, anahtarın işaret ve rakam bitlerinin ayrı ayrı işlenmesi gerekmesidir. Bu kodlarla çalışan programların algoritmaları oldukça karmaşıktır. İşaret bitlerini değiştirmek ve vurgulamak için, yazılımın boyutunda keskin bir artışa ve hızında bir azalmaya katkıda bulunan bu sembol için maskeleme mekanizmaları kullanmak gerekir. Bu eksikliği gidermek için yeni bir anahtar türü tanıtıldı - ters ikili kod.

İmzalı ters anahtar

Bu gösterim biçimi, yalnızca anahtarın tüm bitlerinin ters çevrilmesiyle içindeki negatif bir sayının elde edilmesiyle doğrudan kodlardan farklıdır. Bu durumda, dijital ve işaret bitleri aynıdır. Bu nedenle, bu tür kodlarla çalışma algoritmaları büyük ölçüde basitleştirilmiştir. Bununla birlikte, geri tuşu, sayının mutlak değerini hesaplayarak ilk basamağın karakterini tanımak için özel bir algoritma gerektirir. Ortaya çıkan değerin işaretini geri yüklemenin yanı sıra. Ayrıca sayının ters ve direkt kodlarında sıfır yazmak için iki tuş kullanılır. Bu değerin pozitif veya negatif bir işareti olmamasına rağmen.

İmzalı İkinin İkili Sayının Tamamlayıcı Kodu

Bu kayıt türü, önceki anahtarların listelenen dezavantajlarına sahip değildir. Bu tür kodlar, hem pozitif hem de negatif sayıların doğrudan toplanmasına izin verir. Bu durumda, işaret bitinin analizi yapılmaz. Bütün bunlar, tamamlayıcı sayıların ileri ve geri tuşları gibi yapay oluşumlar değil, doğal bir sembol halkası olmasıyla mümkün olmaktadır. Ayrıca önemli bir faktör, ikili kodlarda tamamlayıcıları hesaplamanın son derece basit olmasıdır. Bunu yapmak için, geri tuşuna bir birim eklemek yeterlidir. Sekiz basamaktan oluşan bu tür bir karakter kodunu kullanırken, olası sayıların aralığı -128 ile +127 arasında olacaktır. On altı bitlik bir anahtarın aralığı -32768 ila +32767 olacaktır. Sekiz bitlik işlemcilerde, bu tür sayıları depolamak için iki bitişik sektör de kullanılır.

İkili ikilinin tamamlayıcısı, işaret yayılım fenomeni olarak adlandırılan gözlemlenen etki nedeniyle ilginçtir. Bunun ne anlama geldiğini görelim. Bu etki, bir baytlık bir değeri iki baytlık bir değere dönüştürme sürecinde, düşük baytın işaret bitlerinin değerlerini yüksek baytın her bitine atamak yeterlidir. İşareti saklamak için yüksek bitleri kullanabileceğiniz ortaya çıktı. Anahtarın değeri hiç değişmez.

gri kod

Bu kayıt biçimi aslında tek adımlı bir anahtardır. Yani bir değerden diğerine geçiş sürecinde sadece bir bit bilgi değişir. Bu durumda, verilerin okunmasındaki hata, zaman içinde hafif bir kayma ile bir konumdan diğerine geçişe yol açar. Ancak böyle bir işlemde açısal pozisyonun tamamen yanlış bir sonucunun elde edilmesi tamamen hariç tutulmuştur. Böyle bir kodun avantajı, bilgiyi yansıtma yeteneğidir. Örneğin, yüksek bitleri tersine çevirerek, sayımın yönünü değiştirebilirsiniz. Bunun nedeni, Tamamlayıcı kontrol girişidir. Bu durumda, çıkış değeri, eksenin bir fiziksel dönüş yönü ile hem artan hem de azalan olabilir. Gri anahtara kaydedilen bilgiler, gerçek sayısal verileri taşımayan özel olarak kodlandığından, daha fazla çalışmadan önce, ilk önce kaydın olağan ikili biçimine dönüştürülmesi gerekir. Bu, özel bir dönüştürücü kullanılarak yapılır - Gray-Binar kod çözücü. Bu cihaz, hem donanımda hem de yazılımda temel mantık öğelerine kolayca uygulanabilir.

Gri Ekspres Kodu

Gray'in standart tek adımlı anahtarı, iki, sayılarla temsil edilen çözümler için uygundur. Başka çözümlerin uygulanmasının gerekli olduğu durumlarda bu kayıt şeklinden sadece orta kısım kesilerek kullanılır. Sonuç olarak, tek adımlı anahtar korunur. Ancak böyle bir kodda sayısal aralığın başlangıcı sıfır değildir. Ayarlanan değer ile dengelenir. Veri işleme sırasında, ilk ve azaltılmış çözünürlük arasındaki farkın yarısı, oluşturulan darbelerden çıkarılır.

Sabit noktalı ikili anahtarda bir kesirli sayının temsili

İş sürecinde, sadece tam sayılarla değil, aynı zamanda kesirli sayılarla da işlem yapılmalıdır. Bu tür sayılar doğrudan, ters ve ek kodlar kullanılarak yazılabilir. Bahsedilen anahtarları oluşturma ilkesi tamsayılarla aynıdır. Şimdiye kadar, ikili virgülün en az anlamlı basamağın sağında olması gerektiğini varsaydık. Ama değil. En önemli basamağın solunda (bu durumda değişken olarak yalnızca kesirli sayılar yazılabilir) ve değişkenin ortasında (karışık değerler yazılabilir) yer alabilir.

İkili kodun kayan nokta gösterimi

Bu form kayıt yapmak veya tam tersi için kullanılır - çok küçük. Bir örnek, yıldızlararası mesafeler veya atomların ve elektronların boyutlarıdır. Bu tür değerleri hesaplarken, çok büyük bir bit derinliğine sahip bir ikili kod kullanmak zorunda kalacaktı. Ancak, en yakın milimetreye kozmik mesafeleri hesaba katmamıza gerek yok. Bu nedenle, sabit nokta gösterimi bu durumda verimsizdir. Bu tür kodları görüntülemek için cebirsel bir form kullanılır. Yani sayı, sayının istenen sırasını yansıtan kuvvete on ile çarpılan mantis olarak yazılır. Mantisin birden büyük olmaması ve virgülden sonra sıfırın yazılmaması gerektiğini bilmelisiniz.

İkili hesabın 18. yüzyılın başlarında Alman matematikçi Gottfried Leibniz tarafından icat edildiğine inanılıyor. Bununla birlikte, bilim adamlarının yakın zamanda keşfettiği gibi, Polinezya Mangarevu adasından çok önce, bu tür aritmetik kullanıldı. Kolonizasyonun orijinal sayı sistemlerini neredeyse tamamen yok etmesine rağmen, bilim adamları karmaşık ikili ve ondalık sayma türlerini geri yüklediler. Ek olarak, Bilişsel bilim adamı Nunez, ikili kodlamanın eski Çin'de MÖ 9. yüzyıl kadar erken bir tarihte kullanıldığını iddia ediyor. e. Maya gibi diğer eski uygarlıklar da zaman aralıklarını ve astronomik olayları izlemek için karmaşık ondalık ve ikili sistem kombinasyonlarını kullandılar.


Yunan Gürcü
Etiyopya
Yahudi
Akshara-sankhya Diğer Babil
Mısırlı
Etrüsk
Roma
Tuna Çatı katı
kipu
Maya
Ege
KPU'nun Sembolleri konumsal , , , , , , , , , , Nega-konumsal simetrik karma sistemler Fibonacci konumsal olmayan tekil (tekli)

İkili sayı sistemi- 2 tabanlı konumsal sayı sistemi. Mantık kapılarındaki dijital elektronik devrelerde doğrudan uygulama nedeniyle, ikili sistem neredeyse tüm modern bilgisayarlarda ve diğer elektronik bilgi işlem cihazlarında kullanılır.

Sayıların ikili gösterimi

İkili sistemde sayılar iki sembol kullanılarak yazılır ( 0 ve 1 ). Sayının hangi sayı sisteminde yazıldığını karıştırmamak için sağ altta bir işaretçi ile sağlanır. Örneğin, ondalık bir sayı 5 10 , ikili olarak 101 2 . Bazen ikili sayı bir önek ile gösterilir. 0b veya sembol & (ve işareti), Örneğin 0b101 veya sırasıyla &101 .

İkili sayı sisteminde (ondalık hariç diğer sayı sistemlerinde olduğu gibi) karakterler birer birer okunur. Örneğin, 1012 sayısı "bir sıfır bir" olarak telaffuz edilir.

tamsayılar

İkili olarak yazılmış bir doğal sayı (bir n − 1 bir n − 2 … bir 1 a 0) 2 (\displaystyle (a_(n-1)a_(n-2)\dots a_(1)a_(0))_(2)), şu anlama gelir:

(bir − 1 bir − 2 … bir 1 bir 0) 2 = ∑ k = 0 n − 1 ak 2 k , (\displaystyle (a_(n-1)a_(n-2)\dots a_(1)a_( 0))_(2)=\toplam _(k=0)^(n-1)a_(k)2^(k),)

negatif sayılar

Negatif ikili sayılar, ondalık sayılarla aynı şekilde gösterilir: sayının önünde “-” ile. Yani, ikili gösterimde yazılmış negatif bir tamsayı (− bir n − 1 bir n − 2 … bir 1 a 0) 2 (\displaystyle (-a_(n-1)a_(n-2)\dots a_(1)a_(0))_(2)), şu değere sahiptir:

(− bir n − 1 bir n − 2 … bir 1 a 0) 2 = − ∑ k = 0 n − 1 bir k 2 k . (\displaystyle (-a_(n-1)a_(n-2)\dots a_(1)a_(0))_(2)=-\sum _(k=0)^(n-1)a_( k)2^(k).)

ek kod.

kesirli sayılar

İkili olarak yazılmış bir kesirli sayı (bir − 1 bir − 2 … bir 1 bir 0 , bir − 1 bir − 2 … bir − (m − 1) bir − m) 2 (\displaystyle (a_(n-1)a_(n-2)\dots) a_(1)a_(0),a_(-1)a_(-2)\dots a_(-(m-1))a_(-m))_(2)), şu değere sahiptir:

(bir − 1 bir − 2 … bir 1 bir 0 , bir − 1 bir − 2 … bir − (m − 1) bir − m) 2 = ∑ k = − mn − 1 ak 2 k , (\displaystyle (a_( n-1)a_(n-2)\dots a_(1)a_(0),a_(-1)a_(-2)\dots a_(-(m-1))a_(-m))_( 2)=\toplam _(k=-m)^(n-1)a_(k)2^(k),)

İkili sayılarda toplama, çıkarma ve çarpma

toplama tablosu

Bir sütun ekleme örneği (ikili sistemde 14 10 + 5 10 = 19 10 ondalık ifadesi 1110 2 + 101 2 = 10011 2 gibi görünür):

Bir "sütun" ile çarpma örneği (ikili sistemde 14 10 * 5 10 \u003d 70 10 ondalık ifadesi 1110 2 * 101 2 \u003d 1000110 2 gibi görünür):

1 ile başlayarak, tüm sayılar iki ile çarpılır. 1'den sonraki noktaya ikili nokta denir.

İkiliden ondalığa dönüştürme

Diyelim ki bize ikili bir sayı verildi 110001 2 . Ondalık sayıya dönüştürmek için rakamların toplamı olarak aşağıdaki gibi yazın:

1 * 2 5 + 1 * 2 4 + 0 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 49

Aynı şey biraz farklı:

1 * 32 + 1 * 16 + 0 * 8 + 0 * 4 + 0 * 2 + 1 * 1 = 49

Bunu aşağıdaki gibi tablo şeklinde yazabilirsiniz:

512 256 128 64 32 16 8 4 2 1
1 1 0 0 0 1
+32 +16 +0 +0 +0 +1

Sağdan sola hareket ettirin. Her ikili birimin altına eşdeğerini aşağıdaki satıra yazın. Ortaya çıkan ondalık sayıları ekleyin. Bu nedenle, ikili sayı 110001 2, ondalık sayı 49 10'a eşdeğerdir.

Kesirli ikili sayıları ondalık sayıya dönüştürme

Bir sayıyı çevirmek gerekiyor 1011010,101 2 ondalık sisteme. Bu sayıyı şöyle yazalım:

1 * 2 6 + 0 * 2 5 + 1 * 2 4 + 1 * 2 3 + 0 * 2 2 + 1 * 2 1 + 0 * 2 0 + 1 * 2 −1 + 0 * 2 −2 + 1 * 2 −3 = 90,625

Aynı şey biraz farklı:

1 * 64 + 0 * 32 + 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 0 * 1 + 1 * 0,5 + 0 * 0,25 + 1 * 0,125 = 90,625

Veya tabloya göre:

64 32 16 8 4 2 1 0.5 0.25 0.125
1 0 1 1 0 1 0 , 1 0 1
+64 +0 +16 +8 +0 +2 +0 +0.5 +0 +0.125

Horner dönüşümü

Bu yöntemle sayıları ikiliden ondalık sayıya çevirebilmek için soldan sağa sayıları toplamanız, daha önce elde edilen sonucu sistem bazında çarparak (bu durumda, 2) yapmanız gerekir. Horner'ın yöntemi genellikle ikiliden ondalığa dönüştürülür. İkili sayı sisteminde toplama ve çarpma becerilerini gerektirdiği için ters işlem zordur.

Örneğin, ikili sayı 1011011 2 şu şekilde ondalık sayıya dönüştürülür:

0*2 + 1 = 1
1*2 + 0 = 2
2*2 + 1 = 5
5*2 + 1 = 11
11*2 + 0 = 22
22*2 + 1 = 45
45*2 + 1 = 91

Yani ondalık sistemde bu sayı 91 olarak yazılacaktır.

Horner yöntemiyle sayıların kesirli kısmının çevirisi

Sayılar sağdan sola sayıdan alınır ve sayı sistemi (2) esasına göre bölünür.

Örneğin 0,1101 2

(0 + 1 )/2 = 0,5
(0,5 + 0 )/2 = 0,25
(0,25 + 1 )/2 = 0,625
(0,625 + 1 )/2 = 0,8125

Cevap: 0.1101 2 = 0.8125 10

Ondalıktan ikiliye dönüştürme

Diyelim ki 19 sayısını ikiliye dönüştürmemiz gerekiyor. Aşağıdaki prosedürü kullanabilirsiniz:

19/2 = 9 kalan 1
9/2 = 4, kalanla 1
4/2 = 2 kalan yok 0
2/2 = 1 kalan yok 0
1/2 = 0 kalan 1

Böylece her bölümü 2'ye böleriz ve kalanı ikili gösterimin sonuna yazarız. Bölüm 0 olana kadar bölmeye devam ediyoruz. Sonucu sağdan sola yazıyoruz. Yani, en alttaki (1) rakamı en soldaki olacak ve böyle devam edecek.Sonuç olarak, ikili gösterimde 19 sayısını elde ederiz: 10011 .

Kesirli ondalık sayıları ikiliye dönüştürme

Orijinal sayıda bir tamsayı kısmı varsa, o zaman kesirli kısımdan ayrı olarak dönüştürülür. Bir kesirli sayının ondalık sayı sisteminden ikili sayıya dönüştürülmesi aşağıdaki algoritmaya göre gerçekleştirilir:

  • Kesir, ikili sayı sisteminin (2) tabanı ile çarpılır;
  • Ortaya çıkan üründe ikili sayı sisteminde sayının en anlamlı basamağı olarak alınan tamsayı kısmı ayrılır;
  • Algoritma, elde edilen ürünün kesirli kısmı sıfıra eşitse veya gerekli hesaplama doğruluğuna ulaşılırsa sona erer. Aksi takdirde, ürünün kesirli kısmı üzerinden hesaplamalara devam edilir.

Örnek: Kesirli bir ondalık sayıyı dönüştürmek istiyorsunuz 206,116 kesirli ikili sayıya dönüştürülür.

Tamsayı kısmının çevirisi, daha önce açıklanan algoritmalara göre 206 10 = 110001110 2'yi verir. 0.116'nın kesirli kısmını taban 2 ile çarparız, ürünün tamsayı kısımlarını istenen kesirli ikili sayının ondalık noktasından sonraki rakamlara koyarız:

0,116 2 = 0 ,232
0,232 2 = 0 ,464
0,464 2 = 0 ,928
0,928 2 = 1 ,856
0,856 2 = 1 ,712
0,712 2 = 1 ,424
0,424 2 = 0 ,848
0,848 2 = 1 ,696
0,696 2 = 1 ,392
0,392 2 = 0 ,784
vb.

Böylece 0.116 10 ≈ 0, 0001110110 2

Şunu elde ederiz: 206.116 10 ≈ 11001110.0001110110 2

Uygulamalar

Dijital cihazlarda

İkili sistem, en basit ve gereksinimleri karşıladığı için dijital cihazlarda kullanılır:

  • Sistemde ne kadar az değer bulunursa, bu değerler üzerinde çalışan ayrı elemanlar yapmak o kadar kolay olur. Özellikle, ikili sayı sisteminin iki basamağı birçok fiziksel olayla kolayca temsil edilebilir: akım var (akım eşik değerinden daha büyük) - akım yok (akım eşik değerinden küçük), manyetik alan indüksiyonu eşik değerinden büyük veya değil (manyetik alan indüksiyonu eşik değerinden küçük) vb.
  • Bir eleman için durum sayısı ne kadar düşükse, gürültü bağışıklığı o kadar yüksek ve o kadar hızlı çalışabilir. Örneğin, voltaj, akım veya manyetik alan indüksiyonu açısından üç durumu kodlamak için iki eşik değeri ve iki karşılaştırıcı girmeniz gerekir,

Hesaplamada, ikiye tümleyende negatif ikili sayılar yazmak için yaygın olarak kullanılır. Örneğin, -5 10 sayısı -101 2 olarak yazılabilir, ancak 32 bit bilgisayarda 2 olarak saklanabilir.

İngiliz ölçü sisteminde

Doğrusal boyutları inç cinsinden belirtirken, ondalık sayılar yerine ikili kesirler kullanmak gelenekseldir, örneğin: 5¾ ″, 7 15/16 ″, 3 11/32 ″, vb.

genellemeler

İkili sayı sistemi, bir ikili kodlama sistemi ile tabanı 2'ye eşit olan bir üstel ağırlık fonksiyonunun bir kombinasyonudur. farklı taban. Örnek: ondalık basamakların ikili olarak yazıldığı ve sayı sisteminin ondalık olduğu ikili kodlu ondalık kodlama.

Öykü

  • Eski Çin'de, Değişiklikler Kitabı'nın klasik metinlerinde, 3 bit ve 6 bitlik rakamlara benzer, 8 trigram ve 64 heksagramdan oluşan eksiksiz bir set biliniyordu. heksagramların sırası değişiklik kitabı, karşılık gelen ikili rakamların (0'dan 63'e kadar) değerlerine uygun olarak bulunur ve bunları elde etme yöntemi 11. yüzyılda Çinli bilim adamı ve filozof Shao Yong tarafından geliştirilmiştir. Ancak, Shao Yong'un ikili aritmetik kurallarını anladığını ve iki karakterli demetleri sözlükbilimsel sıraya yerleştirdiğini gösteren hiçbir kanıt yoktur.
  • İkili rakamların kombinasyonları olan setler, Afrikalılar tarafından geleneksel kehanette (Ifa gibi) ve ortaçağ coğrafyasında kullanıldı.
  • 1854'te İngiliz matematikçi George Boole, şimdi Boole cebiri veya mantığın cebiri olarak bilinen, mantığa uygulanan cebirsel sistemleri açıklayan ufuk açıcı bir çalışma yayınladı. Mantıksal hesabı, modern dijital elektronik devrelerin geliştirilmesinde önemli bir rol oynamaya mahkum edildi.
  • 1937'de Claude Shannon savunma için doktora tezini sundu. Röle ve anahtarlama devrelerinin sembolik analizi Boole cebri ve ikili aritmetiğin elektronik rölelere ve anahtarlara uygulandığı . Esasen tüm modern dijital teknolojiler Shannon'ın tezine dayanmaktadır.
  • Kasım 1937'de, daha sonra Bell Laboratuarlarında çalışan George Stiebitz, röleye dayalı (İngilizce'den) "Model K" bilgisayarını yarattı. K itchen, montajın yapıldığı mutfak) ikili eklemeyi yaptı. 1938'in sonlarında Bell Labs, Stbitz tarafından yönetilen bir araştırma programı başlattı. Liderliğinde oluşturulan ve 8 Ocak 1940'ta tamamlanan bilgisayar, karmaşık sayılarla işlem yapabildi. Stiebitz, 11 Eylül 1940'ta Dartmouth Koleji'ndeki Amerikan Matematik Derneği konferansındaki bir gösteri sırasında, bir tele-daktilo kullanarak bir telefon hattı üzerinden uzak karmaşık sayı hesaplayıcıya komut gönderme yeteneğini gösterdi. Bu, uzak bir bilgisayarı bir telefon hattı üzerinden kullanmaya yönelik ilk girişimdi. Gösteriye tanık olan konferans katılımcıları arasında, daha sonra anılarında bu konuda yazan John von Neumann, John Mauchly ve Norbert Wiener vardı.
  • Novosibirsk Academgorodok'taki binanın (SSCB Bilimler Akademisi Sibirya Şubesi'nin eski Bilgi İşlem Merkezi) alınlığında, binanın yapım tarihini simgeleyen 70 10'a eşit 1000110 ikili sayı vardır (

Bilgisayarlar kelimeleri ve sayıları insanların yaptığı gibi anlamıyor. Modern yazılım, son kullanıcının bunu görmezden gelmesine izin verir, ancak en düşük seviyelerde bilgisayarınız ikili bir elektrik sinyali ile çalışır. sadece iki eyalet var: akım var veya akım yok. Karmaşık verileri "anlamak" için, bilgisayarınızın ikili olarak kodlaması gerekir.

İkili sistem, bilgisayarınızın anlayabileceği açık ve kapalı durumlarına karşılık gelen 1 ve 0 olmak üzere iki rakama dayanır. Muhtemelen ondalık sisteme aşinasınızdır. 0'dan 9'a kadar on basamak kullanır ve daha sonra her bir sıradaki basamak bir öncekinin on katı olacak şekilde iki basamaklı sayılar oluşturmak için bir sonraki sıraya geçer. İkili sistem benzerdir, her rakam bir öncekinden iki kat daha büyüktür.

İkili Sayma

İkili sistemde, ilk basamak ondalık olarak 1'e eşittir. İkinci basamak 2, üçüncüsü 4, dördüncüsü 8 ve bu böyle devam eder - her seferinde ikiye katlanır. Tüm bu değerleri eklemek size ondalık biçimde bir sayı verecektir.

1111 (ikili) = 8 + 4 + 2 + 1 = 15 (ondalık)

0'ın muhasebeleştirilmesi bize dört ikili bit için 16 olası değer verir. 8 biti hareket ettirin ve 256 olası değer elde edin. Bu, temsil etmek için çok daha fazla yer kaplar, çünkü ondalıktaki dört basamak bize 10.000 olası değer verir. Elbette, ikili kod daha fazla yer kaplar, ancak bilgisayarlar ikili dosyaları ondalık sistemden çok daha iyi anlar. Ve mantık işleme gibi bazı şeyler için ikili, ondalık sayıdan daha iyidir.

Programlamada kullanılan bir temel sistem daha olduğunu söylemek gerekir: onaltılık. Bilgisayarlar onaltılı sistemde çalışmasa da, programcılar kod yazarken ikili adresleri insan tarafından okunabilir bir biçimde temsil etmek için kullanır. Bunun nedeni, onaltılık bir sayının iki basamağının bir tam baytı temsil edebilmesidir, yani ikili sistemde sekiz basamağı değiştirirler. Onaltılık sistem, fazladan altı basamak elde etmek için 0-9 arasındaki sayıları ve ayrıca A'dan F'ye kadar olan harfleri kullanır.

Bilgisayarlar neden ikili dosyalar kullanır?

Kısa cevap: donanım ve fizik yasaları. Bilgisayarınızdaki her karakter bir elektrik sinyalidir ve hesaplamanın ilk günlerinde elektrik sinyallerini ölçmek çok daha zordu. Yalnızca negatif bir yükle temsil edilen "açık" durumu ile pozitif bir yükle temsil edilen "kapalı" durumu birbirinden ayırmak daha mantıklıydı.

Neden "kapalı"nın pozitif bir yük ile temsil edildiğini bilmeyenler için, bunun nedeni elektronların negatif bir yüke sahip olmaları ve daha fazla elektronun negatif bir yük ile daha fazla akım anlamına gelmesidir.

Böylece erken dönem oda büyüklüğünde bilgisayarlar kullanıldı ikili dosyalar sistemlerini inşa etmek için ve daha eski, daha hantal ekipman kullanmalarına rağmen, aynı temel ilkeler üzerinde çalıştılar. Modern bilgisayarlar denilen şeyi kullanır transistör ikili kod ile hesaplamalar yapmak için.

İşte tipik bir transistörün şeması:

Temel olarak, kapıda akım varsa akımın kaynaktan drenaja akmasına izin verir. Bu bir ikili anahtar oluşturur. Üreticiler bu transistörleri 5 nanometre kadar küçük veya iki DNA dizisi kadar küçük yapabilirler. Modern işlemciler bu şekilde çalışır ve hatta açık ve kapalı durumları ayırt etmede sorun yaşayabilirler (bunun nedeni gerçekçi olmayan moleküler boyutlarından kaynaklanmaktadır. kuantum mekaniğinin tuhaflıkları).

Neden sadece ikili sistem

Öyleyse, “Neden sadece 0 ve 1? Neden başka bir numara eklemiyorsunuz? Bu kısmen bilgisayar oluşturma geleneklerinden kaynaklansa da, aynı zamanda bir rakam daha eklemek, akımın sadece "kapalı" veya "açık" değil, bir durumunu daha vurgulama ihtiyacı anlamına gelir.

Buradaki sorun şu ki, birden fazla voltaj seviyesi kullanmak istiyorsanız, bunlarla kolayca hesaplama yapmanın bir yoluna ihtiyacınız var ve bunu yapabilen modern donanım, ikili hesaplamaların yerini alacak şekilde uygun değil. Örneğin, sözde bir üçlü bilgisayar, 1950'lerde geliştirildi, ancak geliştirme orada durdu. üçlü mantık ikiliden daha verimli, ancak ikili transistör için henüz etkili bir yedek yok veya en azından ikili kadar küçük bir transistör yok.

Üçlü mantığı kullanamamamızın nedeni, transistörlerin bir bilgisayarda nasıl bağlandığına ve matematiksel hesaplamalar için nasıl kullanıldığına bağlıdır. Transistör iki giriş hakkında bilgi alır, bir işlem gerçekleştirir ve sonucu bir çıkışa döndürür.

Bu nedenle, ikili matematik bir bilgisayar için her şeyden daha kolaydır. İkili mantık, Açık ve Kapalı durumlarına karşılık gelen Doğru ve Yanlış ile ikili sistemlere kolayca dönüştürülür.

İkili mantık üzerinde çalışan bir ikili doğruluk tablosu, her temel işlem için dört olası çıktıya sahip olacaktır. Ancak, üçlü kapılar üç girdi kullandığından, üçlü doğruluk tablosunda 9 veya daha fazla olacaktır. İkili sistemde 16 olası operatör (2^2^2) bulunurken, üçlü sistemde 19683 (3^3^3) bulunur. Ölçekleme bir sorun haline gelir, çünkü trinity daha verimli olmasına rağmen, aynı zamanda katlanarak daha karmaşıktır.

Kim bilir? Gelecekte, ikili mantık minyatürleştirme sorunlarıyla karşılaştığı için üçlü bilgisayarları çok iyi görebiliriz. Şimdilik dünya ikili modda çalışmaya devam edecek.

ikili kod bilginin 0 veya 1 karakterlerinin bir araya getirilerek sunulmasıdır. Bazen bu iki sayı şeklinde bilgiyi kodlamanın prensibini anlamak çok zordur ama biz her şeyi detaylı bir şekilde açıklamaya çalışacağız.

Bu arada, sitemizde Çevrimiçi Kod Hesaplayıcıyı kullanarak herhangi bir metni ondalık, onaltılık, ikili koda dönüştürebilirsiniz.

Bir şeyi ilk kez gördüğümüzde, genellikle kendimize nasıl çalıştığına dair mantıklı bir soru sorarız. Herhangi bir yeni bilgi bizim tarafımızdan karmaşık veya yalnızca uzaktan bakmak için yaratılmış, ancak hakkında daha fazla bilgi edinmek isteyenler için yaratılmış bir şey olarak algılanır. ikili kod, basit bir gerçek ortaya çıkıyor - bize göründüğü gibi ikili kodu anlamak hiç de zor değil. Örneğin, İngilizce T harfi İkili sistem 01010100, E - 01000101 ve X - 01011000 harfini alacaktır. Buna dayanarak, ikili kod biçimindeki İngilizce TEXT kelimesinin şöyle görüneceğini anlıyoruz: 01010100 01000101 01011000 01010100. peki, biz alfabenin harflerinin sunumunda görmeyi tercih eder.

Bugüne kadar ikili kod Bilgisayarlar tam olarak onun sayesinde çalıştığı için programlamada aktif olarak kullanılır. Ancak programlama, sonsuz bir sıfırlar ve birler koleksiyonuna indirgenmemiştir. Bu oldukça zaman alan bir süreç olduğu için bilgisayar ile kişi arasındaki anlaşmayı kolaylaştıracak önlemler alınmıştır. Sorunun çözümü, programlama dillerinin (BASIC, C++, vb.) oluşturulmasıydı. Sonuç olarak, programcı anladığı dilde bir program yazar ve ardından derleyici program her şeyi makine koduna çevirerek bilgisayarı başlatır.

Bir doğal sayıyı ondalık sayı sisteminden ikili sisteme çevirme.

Sayıları ondalıktan ikiliye dönüştürmek için, aşağıdaki işlem dizisinden oluşan "değiştirme algoritmasını" kullanın:

1. İstenen sayıyı seçin ve 2'ye bölün. Bölmenin sonucu bir kalanla sonuçlanırsa, kalan yoksa ikili kodun sayısı 1 olacaktır - 0.

2. Varsa kalanını atmak, ilk bölme sonucu elde edilen sayıyı tekrar 2'ye bölün. Kalanın varlığına göre ikili sistemin sayısını ayarlayın.

3. Bölünemez bir sayıya ulaşana kadar, kalandan ikili sistemin sayısını hesaplayarak bölmeye devam ediyoruz - 0.

4. Bu noktada ikili kodun hazır olduğu kabul edilir.

Örneğin, 7 sayısını ikili sisteme çevirelim:

1.7:2=3.5. Kalan olduğu için ikili kodun ilk sayısı olarak 1 yazıyoruz.

2. 3: 2 = 1.5. Kalanına bağlı olarak 1 ile 0 arasında bir kod numarası seçimi ile işlemi tekrarlıyoruz.

3. 1: 2 = 0,5. Yine aynı şekilde 1 seçiyoruz.

4. Sonuç olarak, ondalık sayı sisteminden ikiliye çevrilen kod 111'dir.

Bu şekilde sonsuz sayıda sayı çevirebilirsiniz. Şimdi tam tersini yapmaya çalışalım - sayıyı ikiliden ondalık sayıya dönüştürün.

İkili bir sayıyı ondalık sayıya dönüştürme.

Bunu yapmak için ikili sayımızı sıfırdan başlayarak sondan 111 numaralandırmamız gerekiyor. 111 için 1^2 1^1 1^0'dır. Buna dayanarak, bir sayının sayısı derecesi olarak hizmet edecektir. Daha sonra, (x * 2^y) + (x * 2^y) + (x * 2^y) formülüne göre eylemler gerçekleştiririz, burada x ikili kodun sıra sayısıdır ve y güçtür bu sayının. İkili sayımızı bu formül altında yerine koyuyoruz ve sonucu dikkate alıyoruz. Şunu elde ederiz: (1 * 2^2) + (1 * 2^1) + (1 * 2^0) = 4 + 2 + 1 = 7.

İkili sayı sisteminin tarihinden biraz.

İlk kez olduğuna inanılıyor İkili sistem Sistemin karmaşık matematiksel hesaplamalarda ve bilimde yararlı olduğunu düşünen Gottfried Wilhelm Leibniz tarafından önerildi. Ancak bazı haberlere göre, ikili sayı sistemi önerisinden önce, Çin'de bir duvar yazısı ortaya çıktı ve bu yazıt ile deşifre edildi. ikili kod kullanma. Yazıt, uzun ve kısa çubukları tasvir etti. Uzun çubuğun 1 ve kısa çubuğun 0 olduğunu varsayarsak, Çin'de ikili kod fikrinin resmi keşfinden çok önce var olma olasılığı vardır. Kodun deşifre edilmesi, orada yalnızca basit bir doğal sayı belirledi, ancak bu, kaldığı bir gerçektir.

İkili Dönüştürücü/Kodlayıcı

İkili dönüşümler yapmak için araç. İkili kod, bilişimde kullanılan taban 2'yi kullanan sayısal bir sistemdir, ikili gösterimde kullanılan semboller genellikle sıfır ve birdir (0 ve 1).

Soruların Cevapları

İkili bir sayı nasıl dönüştürülür?

Bir sayıyı ikiliye dönüştürmek (sıfırlar ve birler ile) 10 tabanından 2 tabanına (doğal ikili kod)

Örnek: 5 (taban 10) = 1*2^2+0*2^1+1*2^0 = 101 (taban 2)

Yöntem, art arda 2'ye bölme yapmaktan ve kalanı (0 veya 1 ) ters sırada not etmekten oluşur.

Örnek: 6/2 = 3 0 olarak kalır, sonra 3/2 = 1 1 olarak kalır, sonra 1/2 = 0 1 olarak kalır. Ardışık kalanlar 0,1,1 yani 6 yazılır 110 ikili.

İkili bir metin nasıl dönüştürülür?

Alfabenin her harfiyle bir sayı ilişkilendirin, örneğin kodu veya . Bu, her harfi daha sonra ikiliye dönüştürülebilecek bir sayı ile değiştirecektir (yukarıya bakın).

Örnek: AZ 65.90 () yani 1000001.1011010 ikili

Benzer şekilde, ikiliden metne çeviri için ikiliyi bir sayıya dönüştürün ve ardından bu sayıyı istenen koddaki bir harfle ilişkilendirin.

ikili nasıl çevrilir

İkili doğrudan tercüme etmez, herhangi bir sayı kodlanmıştır ikili bir sayı olarak kalır. Öte yandan, bilgisayar bilimlerinde, örneğin bir sayıyı bir harfle ilişkilendiren tabloyu kullanarak, metni depolamak için ikili kullanmak yaygındır. dCode'da bir çevirmen mevcuttur.

biraz nedir?

Bir bit (ikili basamağın daralması), ikili gösterimdeki bir semboldür: 0 veya 1.

1'in tümleyeni nedir?

Bilişimde, kişinin tümleyeni 0 ve 1'i ters çeviren bir sayı yazmaktır.

Örnek: 0111 1000 olur, yani 7 -7 olur

2'nin tümleyeni nedir?

Bilişimde, birinin tümleyeni, 0 ve 1'i negatif olarak ters çeviren ve 1 ekleyerek bir sayı yazmaktır.

Örnek: 0111, 1001 olur

yeni bir soru sor

kaynak kodu

dCode, çevrimiçi Binary Code komut dosyasının kaynak kodunun sahipliğini elinde tutar. Açık kaynak lisansı (Creative Commons / ücretsiz olarak belirtilir), herhangi bir algoritma, uygulama, snippet, yazılım (dönüştürücü, çözücü, şifreleme / şifre çözme, kodlama / kod çözme, şifreleme / şifre çözme, çevirmen) veya herhangi bir işlev (dönüştürme, çözme, şifre çözme) hariç dCode'un haklarına sahip olduğu herhangi bir bilişim dilinde (PHP, Java, C#, Python, Javascript, Matlab, vb.) yazılan , şifreleme, deşifre, cipher, decode, code, translate) ücretsiz olarak yayınlanmayacaktır. PC, iPhone veya Android'de çevrimdışı kullanım için çevrimiçi İkili Kod komut dosyasını indirmek için şu adresten fiyat teklifi isteyin:

gastroguru 2017