Exemple #1
0
 def test_extend_positive(self):
     """Sign extension of a positive number doesn't change it.  Note high
     bit in field must be zero.  7 is a positive number in a 3-bit field,
     but a (different) negative number in a 3-bit field.
     """
     self.assertEqual(sign_extend(7, 4), 7)
     self.assertNotEqual(sign_extend(7, 3), 7)
     self.assertTrue(sign_extend(7, 3) < 0)
Exemple #2
0
 def test_extend_negative(self):
     """For negative numbers, sign extension restores the high bits"""
     chunk = (-3) & 0b111
     self.assertEqual(sign_extend(chunk, 3), -3)