Menu
Coddy logo textTech

Karşılaştırma Operatörleri

Coddy'nin Verilog Journey'sinin Temeller bölümünün bir parçası — ders 21 / 90.

Karşılaştırma operatörleri iki değeri karşılaştırır ve sonuç olarak 1 (doğru) veya 0 (yanlış) döndürür.

Kullanılabilir Karşılaştırma Operatörleri

OperatörAnlamı
==Eşittir
!=Eşit değildir
>Büyüktür
<Küçüktür
>=Büyük veya eşittir
<=Küçük veya eşittir

Kod Örneği

module comparison_demo;
  reg [3:0] a, b;
  reg result;
  
  initial begin
    a = 5;
    b = 3;
    
    result = (a == b);
    $display("5 == 3 : %d", result);  // 0 (yanlış)
    
    result = (a != b);
    $display("5 != 3 : %d", result);  // 1 (doğru)
    
    result = (a > b);
    $display("5 > 3  : %d", result);  // 1 (doğru)
    
    result = (a < b);
    $display("5 < 3  : %d", result);  // 0 (yanlış)
    
    result = (a >= 5);
    $display("5 >= 5 : %d", result);  // 1 (doğru)
    
    result = (a <= 3);
    $display("5 <= 3 : %d", result);  // 0 (yanlış)
    $finish;
  end
endmodule

Çıktı:

5 == 3 : 0
5 != 3 : 1
5 > 3  : 1
5 < 3  : 0
5 >= 5 : 1
5 <= 3 : 0

Koşullarda Karşılaştırmaları Kullanma

Karşılaştırmalar genellikle if ifadelerinde kullanılır:

if (count == 10)
  $display("Reached maximum");

if (value > threshold)
  $display("Value is too high");

Önemli Notlar

  • Karşılaştırma sonuçları 1-bitlik değerlerdir (0 veya 1)
  • Karşılaştırmalar her türlü bit genişliği ile çalışır
  • Sinyaller X veya Z içerdiğinde == ve != operatörlerine dikkat edin (X döndürürler)
challenge icon

Görev

Her bir görev için doğru karşılaştırma ifadelerini yazın.

Yapılacaklar:

  1. a değişkeninin b değişkenine eşit (equal) olup olmadığını kontrol edin ve sonucu eq içinde saklayın
  2. a değişkeninin b değişkeninden büyük (greater than) olup olmadığını kontrol edin ve sonucu gt içinde saklayın
  3. a değişkeninin b değişkeninden küçük (less) veya eşit (equal) olup olmadığını kontrol edin ve sonucu le içinde saklayın

Kendin dene

module comparison_challenge;
  reg [3:0] a, b;
  reg eq, gt, le;
  
  initial begin
    a = 4'd7;
    b = 4'd7;
    
    eq = ______;   // a b'ye eşittir
    gt = ______;   // a b'den büyüktür
    le = ______;   // a b'den küçük veya eşittir
    
    $display("a = %d, b = %d", a, b);
    $display("a == b : %d", eq);
    $display("a > b  : %d", gt);
    $display("a <= b : %d", le);
    $finish;
  end
endmodule
quiz iconKendini test et

Bu 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