当前位置: > verilog 有符号数运算...
题目
verilog 有符号数运算
在下面的代码中:
reg [0:5] bar;
integer tab;
tab = - 4'd12 /4;//tab被赋于十进制1073741821(位值为011...11101)
我的问题是:作为有符号数,为什么进行上步操作后,tab对应的十进制数是1073741821呀?
本人初学者,有很多地方想不明白.

提问时间:2020-10-12

答案
这是正确的,
integer在verilog中是有符号的32位数,最高位为符号位,表示的范围为:
-(2的31次方)到2的31次方减1.tab是负数(-3),它的补码即为011...11101,若用十进制显示则为1073741821,你若用有符号的十进制显示则会显示-3.
你观察一下011...11101,若加个3会怎么样?是不是只有最高位为1了?这就是补码的原理.
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
版权所有 CopyRight © 2012-2019 超级试练试题库 All Rights Reserved.