2011-10-12 95 views

回答

4

DMA控制器寄存器与CPU寄存器不同(在8237的情况下,它实际上是具有不同芯片的不同芯片)。编程时,可以使用CPU INOUT指令访问DMA控制器寄存器,如所链接的页面上所述(即“I/O端口”列)。

不同的硬件架构可能会提供访问DMA控制器寄存器的不同方法,例如它们可能是“存储器映射”而不是I/O端口。

+1

而且您还应该注意,就“DMA控制器”而言,“IO端口”号码是数字。就CPU而言,数量取决于芯片如何映射到CPU的I/O空间。所以如果芯片映射到400H,那么芯片寄存器87H将是CPU I/O端口487H。 –

+0

是的,好点。 –