From 2e77659f4cce005d438b692b4495e8e70fd3f542 Mon Sep 17 00:00:00 2001 From: Raphael Roberts Date: Wed, 6 Nov 2019 23:19:49 -0600 Subject: [PATCH] Made Register.truncate truncate the register instance --- register.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/register.py b/register.py index 2e6b700..67deaa5 100644 --- a/register.py +++ b/register.py @@ -10,16 +10,19 @@ class Register: self.value = 0 Register.registers.append(self) - def truncate(self, value, bits=None): + def truncate_val(self, value, bits=None): if bits is None: bits = self.n_bits - return value & (1 << bits - 1) + return value & ((1 << bits) - 1) + + def trucate(self): + self.value = self.truncate_val(self.value) def set(self, value): if value < 0: - self.value = self.truncate(abs(value), self.n_bits - 1) + self.value = self.truncate_val(abs(value), self.n_bits - 1) self.negate() - self.value = self.truncate(value) + self.trucate() def get(self): return self.value