- 914 名前:デフォルトの名無しさん [2009/01/14(水) 00:27:07 ]
- >>912
AT互換機の8254等はもともと8bit CPUの8085周辺用に設計されたものなので、 16bitタイマのレジスタでも、タイマ内部でダブルバッファ構造とすることで、 バイト単位での読み書きに対応できるようになっている。 具体的には、下位バイト読み込み時に16bitの値をテンポラリにラッチして、 後から上位バイトを読んでも下位バイト読み込み時に保持された値を読み 出す。 書き込み時には、下位バイトを書き込んだ時にはテンポラリに ラッチし、後から上位バイトを書き込む時に、16bitデータを一括でレジ スタに書き込むようになっている。 但し、上位/下位バイトアクセス中に、割込処理内で同じI/Oデバイスのレジ スタにアクセスされると困るので、レジスタ読み/書き中は割込禁止しなけ ればならん。 それに、AT互換機と違ってNEC PC-9801シリーズなんて、ダイナミックバス サイジング機構を搭載していないので、8-bit I/Oが1バイトおきにマップ されていて、そもそもワードI/O命令が使えない。
|

|