周波数を 8254 チップのカウンタ レジスタにロードするには、周波数を ax にロードしてから、al と ah を 1 つずつポート #42h に移動します。
mov ax,1fb4h
out 42h,al
mov al,Ah
out 42h,AL
わかりました、なぜそれが機能するのですか?上書きがあり、ポート 42h の最後の値は AH =>1f になると思います。そのため、b4 (下位ビット) がポートアドレスに保持されることはありません! だから私たちは周波数を緩めます...
これを使用できない理由:
out 42h,AX
ポート アドレス空間が AX よりも小さい場合、コードの最初の行が機能する理由とその方法は?