阅读:906回复:1
这几个问题一直没有搞明白,请大侠指点一二
我是一个初学者,我想问各位大侠一个问题:
一个设备的IO地址范围是由硬件的结构和接口来唯一确定的吗? 一般一个设备的IO地址是一个范围,在这个范围内不同的IO地址,是不是对应于的硬件上不同的寄存器? 比如:并口打印机:378表示数据寄存器,37A表示控制寄存器,37B表示地址寄存器,这样我在程序中用out(37B,addr)此时PC是不是就只对地址寄存器进行操作,而与其它寄存器无关呢? 还有怎么知道一个寄存器的位数呢?(多少个字节),按理说,37B地址寄存器的位数应该是4位的,因为32位机器的地址是4个字节表示的,但是我看到实际它的大小是一个字节的,那它怎么能存放一个地址呢? 还有像PCI总线,它既有IO地址范围,也有内存范围(这是不是DMA的结果),那么这个内存范围是谁给分配的呢,还是与硬件的结构有关系呢?进行读写操作的时候,应该读写内存还是读写IO地址呢?请给位大侠不吝赐教. |
|
沙发#
发布于:2003-05-07 17:50
我在邮件中回了,请查收。
|
|