-
符号なし整数のバイナリ表現: 符号なし整数は正の整数であり、通常、バイナリ表現の最上位ビットは符号を示すビットではありません。以下は、10進数の符号なし整数をバイナリに変換する方法のコード例です。
def decimal_to_binary_unsigned(n): return bin(n)[2:] # 使用例 decimal_number = 42 binary_number = decimal_to_binary_unsigned(decimal_number) print(binary_number) # 結果: '101010'
-
符号付き整数のバイナリ表現: 符号付き整数は正または負の整数であり、バイナリ表現の最上位ビットは符号を示すビットです。以下は、10進数の符号付き整数をバイナリに変換する方法のコード例です。
def decimal_to_binary_signed(n): if n < 0: binary = bin(n & 0b11111111_11111111_11111111_11111111)[2:] else: binary = bin(n)[2:] return binary.zfill(32) # 32ビットの固定長表現としてゼロ埋め # 使用例 decimal_number = -42 binary_number = decimal_to_binary_signed(decimal_number) print(binary_number) # 結果: '11111111111111111111111111010110'
-
バイナリから10進数への変換: バイナリ表現から10進数に変換する方法もあります。以下は、バイナリ文字列を10進数に変換する方法のコード例です。
def binary_to_decimal(binary): return int(binary, 2) # 使用例 binary_number = '101010' decimal_number = binary_to_decimal(binary_number) print(decimal_number) # 結果: 42