当我们把U盘插到电脑上时,便可以方便地对U盘进行使用。
那么,计算机和外部设备是如何进行连接的呢?
从上面两个图我们看到,CPU和外设连接,都必须通过数据线、地址线和控制线。
上图中的端口这里予以重点解释:
比如在51单片机中,其CPU有4个端口:
而每个端口中的每一位都由如下类似的电路构成的:
也就是说,51的每个端口,比如P0,都是由上图中八个同样的电路构成。这个端口电路的作用就是用来和外部设备连接并进行信息交换的。
MCS-51单片机p0,p1,p2,p3端口的字节地址是:
P0:80H
P1:90H
P2:0A0H
P3:0B0H
也就是说,CPU自身访问P0口,就是通过80H这个地址进行的,比如
MOV P0,#11101111B
或者MOV AL,(80H)
同样的,I/O设备也有类似的端口电路,CPU和外设的连接正是通过地址总线实现的:
上图进一步解释了这个过程。
CPU端口和外设的连接方式:
1:直接连接,比如信号灯:
2:通过设备的相应端口,比如52单片机和U盘的连接:
3:通过接口电路,比如8255接口芯片:
上述无论哪种连接方式,对于P1端口、USB外设还是8255芯片,CPU都给它们赋予了一个固定的端口地址,CPU正是通过端口地址来实现对外部设备的访问的。
我们看到,一块主板上有很多的接口和插槽,这些接口和插槽都和CPU的某个端口连接在一起,任何一个外设可以选择其中的一个插槽插入从而与CPU建立连接,但无论哪个端口,都有一个固定的端口地址。
上图可以加深对于端口的理解。
上图表示,当图右边的CPU要与外部设备进行信息交换的时候,首先要找到这个设备,这是通过地址线来完成的。CPU一般要通过中间电路与外设相连,原因大概包括外设种类繁多、需要通过总线统一接口标准等等:
将上面这条端口访问指令与
这条数据传送指令对比,可以看出,cpu对于外设的访问,与普通的内存单元没什么两样。
因此,与计算机连接的外部设备,有些有自己的存储芯片,如U盘,数码相机等,用于和cpu交换数据(当然也有很多没有存储芯片的外设,比如信号灯),cpu和这些外设相连,其实是和它们带有的存储芯片相连,也就和cpu与内存的连接没什么两样,只不过CPU访问这种外设里面的存储单元是通过某个固定的端口电路进行的。
简单总结:
1:端口首先是一个电路。
2:cpu与外设连接,首先是选中这个设备,然后再和这个设备进行数据读写,而选择设备其实就是选择端口。
3:外设与cpu相连,只能通过CPU某个固定的端口,而每个端口都有一个固定的地址。
4:外设可以选择某个端口插入与CPU建立连接。
5:外设插入端口(插槽)以后,就相当于通过地址总线和数据总线与CPU建立了连接,CPU通过这个固定的端口对外设进行访问,而且无论交换多少数据,都只能通过这个端口进行。这个时候外设和普通的内存单元就没什么两样了。
免责声明: 文章源于会员发布,不作为任何投资建议
如有侵权请联系我们删除,本文链接:https://www.sws100.com/baike/441833.html