在Verilog中,有几种表示数值的方式,包括二进制、八进制、十进制和十六进制。以下是这些表示法的示例:

1. 二进制表示:
4'b1010  // 4位二进制数,表示十进制的10

  •  4'b表示这是一个4位的二进制数。


2. 八进制表示:
8'o17   // 8位八进制数,表示十进制的15

  •  8'o表示这是一个8位的八进制数。


3. 十进制表示:
12  // 十进制数,表示十进制的12

  •  十进制数在Verilog中可以直接用数字表示。


4. 十六进制表示:
16'h1A  // 16位十六进制数,表示十进制的26

  •  16'h表示这是一个16位的十六进制数。


范例:
module NumericRepresentationExample;
  reg [3:0] binaryNum = 4'b1010;
  reg [7:0] octalNum = 8'o17;
  reg decimalNum = 12;
  reg [15:0] hexNum = 16'h1A;
  
  initial begin
    $display("Binary: %b", binaryNum);
    $display("Octal: %o", octalNum);
    $display("Decimal: %d", decimalNum);
    $display("Hexadecimal: %h", hexNum);
  end
endmodule

这个简单的Verilog模块演示了不同进制的数值表示。在$display语句中,%b表示二进制,%o表示八进制,%d表示十进制,%h表示十六进制。这将输出: