"""练习 19 进阶版:用位掩码生成 8 位原码、反码和补码。""" number = int(input()) if not -127 <= number <= 127: raise ValueError("本练习范围为 -127 到 127") magnitude = abs(number) is_negative = number < 0 sign_magnitude = (int(is_negative) << 7) | magnitude ones_complement = ((~magnitude) & 0xFF) if is_negative else number twos_complement = number & 0xFF print("sign-magnitude:", format(sign_magnitude, "08b")) print("ones-complement:", format(ones_complement, "08b")) print("twos-complement:", format(twos_complement, "08b"))