當前位置:首頁 » 服務存儲 » 存儲單元的段起始地址
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

存儲單元的段起始地址

發布時間: 2022-04-20 10:27:35

Ⅰ 8086/8088系統中,存儲器為什麼要分段,一個段的最大和最小各為多少位元組

8086/8088系統中,存儲器分段的主要目的是便於存儲器的管理,使得可以用16位寄存器來定址20位的內存空間。一個段最大為64KB,最小為16B。

存儲器一般用來保存程序的中間結果,為隨後的指令快速提供操作數,從而避免把中間結果存入內存,再讀取內存的操作。

由於存儲器的個數和容量都有限,不可能把所有中間結果都存儲在存儲器中,所以,要對存儲器進行適當的調度。根據指令的要求,管理安排適當的寄存器,避免操作數過多的傳送操作。

8086/8088CPU可直接定址1MB的存儲器空間,直接定址需要20位地址碼,而所有內部寄存器都是16位的,只能直接定址6KB,因此採用分段技術來解決。將1MB的存儲空間分成若干邏輯段,每段最長64KB,最短16B。這些邏輯段在整個存儲空間中可浮動。

(1)存儲單元的段起始地址擴展閱讀:

8086/8088CPU內部設置了4個16位段寄存器,它們分別是代碼段寄存器CS、數據段寄存器DS、堆棧段寄存器SS、附加段寄存器ES、由它們給出相應邏輯段的首地址,稱為「段基址」。段基址與段內偏移地址組合形成20位物理地址,段內偏移地址可以存放在寄存器中,也可以存放在存儲器中。

程序較小時,代碼段、數據段、堆棧段可放在一個段內,即包含在64KB之內,而當程序或數據量較大時,超過了64KB,那麼可以定義多個代碼段或數據段、堆棧段、附加段。

Ⅱ 順序存儲數據時,存儲單元的地址是

爭議選a,最佳答案沒看清題吧?別人問的是採用順序存儲結構時
線性表的順序存儲結構,指的是用一段地址連續的存儲單位依次存儲線性表的數據元素

Ⅲ 什麼叫8086/8088存儲器的段的基地址

邏輯地址即是思維性的表示,由於8086的寄存器最大為16位,因此地址在寄存器中按16位大小存放,由段地址和偏移地址聯合表示的地址類型叫邏輯地址。

主存的工作方式是按存儲單元的地址存放或讀取各類信息,統稱訪問存儲器。主存中匯集存儲單元的載體稱為存儲體,存儲體中每個單元能夠存放一串二進制碼表示的信息。

該信息的總位數稱為一個存儲單元的字長。存儲單元的地址與存儲在其中的信息是一一對應的,單元地址只有一個,固定不變,而存儲在其中的信息是可以更換的。

工作原理:

存儲器是用來存儲程序和各種數據信息的記憶部件。存儲器可分為主存儲器(簡稱主存或內存)和輔助存儲器(簡稱輔存或外存)兩大類。和CPU直接交換信息的是主存。

指示每個單元的二進制編碼稱為地址碼。尋找某個單元時,先要給出它的地址碼。暫存這個地址碼的寄存器叫存儲器地址寄存器(MAR)。為可存放從主存的存儲單元內取出的信息或准備存入某存儲單元的信息,還要設置一個存儲器數據寄存器(MDR)。

Ⅳ 什麼是物理地址物理地址有何作用

網路中的地址分為物理地址和邏輯地址兩類,與網路層的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)

Ⅳ 在8086/8088cpu系統中每個存儲單元的地址有哪些表示方法它們之間的關系是什麼

邏輯地址即是思維性的表示,由於8086的寄存器最大為16位,因此地址在寄存器中按16位大小存放,由段地址和偏移地址聯合表示的地址類型叫邏輯地址,例如2000H:1000H,這里的2000H表示段的起始地址,即段地址,而1000H則表示偏移地址,表示邏輯地址時總是書寫成段地址:偏移地址。
物理地址即是真實存在的唯一地址,是指的內存中各個單元的單元號,由8086有20條地址線,因此可定址2的20次方,按2進制位表示規則,即有20位,這個就是物理地址。物理地址因為超過了寄存器大小(16位)因此無法直接存放,需要合成,公式為物理地址=段地址×10H+偏移地址,公式中的數據可從邏輯地址獲得。
邏輯地址是16位的,因此范圍是2的16次方,即64K.
物理地址是20位的,因此范圍是2的20次方,即1M.

c語言中起始地址和首地址有什麼區別

本質上,起始地址和首地址沒有區別,對同一個數組來說,它們是同一個地址。
其實這兩個說法沒有很明確的概念,只是按照慣例,經常會說:
數組名,是數組在內存中連續存儲單元的首地址
數組的指針,是數組的起始地址
只是按照數組方式說明和按照指針方式說明罷了,如果非要說有區別,就是數組方式訪問和指針方式訪問的區別,a[i++]的訪問不會改變a的地址,但如果 *p=a; p++會修改指針的起始地址。

Ⅶ 什麼是存儲單元的地址什麼是存儲單元的內容

地址為一個無符號整數,為了書寫方便和編程,在源程序中常用十六進制數或符號來表示一個存儲單元的地址。每一個單元的地址稱為位元組地址,任何相鄰兩個單元組成一個字地址,按編址原則約定用其中一個較小的地址來表示字地址。一個字由兩個位元組組成,則低位元組對應低地址,高位元組對應高地址。

存放在內存單元中的信息稱為存儲單元內容,按地址的表示類型,存儲單元的內容分位元組地址內容字地址內容和雙字地址內容。



(7)存儲單元的段起始地址擴展閱讀

存儲地址用十六進制數表示,而每一個存儲器地址中又存放著一組二進制(或十六進制)表示的數,通常稱為該地址的內容。存儲單元的地址和地址中的內容兩者是不一樣的。前者是存儲單元的編號,表示存儲器總的一個位置,而後者表示這個位置里存放的數據。正如一個是房間號碼,一個是房間里住的人一樣。

如果機器字長等於存儲器單元的位數,一個機器字可以包含數個位元組,所以一個存儲單元也可以包含數個能夠單獨編址的位元組地址。例如一個16位二進制的字存儲單元可存放兩個位元組,可以按字地址定址,也可以按位元組地址定址。當用位元組地址定址時,16位的存儲單元占兩個位元組地址。

Ⅷ 一個有32個位元組的資料庫,他的存儲單元起始地址為70A0H:EE66H,其數據區首、末地址單元的物理地址

呵呵,再寫一次也無妨
這個是X86機器吧,物理地址是20位的。
邏輯地址70A0H:EE66H意義是段基值:70A0H,EE66H為偏移量。將段基值左移四位,即乘以16加上偏移量就得到物理地址
上面地址是16進制,因此直接左移1位,70A00H+EE66H=7F866H,這個是首地址,末地址就是再加上32個位元組,加上2H。7F866H+2H=7F868H

Ⅸ 計算機的存儲地址問題,,

樓主對內存地址的理解有偏差,舉個很簡單的例子,假設有一台非常簡陋的計算機,它的內存地址線是2根,在內存定址的時候,每根地址線有1和0兩種狀態,那麼能識別的內存地址范圍就是00-11,一共4種,也就是說2根地址線,能定址的范圍是4,那麼一次類推,3根就是8,4根就是16。以一個常用的32位的單核cpu為例,那麼這個cpu能識別的內存地址就是2的32次方,4294967296,也就是我們俗稱的4G的內存限制,32位單核cpu,最多隻能支持4G的內存,就是這么來的。以我們現在常用的馮諾依曼架構的計算機為例,一般位元組(byte)是內存中的基本存儲單元,它由8個比特(bit)構成。
那麼為什麼說,不需要擔心內存地址的存儲佔用內存空間呢,因為內存的定址還在操作系統層以下,直接基於硬體操作,通過不同的地址線來查找對應內存存儲空間,不需要佔用內存本身的空間。在運行程序的時候,有些內存地址是存放在內存本身的,但是這種情況是將內存地址作為數據來處理,比如C語言中常用的指針操作,在指針變數對應的內存中存放的數據部分,就是指針對應的空間的起始地址。而操作系統在運行程序的時候,是不會允許某個程序佔用所有內存的,因此不會出現內存空間無法存放數據的情況。
看起來很復雜,實際上樓主只要學習過計算機專業的操作系統這門課,就能弄清楚了。

Ⅹ 在8086系統中,在以下地址中可作為段起始地址的為 A 20100H B.20102H C.201

A.因為8086系統中,寄存器最大為16位,因此地址在寄存器中按16位存放,即每一段相隔16個存儲單元。所以地址 mod 16為0的就可作為段起始地址。20100H mod 16=0,於是選A。