メモリマップドI/OのI/OポートにアクセスするプログラムをC言語で記述するときの注意点として,適切なものはどれか。
- アセンブラのIN/OUT命令を用いたアクセス用関数を呼び出して,アクセスする。
- コンパイラによる最適化を抑止するため,volatile型修飾子を付けて宣言した変数へのポインタとしてアドレスを指定して,アクセスする。
- 他の関数からアクセスされるのを防ぐために,静的広域変数として宣言してアクセスする。
- ポインタではアクセスできないので,配列として実体を宣言してアクセスする。
解答
イ
解説
ー
- アセンブラのIN/OUT命令を用いたアクセス用関数を呼び出して,アクセスする。
ー - コンパイラによる最適化を抑止するため,volatile型修飾子を付けて宣言した変数へのポインタとしてアドレスを指定して,アクセスする。
ー - 他の関数からアクセスされるのを防ぐために,静的広域変数として宣言してアクセスする。
ー - ポインタではアクセスできないので,配列として実体を宣言してアクセスする。
ー
参考情報
分野・分類
分野 | テクノロジ系 |
大分類 | コンピュータシステム |
中分類 | コンピュータ構成要素 |
小分類 | プロセッサ |
出題歴
- ES 令和2年度秋期 問1
- ES 平成30年度春期 問1