『壹』 什麼是邏輯地址什麼是物理地址它們之間有什麼關系各用在何處
邏輯地址在工具書中的解釋
:
1、在有地址變換功能的計算機中,訪內指令給出的地址
(操作數)
叫邏輯地址,也叫相對地址。要經過定址方式的計算或變換才得到內存儲器中的物理地址。
2、把用戶程序中使用的地址稱為相對地址即邏輯地址。
網卡物理地址存儲器中存儲單元對應實際地址稱物理地址,與邏輯地址相對應。
網路中的地址分為物理地址和邏輯地址兩類,與網路層的IP地址傳輸層的埠號以及應用層的用戶名相比較,區域網的MAC層地址是由硬體來處理的,叫做物理地址或硬體地址。IP地址傳輸層的埠號以及應用層的用戶名是邏輯地址由軟體來處理。MAC地址不等同於物理地址.
大多數區域網通過為網卡分配一個硬體地址來標識一個聯網的計算機或其他設備.所謂物理地址是指固化在網卡EPROM中的地址,這個地址應該保證在全網是唯一的。IEEE注冊委員會為每一個生產廠商分配物理地址的前三位元組,即公司標識。後面三位元組由廠商自行分配,一個廠商獲得一個前三位元組的地址可以生產的網卡數量是16777216塊。而一塊網卡對應一個物理地址。也就是說對應物理地址的前三位元組就可以知道他的生產廠商。
例如固化在網卡中的地址為002514895423,那麼這塊網卡插到主機A中,主機A的物理地址就是002514895423,不管主機A是連接在區域網1上還是在區域網2上,也不管這台計算機移到什麼位置,主機A的物理地址就是002514895423。它是不變的,而且不會和世界上任何一台計算機相同。當主機A發送一幀時,網卡執行發送程序時,直接將這個地址作為源地址寫入該幀。當主機A接收一幀時,直接將這個地址與接收幀目的地址比較,以決定是否接收。物理地址一般記作00-25-14-89-54-23(主機A的地址是002514895423)。
『貳』 邏輯地址和物理地址的區別是什麼
物理地址是內存的實際地址,如RAM,虛擬地址只是緩存和RAM之間的邏輯地址映射。在操作系統中,每當我們談論代碼或其部分的地址或地址空間時,我們指的是該部分代碼所在的內存位置。讓我們通過一個現實生活中的異常來了解操作系統中的定址。
邏輯地址和物理地址的特點
當我們談論邏輯地址時,我們指的是CPU分配給每個進程的地址,正如我們已經討論過的,一個進程在內存中所處的實際地址與進程認為它所處的地址是不一樣的,這種地址映射基本上是在進程共享內存時所必需的,而不需要讓進程知道它們彼此共享相同的內存空間。
物理地址是進程及其內容放置在主內存或硬碟中的地址,每當我們運行一個進程或將一些數據存儲在計算機的主存儲設備或輔助存儲設備中時,我們總是將其存儲起來以備將來隨時訪問。比如我在電腦的D盤存了一個word文件,我想訪問它,以後怎麼訪問,當然是去D盤打開word文件。
但是如果我將一個進程保存在主存中的某個存儲單元或內存單元中,並希望將來訪問它,該怎麼辦,就我們在本教程中研究過的地址而言,我們知道每當一個進程被創建時,CPU 都會生成它的虛擬地址,但又是一團糟。虛擬地址與進程實際放置在內存中的地址不同。
然而,內存單元存儲在由物理地址(用戶未知)訪問的主內存中,我們所知道的只是進程的邏輯地址,那麼當我們需要訪問進程的時候我們將如何訪問物理地址呢,到目前為止,這似乎是不可能的,但這當然不是因為我們從計算機誕生到現在一直在訪問創建的進程。
因此,我們需要詳細討論這個問題,在進程創建時,CPU 不僅會生成虛擬地址,還會使用一些硬體支持將(先前生成的)虛擬地址映射到實際存儲它的物理地址,這在下面的地址映射部分進行了討論。
因此,當我們嘗試訪問內存中已經保存的進程時,CPU 將虛擬地址返回給硬體,硬體將虛擬/邏輯地址映射到物理地址上,並間接訪問進程的內存空間。
『叄』 什麼是邏輯地址什麼是物理地址
邏輯地址: 是指由程序產生的與段相關的偏移地址部分。又稱絕對地址。
物理地址:在存儲器里以位元組為單位存儲信息,為正確地存放或取得信息,每一個位元組單元給以一個唯一的存儲器地址,稱為物理地址,又叫實際地址或絕對地址。
一、關系:邏輯地址和物理地址相對的。物理地址是唯一的,邏輯地址的相對的。
二、表達方式:
1、邏輯地址:其表達形式為「段地址:段內偏移地址」。
2、物理地址:CPU與存儲器進行數據交換時在地址匯流排上 。
(3)什麼叫做物理地址和邏輯地址擴展閱讀:
一、邏輯地址的產生背景
追根求源,Intel的8位機8080CPU,數據匯流排(DB)為8位,地址匯流排(AB)為16位。那麼這個16位地址信息也是要通過8位數據匯流排來傳送,也是要在數據通道中的暫存器,以及在CPU中的寄存器和內存中存放的,但由於AB正好是DB的整數倍,故不會產生矛盾!
但當上升到16位機後,Intel8086/8088CPU的設計由於當年IC集成技術和外封裝及引腳技術的限制,不能超過40個引腳。但又感覺到8位機原來的地址定址能力2^16=64KB太少了,但直接增加到16的整數倍即令AB=32位又是達不到的。
故而只能把AB暫時增加4條成為20條。則2^20=1MB的定址能力已經增加了16倍。但此舉卻造成了AB的20位和DB的16位之間的矛盾,20位地址信息既無法在DB上傳送,又無法在16位的CPU寄存器和內存單元中存放。於是應運而生就產生了CPU段結構的原理。
二、物理地址的計算方法
在實地址方式下,物理地址是通過段地址乘以16加上偏移地址得到的。而16位的段地址乘以16等同於左移4位二進制位,這樣變成20位的段基地址,最後段基地址加上段內偏移地址即可得到物理地址。
20位物理地址計算方法如下:
物理地址=段地址*16d+偏移地址。
『肆』 什麼是邏輯地址和物理地址
有網友問到我:什麼是邏輯地址和物理地址?怎麼轉換?針對此問題,我為大家分享了具體的操作 方法 ,希望對你有幫助!
什麼是邏輯地址是指由程式產生的和段相關的偏移地址部分。例如,你在進行C語言指針編程中,能讀取指針變數本身值(&操作),實際上這個值就是邏輯地址,他是相對於你當前進程數據段的地址,不和絕對物理地址相干。只有在Intel實模式下,邏輯地址才和物理地址相等(因為實模式沒有分段或分頁機制,Cpu不進行自動地址轉換);邏輯也就是在Intel保護模式下程式執行代碼段限長內的偏移地址(假定代碼段、數據段如果完全相同)。應用程式員僅需和邏輯地址打交道,而分段和分頁機制對你來說是完全透明的,僅由系統編程人員涉及。應用程式員雖然自己能直接操作內存,那也只能在 操作系統 給你分配的內存段操作。
什麼是物理地址用於內存晶元級的單元定址,與處理器和CPU連接的地址匯流排相對應。 ——這個概念應該是這幾個概念中最好理解的一個,但是值得一提的是,雖然可以直接把物理地址理解成插在機器上那根內存本身,把內存看成一個從0位元組一直到最大空量逐位元組的編號的大數組,然後把這個數組叫做物理地址,但是事實上,這只是一個硬體提供給軟體的抽像,內存的定址方式並不是這樣。所以,說它是“與地址匯流排相對應”,是更貼切一些,不過拋開對物理內存定址方式的考慮,直接把物理地址與物理的內存一一對應,也是可以接受的。也許錯誤的理解更利於形而上的抽像。 虛擬內存(virtual memory) 這是對整個內存(不要與機器上插那條對上號)的抽像描述。它是相對於物理內存來講的,可以直接理解成“不直實的”,“假的”內存,例如,一個0x08000000內存地址,它並不對就物理地址上那個大數組中0x08000000 - 1那個地址元素;之所以是這樣,是因為現代操作系統都提供了一種內存管理的抽像,即虛擬內存(virtual memory)。進程使用虛擬內存中的地址,由操作系統協助相關硬體,把它“轉換”成真正的物理地址。這個“轉換”,是所有問題討論的關鍵。有了這樣的抽像,一個程序,就可以使用比真實物理地址大得多的地址空間。(拆東牆,補西牆,銀行也是這樣子做的),甚至多個進程可以使用相同的地址。不奇怪,因為轉換後的物理地址並非相同的。 ——可以把連接後的程序反編譯看一下,發現連接器已經為程序分配了一個地址,例如,要調用某個函數A,代碼不是call A,而是call 0x0811111111 ,也就是說,函數A的地址已經被定下來了。沒有這樣的“轉換”,沒有虛擬地址的概念,這樣做是根本行不通的。打住了,這個問題再說下去,就收不住了。邏輯地址(logical address) Intel為了兼容,將遠古時代的段式內存管理方式保留了下來。邏輯地址指的是機器語言指令中,用來指定一個操作數或者是一條指令的地址。以上例,我們說的連接器為A分配的0x08111111這個地址就是邏輯地址。 ——不過不好意思,這樣說,好像又違背了Intel中段式管理中,對邏輯地址要求,“一個邏輯地址,是由一個段標識符加上一個指定段內相對地址的偏移量,表示為 [段標識符:段內偏移量],也就是說,上例中那個0x08111111,應該表示為[A的代碼段標識符: 0x08111111],這樣,才完整一些” 線性地址(linear address)或也叫虛擬地址(virtual address) 跟邏輯地址類似,它也是一個不真實的地址,如果邏輯地址是對應的硬體平台段式管理轉換前地址的話,那麼線性地址則對應了硬體頁式內存的轉換前地址。
邏輯地址和物理地址拓展知識存儲器中每一個單元的地址可以用兩種方法表示:
1.邏輯地址:其表達形式為“段地址:段內偏移地址”。
2.物理地址:CPU與存儲器進行數據交換時在地址匯流排上
提供的20位地址信息稱為物理地址。
物理地址=段地址×10H+段內偏移量
CPU一次處理的數據是16位,地址匯流排實際上代表CPU的定址能力,地址線為20條那麼CPU實際的定址能力就是2的20次方就是1M。實際的物理地址是這樣形成的:
段地址*10H+偏移地址,偏移地址用IP指向,IP是16位的。
例如段地址是1234H,偏移地址是4321H
那麼實際的物理地址怎麼算呢:1234H*10H+4321H=12340H+4321H=16661H
實際上可以這么來理解,就是段地址左移一位後加上偏移地址就得出實際的物理地址。
這里邏輯地址和物理地址的關系又可以用一個比喻來說明:
比如你的學號是0102,這是你的真實地址亦即物理地址,那麼又假如01表示你的班級名稱,02表示你相對整個班級的位置,這就是邏輯地址,道理是一樣的,只不過在實際由邏輯地址合成物理地址的時候需要將物理地址左移一位,再加上偏移地址。
邏輯地址到物理地址的轉換方法以一個例子的形式講解邏輯地址到物理地址的轉換:
某虛擬存儲器的用戶編程空間共32個頁面,每頁為1KB,內存為16KB。假定某時刻一用戶頁表中已調入內存的頁面的頁號和物理塊號的對照表如下:
則邏輯地址0A5C(H)所對應的物理地址是什麼?要求:寫出主要計算過程。
解題過程:
首先要知道頁式存儲管理的邏輯地址分為兩部分:頁號和頁內地址。物理地址分為兩部分:
關系為:邏輯地址=頁號+頁內地址d
物理地址=塊號*塊長度( 等於頁面長度 L )+頁內地址;
頁號: p = lnt( 邏輯地址 A / 頁面長度 L ); d = 邏輯地址 A % 頁面長度 L (取余)
分析題:已知:用戶編程空間共32個頁面,2ˆ5=32得知頁號部分佔5位,由“每頁為1KB”,1K=2^10,可知內頁地址佔10位。
由“內存為16KB”,2^4=16得知塊號佔4位。
邏輯地址0A5C(H)所對應的二進製表示形式是:0000101001011100,後十位1001011100是頁內地址,
00010(本題特例,因為頁面長度為1KB)為為頁號,頁號化為十進制是2,在對照表中找到2對應的物理塊號是11,11轉換二進制是1011,11* 2^10 + d即可求出物理地址為10111001011100,化成十六進制為2 E5C;
即則邏輯地址0A5C(H)所對應的物理地址是2E5C;
猜你喜歡:
1. IP地址和物理地址有什麼區別
2. 物理地址和邏輯地址的區別
3. 虛擬地址與物理地址的概念
4. 物理地址什麼意思
5. 邏輯地址如何轉換成物理地址
6. 物理地址有什麼用
7. 物理地址作用是什麼
『伍』 什麼是邏輯地址什麼是物理地址他們之間有什麼聯系(簡答題)
你問的是CPU里的物理地址和邏輯地址吧?
物理地址:在存儲器里以位元組為單位存儲信息,為了正確地存放或取得信息,每一個位元組單元給以一個唯一的存儲器地址,稱為物理地址(Physical Address),又叫實際地址或絕對地址.地址從0開始編號,順序地每次加1,因此存儲器的物拍扮理地址空間是呈線性增長的.它是用二進制數來表示的,是無符號整數豎賀哪,書寫格式為十六進制數.
它是出現在CPU外部地址匯流排上的定址物理內存的地址信號,是地址變換的最終結果.用於內存晶元級的單元定址,與處理器和CPU連接的地址匯流排相對應.
邏輯地址余碼:在有地址變換功能的計算機中,訪內指令給出的地址 (操作數) 叫邏輯地址,也叫相對地址.要經過定址方式的計算或變換才得到內存儲器中的物理地址.
『陸』 物理地址和邏輯地址分別有何含義
物理地址是指你物理設備的地址,也就是所說的MAC地址.邏輯地址是指用於網路層用於定址的一種邏輯地址,也就是我們所說的IP地址.
『柒』 什麼是物理地址什麼是邏輯地址物理地址和邏輯地址的區別與聯系 網路
物理地址就是唯一的,按照物理硬體定義的地址
邏輯地址就是認為規定的,方便通訊的而定義的地址
比如物理地址是A,他可能有很多邏輯地址,可能是為了方便記憶,可能是為了容易為人們所辨別,可能是為了便於網路管理.
如果你需要教科書樣的定義,可以直接網上找一本TCP/IP協議的書應該有很多.
『捌』 物理地址和邏輯地址有什麼區別 詳細
你問的是cpu里的物理地址和邏輯地址吧?
物理地址:在存儲器里以位元組為單位存儲信息,為了正確地存放或取得信息,每一個位元組單元給以一個唯一的存儲器地址,稱為物理地址(physical
address),又叫實際地址或絕對地址.地址從0開始編號,順序地每次加1,因此存儲器的物理地址空間是呈線性增長的.它是用二進制數來表示的,是無符號整數,書寫格式為十六進制數.
它是出現在cpu外部地址匯流排上的定址物理內存的地址信號,是地址變換的最終結果.用於內存晶元級的單元定址,與處理器和cpu連接的地址匯流排相對應.
邏輯地址:在有地址變換功能的計算機中,訪內指令給出的地址
(操作數)
叫邏輯地址,也叫相對地址.要經過定址方式的計算或變換才得到內存儲器中的物理地址.
『玖』 什麼是邏輯地址和物理地址
邏輯地址就是IP地址,物理地址是每個網路設備上都分配的一個固定的號碼,我們稱之謂物理地址,是全球唯一的。而IP地址是動態分配的,在同一個網段中是唯一的,但如果使用了NAT方式接入網路,就有可能和另一個NAT中的IP重復。
『拾』 什麼是物理地址和邏輯地址是如何產生的
這個問題啊,是網路運行必須有的
物理地址就是MAC地址,是網卡上自帶的,全球唯一的地址,計算機在進行數據通訊的時候需要進行數據的封裝和導址的,在OSI七層模型中是屬於數據鏈路層的
邏輯地址就是IP地址,是虛擬的,實際不存在的,它在網路中用來定義不同的網路,使其不會發生數據混亂.在OSI七層模型中屬於第三層網路層的.
它們都是網路產生初期隨著OSI七層模型的建立而產生的.