單片機的存儲器 寄存器概述
地址空間
要保證多個應用程序同時處于內存中并且不互相影響,則需要解決兩個問題:保護和重定位。我們來看一個原始的對前者的解決辦法,它曾被用在IBM 360上:給內存塊標記上一個保護鍵,并且比較執行進程的鍵和其訪問的每個內存字的保護鍵。然而,這種方法本身并沒有解決后一個問題,雖然這個問題可以通過在程序被裝載時重定位程序來解決,但這是一個緩慢且復雜的解決方法。
一個更好的辦法是創造一個新的內存抽象:地址空間。就像進程的概念創造了一類抽象的CPU以運行程序一樣,地址空間為程序創造了一種抽象的內存。地址空間是一個進程可用于尋址內存的一套地址集合。每個進程都有一個自己的地址空間,并且這個地址空間獨立于其他進程的地址空間(除了在一些特殊情況下進程需要共享它們的地址空間外)。
地址空間的概念非常通用,并且在很多場合中出現。比如電話號碼,在美國和很多其他國家,一個本地電話號碼通常是一個7位的數字。因此,電話號碼的地址空間是從0 000 000到9 999 999,雖然一些號碼并沒有被使用,比如以000開頭的號碼。隨著手機、調制解調器和傳真機數量的增長,這個空間變得越來越不夠用了,從而導致需要使用更多位數的號碼。Pentium的I/O端口的地址空間從0到16 383。IPv4的地址是32位的數字,因此它們的地址空間從0到232-1(也有一些保留數字)。
地址空間可以不是數字的。一套“。com”的互聯網域名也是地址空間。這個地址空間是由所有包含2~63個字符并且后面跟著“。com”的字符串組成的,組成這些字符串的字符可以是字母、數字和連字符。到現在你應該已經明白地址空間的概念了。它是很簡單的。
外部存儲器
軟盤、硬盤、光盤、U盤都是外部存儲器。 從馮。諾依曼的存儲程序工作原理及計算機的組成來說,計算機分為運算器、控制器、存儲器和輸入/輸出設備,這里的存儲器就是指內存,而硬盤屬于輸入/輸出設備。 CPU運算所需要的程序代碼和數據來自于內存,內存中的東西則來自于硬盤。所以硬盤并不直接與CPU打交道。 硬盤相對于內存來說就是外部存儲器。 存儲器是用來存儲器數據的,內存有告訴緩存和內存,計算機內部存儲,外存就是類似U盤的外部存儲,內存儲器 速度快 價格貴,容量小,斷電 后內存內數據會丟失。 外存儲器 單位價格低,容量大, 速度慢, 斷電后數據不會丟失。
評論