五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

外設(shè)端口是如何獲得地址的

2023-03-26 17:51 作者:我愛計算機科學  | 我要投稿

計算機與外設(shè)是通過端口來交換信息的,外設(shè)的每個端口都必須有自己的地址,cpu才能找到這些端口,那么,這些端口的地址是如何得到的呢?




統(tǒng)一編址和獨立編址最重要的區(qū)別就在于,在統(tǒng)一編址的時候,外設(shè)端口和內(nèi)存單元完全一樣,每個外設(shè)端口的地址占用一個內(nèi)存單元的地址,兩者不能重復,也不能區(qū)分;獨立編址的時候,外設(shè)端口的地址和內(nèi)存地址是分開來的,兩者地址可以相同,但使用的讀寫命令不同。

由上圖可以看出,圖中的8255芯片地址是90H,91H,等等。由于8255一共四個端口,其中的A1A0用來確定具體哪個端口,而A7-A2我們則可以推出是100100,再假設(shè)A1A0就構(gòu)成地址100100A1A0,也就是90H--93H。這就是端口編址的意思。

上圖是8255的四個端口。

上圖是8253與cpu的連接。這里8253的地址都是偶地址,因為cpu說的A0地址線一直是低電平有效,而8253的四個端口地址則由CPU的A2A1確定,也就是8253上面的A1A0確定,但要注意的是,最終的地址是以cpu的地址線為準的。

上圖是8253結(jié)構(gòu)圖。

上面的例子都是獨立編址的,因為cpu訪問這些端口的指令都是IN和OUT,而不是MOVE。

對于ARM架構(gòu)的處理器,都是IO與內(nèi)存統(tǒng)一編址:

(1)類似于訪問內(nèi)存的方式,即把外設(shè)的寄存器當作一個內(nèi)存地址來讀寫,從而以訪問內(nèi)存相同的方式來操作外設(shè),叫IO與內(nèi)存統(tǒng)一編址方式

(2)例如ARM架構(gòu)下,我們寫的代碼要適應(yīng)ARM架構(gòu)的IO與內(nèi)存統(tǒng)一編址的情況,所有我們訪問IO的時候,也就是讀寫寄存器,讀寫硬件就是在進行IO,IO和內(nèi)存一樣也有個地址(內(nèi)核統(tǒng)一編址機制已經(jīng)做好代碼定義),被統(tǒng)一化了。


也就是說。如果是統(tǒng)一編址,就無法在指令上去區(qū)分是內(nèi)存單元還是外設(shè)端口。

無論統(tǒng)一還是獨立編址,外設(shè)端口的地址都來源于cpu的地址線。


外設(shè)端口是如何獲得地址的的評論 (共 條)

分享到微博請遵守國家法律
高唐县| 自贡市| 修武县| 来凤县| 巴林右旗| 潼关县| 鹿泉市| 韩城市| 高州市| 沙坪坝区| 盱眙县| 丰顺县| 田东县| 南陵县| 溧水县| 文成县| 泊头市| 佛学| 墨脱县| 雅安市| 泸州市| 鹿泉市| 双辽市| 化州市| 海城市| 牡丹江市| 南和县| 定兴县| 江门市| 稻城县| 肇源县| 鄂伦春自治旗| 竹北市| 中江县| 伊宁县| 黎城县| 唐河县| 康定县| 广饶县| 峨边| 汉川市|