學習啦>知識大全>知識百科>百科知識>

什么是邏輯地址邏輯地址的概述

時間: 謝君787 分享

  邏輯地址是指由程序產(chǎn)生的與段相關(guān)的偏移地址部分。那么你對邏輯地址了解多少呢?以下是由學習啦小編整理關(guān)于什么是邏輯地址的內(nèi)容,希望大家喜歡!

  邏輯地址的概述

  在有地址變換功能的計算機中,訪內(nèi)指令給出的地址 (操作數(shù)) 叫邏輯地址,也叫相對地址。要經(jīng)過尋址方式的計算或變換才得到內(nèi)存儲器中的實際有效地址,即物理地址。

  各種計算機的尋址方式 (地址變換功能)都有所不同,在用匯編語言編寫程序時,要先熟悉這個機器的指令系統(tǒng)。參見 “物理地址”及“尋址方式”。

  "邏輯地址" 在工具書中的解釋

  1、在有地址變換功能的計算機中,訪問指令給出的地址 (操作數(shù)) 叫邏輯地址,也叫相對地址。要經(jīng)過尋址方式的計算或變換才得到內(nèi)存儲器中的物理地址。

  2、把用戶程序中使用的地址稱為相對地址即邏輯地址。

  3、邏輯地址由兩個16位的地址分量構(gòu)成,一個為段基值,另一個為偏移量。兩個分量均為無符號數(shù)編碼。

  "邏輯地址" 在學術(shù)文獻中的解釋

  1、這樣該存儲單元的地址就可以用段基址(段地址)和段內(nèi)偏移量(偏移地址)來表示,段基址確定它所在的段居于整個存儲空間的位置,偏移量確定它在段內(nèi)的位置,這種地址表示方式稱為邏輯地址,通常表示為段地址:偏移地址的形式。

  2、所謂邏輯地址是指按數(shù)據(jù)的邏輯塊號給出的磁盤的位置(l塊=512字l字=64位)而物理地址則是由磁盤的柱面、頭、段等物理位置所確定的地址。

  邏輯地址的產(chǎn)生背景

  追根求源,Intel的8位機8080CPU,數(shù)據(jù)總線(DB)為8位,地址總線(AB)為16位。那么這個16位地址信息也是要通過8位數(shù)據(jù)總線來傳送,也是要在數(shù)據(jù)通道中的暫存器,以及在CPU中的寄存器和內(nèi)存中存放的,但由于AB正好是DB的整數(shù)倍,故不會產(chǎn)生矛盾!

  但當上升到16位機后,Intel8086/8088CPU的設(shè)計由于當年IC集成技術(shù)和外封裝及引腳技術(shù)的限制,不能超過40個引腳。但又感覺到8位機原來的地址尋址能力2^16=64KB太少了,但直接增加到16的整數(shù)倍即令AB=32位又是達不到的。故而只能把AB暫時增加4條成為20條。則2^20=1MB的尋址能力已經(jīng)增加了16倍。但此舉卻造成了AB的20位和DB的16位之間的矛盾,20位地址信息既無法在DB上傳送,又無法在16位的CPU寄存器和內(nèi)存單元中存放。于是應(yīng)運而生就產(chǎn)生了CPU段結(jié)構(gòu)的原理。

  邏輯地址和線性地址

  一個邏輯地址由兩部份組成,段標識符和段內(nèi)偏移量。段標識符是由一個16位長的字段組成,稱為段選擇符。其中前13位是一個索引號。后面3位包含一些硬件細節(jié),如圖:

  索引號,可以理解為數(shù)組的下標——而它將會對應(yīng)一個數(shù)組,它又是什么的索引呢?這就是“段描述符(segment descriptor)”,段描述符具體地址描述了一個段(對于“段”這個字眼的理解:我們可以理解為把虛擬內(nèi)存分為一個一個的段。比如一個存儲器有1024個字節(jié),可以把它分成4段,每段有256個字節(jié))。這樣,很多個段描述符,就組了一個數(shù)組,叫“段描述符表”,這樣,可以通過段標識符的前13位,直接在段描述符表中找到一個具體的段描述符,這個描述符就描述了一個段,我剛才對段的抽像不太準確,因為看看描述符里面究竟有什么東東——也就是它究竟是如何描述的,就理解段究竟有什么東東了,每一個段描述符由8個字節(jié)組成,如下圖:

  這些東東很復雜,雖然可以利用一個數(shù)據(jù)結(jié)構(gòu)來定義它,不過,我這里只關(guān)心一樣,就是Base字段,它描述了一個段的開始位置的線性地址。

  Intel設(shè)計的本意是,一些全局的段描述符,就放在“全局段描述符表(GDT)”中,一些局部的,例如每個進程自己的,就放在所謂的“局部段描述符表(LDT)”中。那究竟什么時候該用GDT,什么時候該用LDT呢?這是由段選擇符中的T1字段表示的,=0,表示用GDT,=1表示用LDT。

  GDT在內(nèi)存中的地址和大小存放在CPU的gdtr控制寄存器中,而LDT則在ldtr寄存器中。

  好多概念,像繞口令一樣。這張圖看起來要直觀些:

  首先,給定一個完整的邏輯地址[段選擇符:段內(nèi)偏移地址],

  1、看段選擇符的T1=0還是1,知道當前要轉(zhuǎn)換是GDT中的段,還是LDT中的段,再根據(jù)相應(yīng)寄存器,得到其地址和大小。我們就有了一個數(shù)組了。

  2、拿出段選擇符中前13位,可以在這個數(shù)組中,查找到對應(yīng)的段描述符,這樣,它了Base,即基地址就知道了。

  3、把Base + offset,就是要轉(zhuǎn)換的線性地址了。
看過“邏輯地址的概述”的人還看了:

1.物理地址和邏輯地址的區(qū)別

2.什么是邏輯地址和物理地址

3.邏輯地址如何轉(zhuǎn)換成物理地址

4.邏輯地址線性地址物理地址三個地址有什么聯(lián)系

5.什么是8086邏輯地址和物理地址

6.邏輯地址轉(zhuǎn)換物理地址公式

什么是邏輯地址邏輯地址的概述

邏輯地址是指由程序產(chǎn)生的與段相關(guān)的偏移地址部分。那么你對邏輯地址了解多少呢?以下是由學習啦小編整理關(guān)于什么是邏輯地址的內(nèi)容,希望大家喜歡! 邏輯地址的概述 在有地址變換功能的計算機中,訪內(nèi)指令給出的地址 (操作數(shù)) 叫邏輯地址
推薦度:
點擊下載文檔文檔為doc格式

精選文章

  • 什么是邏輯性邏輯性的組成
    什么是邏輯性邏輯性的組成

    邏輯性是指發(fā)展過程符合邏輯體系、具有邏輯特點、恪守邏輯規(guī)則的情況。那么你對邏輯性了解多少呢?以下是由學習啦小編整理關(guān)于什么是邏輯性的內(nèi)容,

  • 什么是邏輯邏輯的含義
    什么是邏輯邏輯的含義

    邏輯既指思維的規(guī)律,也指研究思維規(guī)律的學科即邏輯學。那么你對邏輯了解多少呢?以下是由學習啦小編整理關(guān)于什么是邏輯的內(nèi)容,希望大家喜歡! 邏輯

  • 什么是論壇推廣論壇推廣的特點
    什么是論壇推廣論壇推廣的特點

    企業(yè)利用論壇這種網(wǎng)絡(luò)交流的平臺,通過文字、圖片、視頻等方式發(fā)布企業(yè)的產(chǎn)品和服務(wù)的信息,從而讓目標客戶更加深刻地了解企業(yè)的產(chǎn)品和服務(wù)。那么

  • 世界上最大望遠鏡
    世界上最大望遠鏡

    望遠鏡,又稱千里鏡,是一種利用凹透鏡和凸透鏡觀測遙遠物體的光學儀器,是通過透鏡的光線折射或光線被凹鏡反射使之進入小孔并會聚成像,再經(jīng)過一

1975037