有没有办法在Python中获取数字的二进制表示?它也必须能够表示负数。我已经尝试了numpy np.binary_repr(Decimal(-1))
的功能,但它会导致错误。准确地说 - 我想以某种方式获得定点数的二进制表示(正数和负数),所以我可以将它们写入Verilog代码。定制二进制表示的定点编号
假设我有十进制数1,5
。我想用两位精度和三个整数位和一个符号来写它。在二进制这将是0001,10
,所以基本上000110
。我可以用手轻松做到这一点,但问题是我也有负面的,而且它们在点之后没有有限的扩展(如1/3
十进制)
更确切地说:如果我有数字如-1.5
,十进制符号,分数精度为2,整数精度为2,我希望数字110,10
是输出 - 第一个数字是符号,下两个数字,接下来的两个是分数。
有趣,但你能告诉我们输入及期望输出中? Verilog与python内部数字表示有什么关系?我想你想“模仿”Verilog代码预期的数字表示。 –
这不是关于蟒蛇内部数字表示。假设我有十进制数字“1,5”。我想用两位精度和三个整数位和一个符号来写它。在二进制中,这将是“0001,10”,所以基本上是“000110”。我可以用手轻松做到这一点,但问题是我也有负面问题,而且在点之后它们没有有限的扩展(例如十进制的“1/3”)。 –
[浮点到二进制]可能的重复(http://stackoverflow.com/questions/4838994/float-to-binary) – Hans