外设单独编址与统一编址

当主机需要访问外设的时候就涉及到寻找I/O接口中的寄存器的方式,也就是寻找I/O端口的方式。
外设编址有两种方法:外设单独编址与外设统一编址。
外设单独编址:
编址到寄存器,为每个寄存器(I/O端口)分配单独的端口地址,此时I/O地址可以与内存地址重叠(内存地址可以从1–N,外设地址也可以从1–N);但操作时为了区分访问的是内存或者时端口,此时需要设置标志位区分访问对象
使用专用的I/O指令,例如:IN AL,n;
外设统一编址:
编址到寄存器,为每个I/O端口分配总线地址,访问外设需要给出总线地址。
注意此时外设编址不能和主存地址相同(内存地址可以从1–N,外设地址则不能从1–N);常将存储空间的低地址分配给主存单元,高地址分配给I/O端口,此时I/O端口就会占据部分主存地址。
使用传送指令实现I/O操作,即用访存指令进行I/O操作。

你可能感兴趣的:(外设单独编址与统一编址)