【发布时间】:2012-12-08 21:09:38
【问题描述】:
为了将频率加载到8254芯片的计数器寄存器中,我们将频率加载到ax中,然后我们将al和ah一一移入端口#42h:
mov ax,1fb4h
out 42h,al
mov al,Ah
out 42h,AL
好的,为什么会这样?我认为有一个覆盖,端口 42h 的最后一个值将是 AH =>1f,所以永远不会将 b4(它们的低位)保留在端口地址中! 所以我们会放松频率...
为什么我们不能使用它:
out 42h,AX
如果端口地址空间小于 AX ,那么为什么第一行代码可以工作以及如何工作?
【问题讨论】:
-
为什么你的手指跳到关闭按钮上?累了吗?
-
查看pinout of the Intel 8254 并问自己为什么它不接受 16 位数据。没那么难理解!