İkilik Gösterim
Coddy'nin Verilog Journey'sinin Temeller bölümünün bir parçası — ders 13 / 90.
Verilog'da, yalnızca 0 ve 1'den anlayan dijital devrelerle çalışırız. Bunlar ikili sistemde temsil edilir.
İkili sistem yalnızca iki rakam kullanır: 0 ve 1. Her bir ikili basamağa bit denir.
| Ondalık | İkili | Bit |
|---|---|---|
| 0 | 0 | 1 bit |
| 1 | 1 | 1 bit |
| 2 | 10 | 2 bit |
| 3 | 11 | 2 bit |
| 4 | 100 | 3 bit |
| 5 | 101 | 3 bit |
Verilog'da İkili (Binary) Yazımı
Verilog'da ikili sayıları yazmak için 'b önekini kullanın:
4'b1010 // 4-bit ikili 1010 (ondalık 10)
8'b11110000 // 8-bit ikili 11110000 (ondalık 240)
2'b01 // 2-bit ikili 01 (ondalık 1)'b'den önceki sayı, Verilog'a değerin kaç bite sahip olduğunu söyler.
Ondalık Sayı İkiliye Nasıl Dönüştürülür
Ondalık sayıyı sürekli olarak 2'ye bölün ve kalanları aşağıdan yukarıya doğru okuyun.
Örnek: 9 sayısını ikili sisteme dönüştürün
| Adım | Bölme | Bölüm | Kalan |
|---|---|---|---|
| 1 | 9 ÷ 2 | 4 | 1 |
| 2 | 4 ÷ 2 | 2 | 0 |
| 3 | 2 ÷ 2 | 1 | 0 |
| 4 | 1 ÷ 2 | 0 | 1 |
Kalanları sondan başa doğru okuyun: 1001
9 = 4'b1001
Kod İçinde Örnek
module binary_example;
reg [3:0] a;
initial begin
a = 4'b1010; // İkilik 1010 = onluk 10
$display("a = %b (binary)", a);
$display("a = %d (decimal)", a);
$display("a = %h (hex)", a);
$finish;
end
endmoduleÇıktı:
a = 1010 (ikili)
a = 10 (onluk)
a = a (onaltılık)Görev
Eksik ikili (binary) değerleri yazarak kodu tamamlayın.
Yapılması gerekenler:
- Ondalık 5 için ikili (binary) değeri yazın (4 bit)
- Ondalık 14 için ikili (binary) değeri yazın (4 bit)
Kopya kağıdı
İkili (Binary) sistem yalnızca 0 ve 1 kullanır. Her basamak bir bit'tir.
Verilog'da ikili sayıları 'b öneki ile yazın — önündeki sayı bit genişliğini belirtir:
4'b1010 // 4-bit ikili = onluk 10
8'b11110000 // 8-bit ikili = onluk 240Görüntüleme formatları: %b (ikili), %d (onluk), %h (onaltılık).
Onluktan ikiliye: sürekli 2'ye bölün, kalanları aşağıdan yukarıya doğru okuyun.
// 9 ÷ 2 → 4 k1 → 2 k0 → 1 k0 → 0 k1 ⟹ 1001
// 9 = 4'b1001Kendin dene
module binary_challenge;
reg [3:0] a, b;
initial begin
// Ondalık 5 için ikili (binary) değeri yazın (4 bit)
a = 4'b______;
// Write binary for decimal 14 (4 bits)
b = 4'b______;
$display("5 = %b", a);
$display("14 = %b", b);
$finish;
end
endmoduleBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerModül OperatörüKarşılaştırma OperatörleriÖzet - Basit MatematikBitsel Operatörler7Atama ve Kapılar
Sürekli AtamaOperatörlerle AtamaYerleşik Kapı PrimitifleriAND OR NOT KapılarıXOR XNOR KapılarıÖzet - Mantık Kapısı Devresi10Karar Yapıları
If İfadesiIf - ElseÖzet - Basit KarşılaştırıcıCase İfadesiCasex ve CasezÖzet - ALU Tasarımı5Operatörler Bölüm 2
Mantıksal Operatörlerİndirgeme OperatörleriKaydırma OperatörleriBirleştirme OperatörüKoşullu OperatörÖzet - Operatör Meydan Okuması11Döngüler
For DöngüsüWhile DöngüsüRepeat DöngüsüSonsuz DöngüDevre Dışı Bırakma İfadesiÖzet - Döngü Kalıpları3Sayı Sistemleri
İkilik GösterimBoyutlandırılmış SayılarBoyutlandırılmamış SayılarNegatif SayılarÖzel Değerler X ve ZÖzet - Sayı Formatları6Modüller
Modül YapısıGiriş ve Çıkış PortlarıInout PortlarıModül Örneklendirmeİsme Göre Port EşlemeSıraya Göre Port EşlemeÖzet - Bir Modül Oluşturun9Prosedürel Bloklar
Always BloğuInitial BloğuDuyarlılık ListesiEngelleyici AtamaEngelleyici Olmayan AtamaÖzet - Always vs Initial15Trafik Işığı Kontrolcüsü
Durumları TanımlamaDurum Makinesi Mantığı