예제 #1
0
파일: dcpu16.py 프로젝트: startling/sixteen
 def signed_wrapper(self, state, b_unsigned, a_unsigned):
     b = as_signed(b_unsigned)
     a = as_signed(a_unsigned)
     value = from_signed(fn(self, state, b, a))
     # handle overflow for signed values
     overflow, result = divmod(value, self.cells)
     # NOTE: this clears overflow for all signed operations.
     # this may be wrong; I don't care right now.
     return value, overflow
예제 #2
0
파일: dcpu16.py 프로젝트: startling/sixteen
 def signed_conditional_wrapper(self, state, b, a):
     return fn(self, state, as_signed(b), as_signed(a))
예제 #3
0
파일: bits.py 프로젝트: startling/sixteen
 def test_as_signed(self):
     for v, u in self.values:
         self.assertEqual(v, as_signed(u))