回覆列表
-
1 # 使用者522090315619
-
2 # 使用者1465424935672
暫存器間接定址是將指定的暫存器內容為地址,由該地址所指定的單元內容作為運算元。MCS-51規定R0或R1為間接定址暫存器,它可定址內部RAM低位地址的128個位元組單元內容。還可採用資料指標(DPTR)作為間接定址暫存器,定址外部資料儲存器的64K位元組空間,但不能用本定址方法定址特殊功能暫存器。
主要看你說的是哪一種暫存器大部分arm晶片手冊都有會去描述的暫存器都是關於外設的,像gpio,uart,spi,i2c,這些東西,這種暫存器是有地址的。比如下圖是s5pv210 某GPIO暫存器地址 感覺題主困惑的應該是這個東西為什麼要有地址。簡單來說,我們可以把每一個外設,理解為一個獨立可以執行的軟體,像是安裝在Windows上的QQ,而這些暫存器其實就是我們可以對qq的配置(隱身登入或輸出高電平)。為了配置這些外設,arm在可定址的地址空間上,專門有一些地址就是用來配置這些外設的如上圖,最上邊的sfrs區域就是arm規定的外設地址區域。也就是說,在CPU可定址空間內,有一部分地址就是不能安裝RAM,而專門配置這些外設的。而題主所說的有的暫存器沒有地址應該是指的CPU核的暫存器像是 PC,SP,R0,R1等。這裡有個圖,摘自<深入理解計算機系統>有些微控制器,對於這種暫存器也是有編址的。不過我們很少去關心。我們一般關心的是記憶體地址(DRAM)。