应该是以补码形式表示吧
应该写成" -16'b3 "<br>
Verilog里是这样的
可以直接写补码,或者把“-”加在前面
不能直接用负号,HDL不是高级编程语言,要尊重硬件的规则
是正是负都是是看自己怎么定义的拉
想问问大家,原来上课的时候老师都说CPU的运算单元的输入是补码,其实我们在编程的时候输入的都是原码,那么这个原码转补码的过程是由编译器做的,还是由CPU的硬件电路做的?
应该是写在前面把,你可能后面要再写一个调治函数,verilog中是不能用负数的!
可以直接写负数或者直接写补码,综合以后都是补码形式,硬件里面是没有负号的,所有的都是自己定义的
建议用补码
-16'd3 <br>
-3<br>
都是可以使用的。<br>
16'd-3<br>
是不可以使用的。<br>
但只要出现“xx'dxx,xx'bxx,xx'hxx”这种based number, verilog都当作unsigned,<br>
相对而言<br>
-3 verilog是当作signed,<br>
但是建议,在verilgo中不要使用负数,<br>
你用补码表示不是就一目了然了吗?<br>
<br>
[ 本帖最后由 amormio124 于 2006-8-30 22:56 编辑 ]
