CPU对外设的寻址为什么会分这两种,编址的实现到底是怎么样的一个概念?

CPU对外设的寻址为什么会分这两种,编址的实现到底是怎么样的一个概念?

独立和统一这两种编址形式,在系统启动以后是不是已经由CPU同时设定好,然后再根据用户使用的指令,临时决定使用哪种编址来寻址??

刚看有朋友说独立编址情况,需外围芯片支持,端口地址存在外围芯片中,那么统一编址的情况下是指外设接口中的寄存器被当作内存来使用吗?我可以用MOV等指令对其任意操作??

自学中,诸多不解,请各路侠客指教~


统一编址是把 内存的每个存储单元与外设一编址并不是外设占用内存 存储单元;例1111H   这个地址可以提供16个地址,内存储单元占10个,其余6个可以做为外设的地址。
独立编址就是外设与内存分开来,例:1111H     这16个地址全给内存,可用MOV等指令访问,外设另外有地址,CPU用专用的指令访问外设。
2:这个是由CPU自动设置的,这俩种只可选其中一种,并不是人为的。

3:并不是当作内存来使用,而是像访问内存一样来访问外设。

cpu有一根线,叫io/mem,这一根线,就控制了输出的地址是io地址,还是mem的地址。
当译码的时候,把这一根线加上就是了。
当然,你如果想把一个器件(外围设备)的编址,编到内存里也可以,那时候就要用mov来访问了。
那是一样的。
把内存编到io地址空间,也可以用in   ,out   指令来访问。都是一个样子的。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值