Fix printing of full-precision fixed-point numbers in binary circuits.

This commit is contained in:
Marcel Keller
2020-09-29 13:21:16 +10:00
parent 273580a58f
commit 20ca2c97f5

View File

@@ -856,9 +856,11 @@ class cbitfix(object):
def __init__(self, value):
self.v = value
def output(self):
bits = self.v.bit_decompose(self.k)
sign = bits[-1]
v = self.v + (sign << (self.k)) * -1
v = self.v
if self.k < v.unit:
bits = self.v.bit_decompose(self.k)
sign = bits[-1]
v += (sign << (self.k)) * -1
inst.print_float_plainb(v, cbits(-self.f, n=32), cbits(0), cbits(0), cbits(0))
class sbitfix(_fix):