組み込み開発のためのPython · レッスン 32 / 220
ビット演算でフラグを扱う
ビット演算はレジスターのフラグ抽出や設定に使われます。Python整数は任意精度なので、ハードウェア幅をマスクし、符号付き値の解釈を仕様に合わせます。
ビット演算はレジスターのフラグ抽出や設定に使われます。Python整数は任意精度なので、ハードウェア幅をマスクし、符号付き値の解釈を仕様に合わせます。 このページでは、構文だけでなく、入力の検証と再現可能な確認方法も扱います。
考え方と使いどころ
ビット演算はレジスターのフラグ抽出や設定に使われます。Python整数は任意精度なので、ハードウェア幅をマスクし、符号付き値の解釈を仕様に合わせます。
組み込み開発での注意点
比較対象の型と単位をそろえます。ビット演算では対象幅、符号、マスクを仕様として明示してください。
コード例
手元のPython環境に貼り付ける前に、使用しているPythonの版と対象ライブラリの対応を確認してください。
status = 0b1010_0001
ready_mask = 0b1000_0000
fault_mask = 0b0000_0010
is_ready = bool(status & ready_mask)
has_fault = bool(status & fault_mask)
print(is_ready, has_fault)手を動かす課題
8ビット値から二つのフラグを抽出し、幅を超える入力をマスクしてください。