複製鏈接
請複製以下鏈接發送給好友

尋址技術

鎖定
尋址技術是指尋找數據及其它信息的地址的技術,它是軟件與硬件的一個主要分界面。尋址技術要研究的主要內容包括編址方式、尋址方式和定位方式等。尋址技術研究的對象主要有寄存器、主存儲器、堆棧和輸入輸出設備等,其中以面向主存儲器的尋址技術為主要研究對象。
中文名
尋址技術
外文名
addressing technique
又    稱
名字系統

尋址技術基本介紹

技術,也就是名字系統(Domain Name System,DNS)是傳統互聯網Internet的核心技術之一。DNS創建了一種用字符(主要是數字、字母)與互聯網上的服務器地址(IP地址)相互對應的解析關係,這種對應關係通常稱作“域名解析”,可以使得互聯網上的資源(站點)更容易記憶和傳播。域名(Domain Name)就是互聯網上的尋址服務。如新浪網的IP地址是202.108.33.32,而新浪網註冊了域名sina.com後,其訪問的地址就可以表示為www.sina.com了。
10年前,我們現在所熟知的傳統互聯網正是由於域名技術的誕生才得到了爆炸式發展:最初,人們是直接採用IP地址來完成網絡資源標識和尋址的。但是IP地址一長串的數字,不僅枯燥而且抽象,在記憶上也很不方便。那時的互聯網只是專業人士的特有名詞。這種情況一直持續到域名系統的誕生,用一個形象的英文符號代替繁瑣的IP地址,從而引爆了傳統互聯網的春天。至今,我們所熟悉的sina、sohu、taobao等等都是通過域名尋址技術,展現在我們每一個人眼前。然而,DNS只能同時為一個域名解析到一個IP地址或URL地址,而且域名的所有者也只能有一個。這樣就保證我們每次訪問一個網址的時候,只會看到唯一的一個對應的網站。
尋址技術,在計算機體系結構中,設計通用寄存器型指令結構時,用來指明指令中的操作數是一個常數,一個寄存器操作數或者是一個存儲器操作數 [1] 

尋址技術分類

尋址可以分為數據尋址和指令尋址。尋找操作數的地址稱為數據尋址,數據尋址方式較 多,其最終目的都是尋找所需要的操作數。尋找下一條將要執行的指令地址稱為指令尋址, 指令尋址比較簡單,它又可以細分為順序尋址和跳躍尋址。
順序尋址可通過程序計數器 PC 加 1,自動形成下一條指令的地址;跳躍尋址則需要通過 程序轉移類指令實現。
跳躍尋址的轉移地址形成方式有三種:直接(絕對)、相對和間接尋址,它與下面介紹 的數據尋址方式中的直接、相對和間接尋址是相同的,只不過尋找到的不是操作數的有效地 址而是轉移的有效地址而已 [2] 

尋址技術主要研究內容

尋址技術主要研究內容有編址方式、尋址方式、定位方式。主要研究對象為寄存器、主存儲器、堆棧、輸入輸出設備。

尋址技術編址方式

一、編址方式指對各種存儲設備進行編碼的方法。主要內容包括編址單位、零地址空間個數、並行存儲器編址技術、輸入輸出設備的非線性編址技術。
1.常用的編址單位有字編址、字節編址、位編址。字編址方式是最簡單、容易實現的一種。每個編址單位與設備的訪問單位一致,每取完一條指令,程序計數器加1,每從主存儲器中讀完一個數據,地址計數器加1。優點是容易實現、使用簡單;缺點是沒有提供對非數值運算的支持。為了提供對非數值運算的支持,往往使用字節編址或位編址技術,但在這兩種編址技術中,不同的信息存儲方式有不同主存儲器利用率。
2.在計算機中需要進行編址的設備主要有通用寄存器、主存儲器、輸入輸出設備。由於三種設備採用的尋址技術有較大的區別,可以對這三種分別進行編址,即每種設備都有自己的零地址空間(即三個零地址空間)。也可以對通用寄存器獨立編址,而對主存儲器和輸入輸出設備統一編址(即兩個零地址空間)。也可以對這三種設備進行統一編址,地址最底端分配給通用寄存器,最高端分配給輸入輸出設備,中間地址分配給主存儲器(即一個零地址空間)。另外,堆棧不需要編址,Cache也不需要編址。
3.對I/O設備的接口寄存器通常有三種不同的編址方法:1)給每台設備分配一個地址,這時需要根據指令中的操作碼來識別I/O設備上的不同寄存器;2)給每台設備分配兩個地址,一個給數據寄存器,一個給狀態寄存器或控制寄存器;3)在主存儲器和I/O設備統一編制的計算機中,往往根據不同的需要給I/O設備的有關寄存器分配多個地址。
4.一個主存儲器通常由多個獨立的存儲模塊(例如用兩塊256M的內存條組成512M的主存)組成,對於這些模塊往往有兩種不同的編址方式:1)如果只是簡單的擴大主存儲器容量,可以使用地址碼高位交叉編址方式,地址碼高位表示不同的存儲體,而低位表示每個存儲體內的地址,這種方式要求每個存儲模塊有獨立的地址寄存器、地址譯碼器、驅動電路、放大電路、讀寫控制電路、數據寄存器等控制部件,甚至要求存儲模塊有校驗電路、高速緩衝部件;如果要求提高存儲其訪問速度,則可以使用地址碼低位交叉編址方式,低位部分表示不同的存儲模塊,而高位部分表示不同存儲模塊的內部地址,不同的存儲模塊採用流水線方式工作而組成一個並行存儲器。

尋址技術尋址方式

二、尋址方式主要指尋找操作數及數據存放單元的方法。
1.立即數尋址方式中,直接在指令中給出操作數,執行速度快,只能用於元操作數尋址。
2.寄存器尋址。指令在執行過程中所需要的操作數來源於寄存器,運算結果也寫回到寄存器。
3.主存儲器尋址又分為直接尋址方式、間接尋址方式和變址尋址方式。直接尋址方式指在指令中直接給出參與運算的操作數及運算結果的主存儲器地址(有效地址),需要較長的地址碼,不利用實現程序循環或數組處理,也不利於操作系統的作業調度;間接尋址方式中在指令中給出操作數的地址的地址,可以兩次或更多次訪問主存儲器以獲得操作數;在變址尋址方式中,設置一個或多個變址寄存器(長度由主存儲器的尋址空間決定,也可以使用通用寄存器作為變址寄存器)用來存放數組的基地址。

尋址技術定位方式

三、定位方式指把指令和數據的邏輯地址轉換成主存儲器的物理地址的方式。
1.直接定位方式中,需要程序員編寫程序式或貶抑程序編譯源程序時確切知道該程序應該佔用的主存物理空間,可以保證主存物理地址不相互重疊。
2.靜態定位由專門設計的定位裝入程序完成,並要求程序本身可以重定位。靜態定位在程序裝入主存儲器的過程中一次性完成,程序一旦裝入主存儲器,就不能更改其在主存儲器中的物理地址。這種方式中,多個用户不能共享主存儲器中的同一段程序代碼。
3.在硬件支持下,動態定位在程序實際執行時,才由硬件形成主存物理地址,在程序執行之前,不必把整個程序裝入主存,一個程序也可以被分配在多個不連續的主存物理空間,有利於提高準儲器的利用率;並且多個程序可以共享主存中的同一段程序代碼;動態定位方式支持虛擬存儲器
參考資料