独立编址和统一编址

来源:互联网 发布:北京php培训机构 编辑:程序博客网 时间:2024/05/16 19:29

独立编址

  在不同的微机系统中,IO端口的地址编排有两种形式:存储器统一编址和IO独立编址。   IO独立编址   IO端口编址和存储器的编址相互独立,即I0端口地址空间和存储器地址空间分开设置,互不影响。采用这种编址方式,对IO端口的操作使用输入/输出指令(IO指令)。   I0独立编址的优点是:不占用内存空间;使用IO指令,程序清晰,很容易看出是IO操作还是存储器操作;译码电路比较简单(因为I0端口的地址空间一般较小,所用地址线也就较少)。其缺点是:只能用专门的I0指令,访问端口的方法不如访问存储器的方法多。   上面两种编址方式各有优点和缺点,究竟采用哪一种取决于系统的总体设计。在一个系统中也可以同时使用两种方式,前提是首先要支持IO独立编址。:Intelx86微处理器都支持IO独立编址,因为它们的指令系统中都有IO指令,并设置了可以区分IO访问和存储器访问的控制信号引脚。而一些微处理器或单片机,为了减少引脚,从而减少芯片占用面积,不支持IO独立编址,只能采用存储器统一编址。

统一编址

   

概念

  存储器统一编址,即从存储空间中划出一部分地址给I/O端口。CPU访问端口和访问存储器的指令在形式上完全相同,只能从地址范围来区分两种操作。 

优点

  对端口操作的指令类型多,功能全,不仅能对端口进行数据传送,还可以对端口内容进行算术逻辑运算和移位运算;其次是有较大的编址空间; 

缺点

  端口占用存储器的地址空间,使存储器的可用地址空间变小;端口指令的长度增加,执行时间变长;由于访问I/O与访问内存的指令一样,在程序中不易分清楚是访问I/O端口还是访问内存,使得阅读困难;端口地址译码器较复杂

原创粉丝点击