1. 程式人生 > >按字讀取,按字節讀取

按字讀取,按字節讀取

暫時 存儲 4行 也不會 編號 獲取 nbsp 想想 矩陣

現代存儲器基本存儲單元都是以字節為單位, 這樣就設立了按字節來編號地址,如000代表0地址,001代表了1地址……,這樣一個個按字節為單位的空間組成了整個大的存儲器

所謂的按字節都取就是,給第一個地址編號,CPU從存儲器相對應的地址編號中讀取一個字節的數據。

下面來說下按字讀取,字是一個不定大小的存儲量,我們可以說2個字節為一個字,4個字節,8個字節等為一個字。雖然這樣但是針對每個存儲器當然也不會隨意亂編一通。我們知道存儲器是由一個個存儲芯片構成,而每個存儲器位寬通常是一個字節,那麽假如現在生產一款存儲器一次性要讀取8個字節,那麽我們會將8個1字節位寬的存儲芯片並聯, 這樣原來給一個地址只能讀取一個字節的,就變成8個字節了,而這個一次性就能取到的8字節就是代表當前這個存儲器的一個字

那如果按字讀取,我們傳遞的地址又會是多少呢? 我想想象一下存儲器的存儲空間是一個 矩陣 ,針對上面這個存儲器,每行是8列,讀取一行就是8個字節了,我們只要給定每行的第一列的地址就可以獲取整行了,當然這個時候你也許會問為什麽不會讀取第一行第一列呢,

這個時候其實還會有一個信號來控制,暫時不討論。 第一行的開頭是00000,第二行是01000,第三行是10000,第4行是11000,也就是8 的倍數地址。其實我們可以看出,這樣一個地址,後面的3位其實沒什麽多大作用了,不用來參與尋找地址了。

也就是實際上如果按字讀取數據的時候,地址是由從由往左第4位開始 及以上高位的地址編號決定了讀取哪個字。

按字讀取,按字節讀取