def testPrependAfterCreationFromDataWithOffset(self): s1 = BitArray(bytes=b'\x00\x00\x07\xff\xf0\x00', offset=21, length=15) self.assertFalse(s1.any(0)) s1.prepend('0b0') self.assertEqual(s1.bin, '0111111111111111') s1.prepend('0b0') self.assertEqual(s1.bin, '00111111111111111')
def execute(self, processor): if processor.condition_passed(): operand1 = processor.registers.get(self.n).int operand2 = processor.registers.get(self.m).int result = operand1 * operand2 f_result = BitArray(int=result, length=64)[32:] processor.registers.set(self.d, f_result) if self.setflags: processor.registers.cpsr.set_n(f_result[0]) processor.registers.cpsr.set_z(not f_result.any(True)) if arch_version() == 4: processor.registers.cpsr.set_c(False) # uknown
def testAny(self): a = BitArray('0b0001') self.assertTrue(a.any(1, [0, 1, 2]))