- C言語なら俺に聞け(入門編)Part 130 [転載禁止]©2ch.net
538 :デフォルトの名無しさん[sage]:2015/10/26(月) 07:45:26.11 ID:FkTNVC7R - typedef struct { /* ビットフィールドの定義に注意 コンパイラのマニュアル要確認 */
char b7:1; /* または char b0:1; */ char b6:1; /* char b1:1; */ ... char b0:1; /* char b7:1; */ } bit_field; typedef union { /* バイトとビットフィールドの共用体 */ char byte; bit_field bit; } SFR; SFR sfr; /* レジスタの変数宣言 */ sfr.byte = 0; /* まとめてクリア */ sfr.bit.7 = 1; /* ビットフィールドで bit7 set */ sfr.byte |= 0x80; /* bit演算で bit7 set */
|
- C言語なら俺に聞け(入門編)Part 130 [転載禁止]©2ch.net
539 :デフォルトの名無しさん[sage]:2015/10/26(月) 07:48:27.26 ID:FkTNVC7R - 誤 sfr.bit.7 = 1
正 sfr.bit.b7 = 1
|
- C言語なら俺に聞け(入門編)Part 130 [転載禁止]©2ch.net
541 :デフォルトの名無しさん[sage]:2015/10/26(月) 08:13:00.03 ID:FkTNVC7R - よく分からないけど、入出力ポートの制御レジスタとかなら8bit単位が多いんじゃないの?
|