关于FPGA中有符号数表示方法的一些认识

       有符号数的2进制表示方法是:最高位表示符号位,‘1’表示负数,‘0’表示正数。

       通常负数以补码的形式出现。例如一个4bit数,首先它能够表示的有符号数的范围从-8~7。-8的二进制补码值为4'b1000,-7的二进制补码值为4'b1001...,正数的二进制补码等于它本身,即2的二进制补码值为4'b0010。

       关于有符号数的Verilog写法如下:

       reg signed [3:0] rega;

       reg signed [3:0] regb;

       rega = -4'd6;//写法1

       regb = 4'shA;//写法2,A即1010,1010为-6的补码值。

       上面的代码,定义了一个4bit位宽的reg变量。仿真一下就可以看到,两种写法用有符号10进制表示,都是-6。

关于FPGA中有符号数表示方法的一些认识