Menu
Coddy logo textTech

Aritmetik Operatörler

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

Verilog temel aritmetik operatörler sağlar: + (toplama), - (çıkarma), * (çarpma) ve / (bölme).

Kod Örneği:

module arithmetic_demo;
  reg [3:0] a, b;
  reg [7:0] add, sub, mul, div;
  
  initial begin
    a = 4'd9;
    b = 4'd4;
    
    add = a + b;    // 9 + 4 = 13
    sub = a - b;    // 9 - 4 = 5
    mul = a * b;    // 9 * 4 = 36
    div = a / b;    // 9 / 4 = 2
    
    $display("9 + 4 = %d", add);
    $display("9 - 4 = %d", sub);
    $display("9 * 4 = %d", mul);
    $display("9 / 4 = %d", div);
    $finish;
  end
endmodule

Çıktı:

9 + 4 = 13 9 - 4 = 5 9 * 4 = 36 9 / 4 = 2 

Önemli Notlar

  • Bölme tam sayı bölmesi gerçekleştirir (kesir yok)
  • Sonuç kaydedicisinin çarpma sonuçları için yeterince geniş olduğundan emin olun
challenge icon

Görev

Bu meydan okumada, +, -, * ve / operatörlerini kullanarak doğru aritmetik ifadeleri yazmanız gerekiyor.

Neler yapmalı:

  1. a + b işlemini hesaplayın ve add değişkeninde saklayın
  2. a - b işlemini hesaplayın ve sub değişkeninde saklayın
  3. a * b işlemini hesaplayın ve mul değişkeninde saklayın
  4. a / b işlemini hesaplayın ve div değişkeninde saklayın

Kopya kağıdı

Verilog aritmetik operatörleri: +, -, *, /

reg [3:0] a, b;
reg [7:0] add, sub, mul, div;

add = a + b;
sub = a - b;
mul = a * b;
div = a / b; // tam sayı bölmesi (kesir yok)

Not: Özellikle çarpma işlemi için sonuç yazmacının yeterince geniş olduğundan emin olun.

Kendin dene

module arithmetic_challenge;
  reg [3:0] a, b;
  reg [7:0] add, sub, mul, div;
  
  initial begin
    a = 4'd12;
    b = 4'd5;
    
    add = ______;   // a + b
    sub = ______;   // a - b
    mul = ______;   // a * b
    div = ______;   // a / b
    
    $display("12 + 5 = %d", add);
    $display("12 - 5 = %d", sub);
    $display("12 * 5 = %d", mul);
    $display("12 / 5 = %d", div);
    $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