![]() |
|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
![]() ![]() |
|
主題工具 | 顯示模式 |
![]() |
#1 |
註冊會員
|
![]() 問個問題~
為蝦咪在16位元裡的電腦 起始位址能被4整除的時候~存取效率最高呢??~ 那32位元呢~??64位元呢??~ ps.我也不是很確定~ 這好像是微處理機的-.- |
![]() |
送花文章: 3,
![]() |
![]() |
#2 (permalink) |
管理版主
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() To 起始位址能被4整除的時候~存取效率最高呢??~
第一次聽過~ 就暫存器 定址記憶體的角度而言 (※1) 理不出這種道理... 那就從 記憶體之硬體角度來看 也就是 記憶體矩陣 構造 要定位一個位址必須發出 CAS訊號(行位址控制) 與 RAS訊號(列位址控制) 現行的 RAM設計是 列的內容被送去暫存之後,控制器才 送出CAS訊號(傳送記憶體單元中的行位址) 所以 如果你所讀取的是相同記憶體列的鄰近資料,那麼決定存取速度的唯一因素就是CL時序,因為控制器已經知道列的位址,不需要重新再搜尋一次。 到此 好像與 被4除盡 沒什麼關係... ?? 再看到 現在的DDR RAM晶片組被再次細部區分為4個部分(Banks),每個部份代表了一個分離的記憶體區。Bank Interleaving則是允許不同晶片上的Banks的記憶體區可以同步定址,也因此增加了資料傳輸率。當資料被一個記憶體Bank讀取時,另外一個Bank可以定址一個新的資料區。你可以在BIOS中特別設定晶片中可以同時定址多少RAM Banks。最快的設定是「4」。 到此好像與 4 有點扯上關係了... ( http://www.lifone.com.tw/DDRU.htm ) 綜合以上 推測或許只變動一個CAS訊號 所得到的記憶體位址變動量就是 4的倍數吧... 以上有點硬拗~ 所以不要太相信 ^^" ※1 如果是 16位元CPU 相關記憶體定址暫存器: 四個區段暫存器(CS、DS、SS、ES)。 都是單一16bit寬度實體暫存器 那通用暫存器AX, BX, CX, DX 則實際上是兩個實體暫存器組成(比如 AH+AL=AX,各8bit) 那一個真實模式記憶體定址 是 區段暫存器+偏移位址 如果 偏移位址用到 通用暫存器 最少的時脈使用就是只用一個實體暫存器 怎麼算都是 16的倍數(一個8bit寬度 最大可代表 F).... 與4除盡 好像沒關? |
![]() |
送花文章: 2032,
![]() |