Dijital Tasarım · Sayı Sistemleri ve Bit Deseni Yorumu
#02 Binary konumsal ağırlıklar, hexadecimal gruplama ve 8-bit two's complement
Bir byte'ı konumsal ağırlıklarla decimal ve hexadecimal sayıya çevir; aynı bit deseninin unsigned ve signed yorumlarını ayır.
Soru

10110101₂ bit desenini önce unsigned decimal, sonra hexadecimal sayıya dönüştürün. Ardından 11111011₂ desenini hem unsigned hem de 8-bit signed two's complement olarak yorumlayın; −5 temsilini bit tersleme ve bir ekleme yöntemiyle doğrulayın.
Yazılı çözüm ve anlatım dökümü(çözümün tamamını gösterir)
Aşağıda defterde yazılan bütün satırlar ve bunlara eşlik eden sesli anlatımın tam metni bulunur.
1. Sekiz bitin konumsal ağırlıklarını kur

Sağa doğru her ağırlık yarıya iner; en sağdaki bitin ağırlığı 1'dir. Binary, konumsal ve boyutsuz bir sayı sistemidir8-bit desen: b₇ b₆ b₅ b₄ b₃ b₂ b₁ b₀Ağırlıklar: 2⁷, 2⁶, 2⁵, 2⁴, 2³, 2², 2¹, 2⁰Sayısal değer = Σ bₖ·2ᵏYalnız değeri 1 olan bitlerin ağırlığı toplama girerYaygın hata: soldaki biti 2⁰ sanmakEn sağdaki bit 2⁰ = 1 ile başlarSesli anlatım metni
Geçen derste gerilim bite dönüşmüştü. Şimdi bir sonraki soruyu soruyoruz: bitler sayıya nasıl dönüşür? Binary, konumsal bir sayı sistemidir. Yani her bitin bir ağırlığı vardır. En sağdaki bitin ağırlığı birdir. Sonraki iki, sonra dört, sekiz, on altı diye gider. Bu yüzden sekiz bitlik bir byte, sadece yan yana duran switch'ler değildir. Ağırlıklı kararlar dizisidir. Aynı sıfır ve bir alfabesiyle counter, address, color, instruction ve memory content anlatabilmemiz buradan gelir.
2. 10110101₂ desenini decimal sayıya çevir

10110101₂ = 128 + 32 + 16 + 4 + 1 = 181₁₀. 10110101₂ için bitleri ağırlıkların altına yerleştir1·2⁷ + 0·2⁶ + 1·2⁵ + 1·2⁴+ 0·2³ + 1·2² + 0·2¹ + 1·2⁰Aralık kontrolü:Teklik kontrolü: en sağ bit 1 olduğundan sonuç tek olmalı181 tek sayıdır; iki kontrol de sonucu desteklerSesli anlatım metni
Şimdi bir bit desenini okuyalım: bir sıfır bir bir sıfır bir sıfır bir. Önce ağırlıkları yaz: yüz yirmi sekiz, altmış dört, otuz iki, on altı, sekiz, dört, iki ve bir. Sadece değeri bir olan konumlar toplama katılır. Yani yüz yirmi sekiz, artı otuz iki, artı on altı, artı dört, artı bir. Sonuç decimal olarak yüz seksen birdir. Güzel alışkanlık şudur: binary string'i ezberlemeye çalışma. Altına ağırlıkları koy, sadece aktif ağırlıkları topla.
3. Aynı deseni hexadecimal olarak yaz

1011₂ = B₁₆ ve 0101₂ = 5₁₆; birlikte B5₁₆. Hexadecimal dönüşüm için bitleri sağdan dörtlü grupla10110101₂ → 1011₂ | 0101₂Decimal kontrol:Yaygın hata: gruplamaya soldan başlamakSesli anlatım metni
Binary kesindir ama uzun binary dizileri insan için yorucudur. Hexadecimal burada mühendislik kısayoludur. Bir hex rakamı dört biti temsil eder; buna nibble deriz. Byte'ı iki nibble'a ayır: bir sıfır bir bir, ve sıfır bir sıfır bir. İlk grup decimal on birdir, hex'te B olur. İkinci grup beştir. Demek ki aynı byte, base sixteen içinde B beş, ya da programlama notasyonuyla sıfır x B beş diye yazılabilir. Donanımda hiçbir şey değişmedi; sadece deseni yazma biçimimiz değişti.
4. 11111011₂ desenini iki sözleşmeyle yorumla

Bitler değişmez; sonucu belirleyen unsigned veya signed veri tipi sözleşmesidir. Aynı bit deseni, farklı veri tipiyle farklı sayı olabilir11111011₂ unsigned = 128 + 64 + 32 + 16 + 8 + 2 + 18-bit signed yorumda MSB = 1 → sayı negatiftir11111011₂ signed = −5₁₀8-bit signed aralık kontrolü:Sesli anlatım metni
Şimdi kritik uyarı geliyor. Bir bit pattern kendi anlamını tek başına taşımaz. Anlamı sözleşme verir; yazılım diliyle söylersek data type verir. Bir bir bir bir bir sıfır bir bir deseni, unsigned okunursa iki yüz elli bir demektir. Ama sekiz bit signed two's complement sistemde aynı desen eksi beş demektir. Aynı bitler, farklı sözleşme. Bu yüzden dijital tasarım sürekli şunu sorar: bu pattern burada neyi temsil ediyor?
5. −5'i two's complement ile yeniden üret

+5'in bitlerini tersle ve 1 ekle: 00000101 → 11111010 → 11111011. +5'i 8 bitte yaz: 00000101₂Bütün bitleri tersle: 11111010₂Bir ekle:11111011₂, 8-bit two's complement içinde −5'tirToplama kontrolü: 11111011₂ + 00000101₂= 1 00000000₂ → 8 bitte taşıyı at → 00000000₂−5 + 5 = 0; temsil tutarlıYaygın hata: bitleri tersleyip 1 eklemeyi unutmakSesli anlatım metni
Hızlı bir two's complement örneği yapalım. Sekiz bitte pozitif beşi yazmak için sıfır sıfır sıfır sıfır sıfır bir sıfır bir kullanırız. Eksi beş yapmak için önce bütün bitleri ters çeviririz: bir bir bir bir bir sıfır bir sıfır. Sonra bir ekleriz ve bir bir bir bir bir sıfır bir bir elde ederiz. Bu, eksi beşin sekiz bit two's complement gösterimidir. Güzelliği şudur: toplama donanımı sade kalır. Aynı adder hem pozitif hem negatif değerleri toplayabilir, çünkü kodlama aritmetiği çalıştıracak şekilde seçilmiştir.
6. Binary, hex ve signed yorumları ayır

Aynı bitler için yazım tabanı ve signed yorum birbirinden ayrı sözleşmelerdir. Binary: bit konumları 2'nin kuvvetleriyle ağırlıklanırHex: sağdan her 4 bit tek rakama dönüşürSigned: veri tipi aynı bit desenine sayı anlamı verir11111011₂ = 251 unsigned = −5 signedSonraki adım: bitleri mantık kapılarında kullanmakSesli anlatım metni
İkinci zihinsel modelimiz bu. Binary her bit konumuna bir ağırlık verir. Hexadecimal her dört biti okunabilir tek rakama paketler. Signed sayılar bit pattern'in üstüne bir sözleşme ekler; aynı bitler büyük pozitif bir sayı ya da negatif bir sayı anlamına gelebilir. Sonraki derste bu bitleri logic input olarak kullanacağız ve temel kapılar için truth table kuracağız: NOT, AND, OR, NAND ve XOR.
Kaynak video: Dijital Tasarım #02 | Binary, Hex ve Signed Sayılar (3:34)