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

尋址

(計算機術語)

鎖定
尋址是數據恢復技術的基礎,是定位數據和扇區的關鍵。尋址這個概念比較抽象,簡單的説是磁頭在盤片上定位數據的一個過程。如果你想找到你的計算機中的一個文件,你可能會在Windows中先打開我的電腦、分區、文件夾,再打開你要找的文件。這是表面的尋找文件的過程,而磁頭在盤片的尋找過程就是尋址。 尋址在數據恢復中為什麼非常重要?因為當數據出現丟失的情況後,你在我的電腦、分區、文件夾下就找不到這個文件了,甚至找不到文件夾和分區。
計算機有多種尋址方式,如立即數尋址方式,寄存器尋址,存儲器尋址方式,與I/0端口有關的尋址方式,又包括直接端口尋址和間接端口尋址。 [1] 
中文名
尋址
外文名
Addressing
類    型
計算機術語
領    域
計算機操作系統
分    類
邏輯尋址和物理尋址

尋址邏輯尋址

邏輯尋址是將硬盤所有扇區認為是一個柱形,扇區從0開始一直排到無窮大。當然硬盤的容量決定扇區的總數。在邏輯尋址中,某一個扇區的描述就是某某某某(數字)扇區。

尋址物理尋址

物理尋址也稱C.H.S(Cylinder、Head、Sector)尋址。Cylinder、Head、Sector這三個參數在很多硬盤表面的標籤上都有標註其數值。這是硬盤容量大小的計算基礎。物理尋址中對某扇區的表述為某某Cylinder某某Head的某某Sector。
硬盤容量=盤面數×柱面數×扇區數×512字節

尋址尋址方式簡介

尋址立即數尋址方式

操作數直接存放在指令中,緊跟在操作碼之後的尋址方式就是立即數尋址方式。例如:MOV AX,2345H MOV AL,0EH 。 [1] 

尋址寄存器尋址

操作數存放在CPU的內存寄存器時,可在指令中指出寄存器名,這就是寄存器尋址方式。例如:MOV AX,BX ;ADD AX,BX。 [1] 

尋址存儲器尋址方式

8086指令系統提供了以下5種針對存儲器的尋址方式。直接尋址、寄存器間接尋址、寄存器相對尋址、基址加變址尋址和相對基址加變址尋址。用於説明操作數所在存儲單元的地址。由於總線接口單元BIU能根據需要自動引用段寄存器得到段值,所以這五種方式也就是確定存放操作數的存儲單元有效地址EA的方法。有效地址EA是一個16位的無符號數,在利用這五種方法計算有效地址時,所得的結果認為是一個無符號數。 [1] 
(1).直接尋址: 指令中給出的地址碼即為操作數的有效地址,就是直接尋址方式
(2).寄存器間接尋址方式
(3).寄存器相對尋址方式
(4).基址變址尋址方式
(5).相對基址變址尋址方式 [1] 

尋址尋址的區別和應用

邏輯尋址方式和物理尋址方式目前都在使用,很多軟件也都可以用兩種尋址方式進行定位。不過,由於物理尋址方式相對比較複雜,採用三數字進行定位,硬盤大小不同數值上限不同,起始不同(Cylinder和Head從0起始,Sector從1起始)等等原因,在數據恢復技術中更多的使用邏輯尋址方式完成定位。

尋址尋址操作方法

就是指定指令要進行操作的地址。給定指令操作的地址方法,就是尋址方法。完整的一條指令,應該包含指令符+操作數(當然不包括那些單指令,比如NOT等)。其中的操作數是指令要執行的目標,也就是指令要進行操作的地址。
我們知道,在PLC中劃有各種用途的存儲區,比如物理輸入輸出區P、映像輸入區I、映像輸出區Q、位存儲區M、定時器T、計數器C、數據區DB和L等,同時我們還知道,每個區域可以用位(BIT)、字節(BYTE)、字(WORD)、雙字(DWORD)來衡量,或者説來指定確切的大小。當然定時器T、計數器C不存在這種衡量體制,它們僅用位來衡量。由此我們可以得到,要描述一個地址,至少應該包含兩個要素:1、存儲的區域
2、這個區域中具體的位置比如:AQ2.0
其中的A是指令符,Q2.0是A的操作數,也就是地址。這個地址由兩部分組成:Q:指的是映像輸出區; 2.0:就是這個映像輸出區第二個字節的第0位。由此,我們得出,一個確切的地址組成應該是:〖存儲區符〗〖存儲區尺寸符〗〖尺寸數值〗.〖位數值〗。
分類:
直接尋址,簡單的説,就是直接給出指令的確切操作數. 直接尋址方式常用於處理內存單元的數據,其操作數是內存變量的值,該尋址方式可在64K字節的段內進行尋址。注意:立即尋址方式和直接尋址方式的書寫格式的不同,直接尋址的地址要寫在括號“[”,“]”內。在程序中,直接地址通常用內存變量名來表示,如:MOV BX, VARW,其中,VARW是內存字變量。
間接尋址就是間接的給出指令的確切操作數。間接尋址方式計有兩大類型:存儲器間接尋址和寄存器間接尋址。
存儲器間接尋址指針,是作為指定的存儲區域的確切數值單元來運用的。也就是説,指針不包含區域標識,它只是指明瞭一個數值。
存儲器間接尋址的地址給定格式是:地址標識符+指針。指針所指示存儲單元中所包含的數值,就是地址的確切數值單元。
存儲器間接尋址具有兩個指針格式:單字和雙字。
單字指針是一個16bit的結構,從0-15bit,指示一個從0-65535的數值,這個數值就是被尋址的存儲區域的編號。
雙字指針是一個32bit的結構,從0-2bit,共三位,按照8進制指示被尋址的位編號,也就是0-7;而從3-18bit,共16位,指示一個從0-65535的數值,這個數值就是被尋址的字節編號。
指針可以存放在M、DI、DB和L區域中,也就是説,可以用這些區域的內容來做指針。
單字指針和雙字指針在使用上有很大區別。單字指針的存儲器間接尋址只能用在地址標識符是非位的場合;雙字指針由於有位格式存在,所以對地址標識符沒有限制。也正是由於雙字指針是一個具有位的指針,因此,當對字節、字或者雙字存儲區地址進行尋址時,必須確保雙字指針的內容是8或者8的倍數。 [2] 
參考資料