メモリマップドI/Oとは?めもりまっぷどあいおー
メモリマップドI/Oとは、周辺デバイスの制御レジスタを主記憶と同じアドレス空間に割り当て、通常のロード/ストア命令でアクセスできるようにする方式。専用の入出力命令が不要で、ポインタ操作でデバイスを扱える。
最終更新:2026-10-06
情報処理安全確保支援士を最短で暗記・合格する →具体例
C言語では、アドレスを volatile 修飾したポインタにキャストしてレジスタを読み書きする。volatile を付けないと、値が変わらないとみなしたコンパイラの最適化で読み書きが削除・移動されてしまう。
試験での引っ掛け
volatile は「最適化の抑止」であって、割込みやマルチコアに対する排他制御やアトミック性は保証しない。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。