ldd3中写到: 并口的最小配置由3个8位端口组成。pc标准中第一个并口的I/O端口是从地址0x378开始第二个端口是从地址0x278開始,第三个从0x3bc开始第三个端口是一个只用于输出的控制寄存器。
这个注释有点问题应该不是第三个端口,而是某个端口的第三个寄存器
这段代码前面有一段话:
这就是说:对于任何一个端口,写入该端口的寄存器2(也就是short_base+2)就可以开启中断。
硬件驱动里面有很多类似嘚代码
通常的硬件都有很多寄存器,他们的地址都是: 一个基地址(不固定) + 一个偏移量(固定)
每个端口的基地址不同但是,只要把基地址設置对了可以用同样的代码来操作不同的端口。
我觉得这里的“端口”这个词用的有点歧义了
准确地说,应该是有3个并口每个并口囿8个寄存器。只要弄明白这个区别其他的就容易理解了。
是的不过很多PC只有一个并口,在BIOS里面也可以把这个并口配置在0x378或者0x278的
ldd3中写到: 并口的最小配置由3个8位端口组成。pc标准中第一个并口的I/O端口是从地址0x378开始第二个端口是从地址0x278開始,第三个从0x3bc开始第三个端口是一个只用于输出的控制寄存器。
这个注释有点问题应该不是第三个端口,而是某个端口的第三个寄存器
这段代码前面有一段话:
这就是说:对于任何一个端口,写入该端口的寄存器2(也就是short_base+2)就可以开启中断。
硬件驱动里面有很多类似嘚代码
通常的硬件都有很多寄存器,他们的地址都是: 一个基地址(不固定) + 一个偏移量(固定)
每个端口的基地址不同但是,只要把基地址設置对了可以用同样的代码来操作不同的端口。
我觉得这里的“端口”这个词用的有点歧义了
准确地说,应该是有3个并口每个并口囿8个寄存器。只要弄明白这个区别其他的就容易理解了。
是的不过很多PC只有一个并口,在BIOS里面也可以把这个并口配置在0x378或者0x278的