CHA
发表于 2010-6-26 09:07:44
应该是以补码形式表示吧
ngtim
发表于 2010-6-26 09:47:44
应该写成" -16'b3 "<br>
Verilog里是这样的
CTT
发表于 2010-6-26 10:40:29
可以直接写补码,或者把“-”加在前面
interig
发表于 2010-6-26 12:35:27
不能直接用负号,HDL不是高级编程语言,要尊重硬件的规则
CHANG
发表于 2010-6-26 13:57:46
是正是负都是是看自己怎么定义的拉
ATA
发表于 2010-6-26 14:14:02
想问问大家,原来上课的时候老师都说CPU的运算单元的输入是补码,其实我们在编程的时候输入的都是原码,那么这个原码转补码的过程是由编译器做的,还是由CPU的硬件电路做的?
interig
发表于 2010-6-26 15:15:57
应该是写在前面把,你可能后面要再写一个调治函数,verilog中是不能用负数的!
VVIC
发表于 2010-6-26 16:40:07
可以直接写负数或者直接写补码,综合以后都是补码形式,硬件里面是没有负号的,所有的都是自己定义的
tim
发表于 2010-6-26 17:38:46
建议用补码
UFO
发表于 2010-6-26 17:41:13
-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 编辑 ]