看板 ASM 關於我們 聯絡資訊
如標題 因為最近有買本8051的書自學 本人初學 書上有講到指令部分 我想請教一下關於指令長度與時間計算的問題 以下舉例 MOV A#data 指令長度:2Byte 執行時間:1週期 MOV A,Rn 指令長度:1Byte 執行時間:1週期 MOV A,direct 指令長度:2Byte 執行時間:1週期 MOV A,@Ri 指令長度:1Byte 執行時間:1週期 我想知道這指令長度與執行時間的週期次數是怎麼計算的? 研究了兩三天我還是不懂這指令長度與執行時間是怎麼計算的 還是這些是要直接背起來的? 希望高手協助 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.169.131.66
WolfLord:沒有關聯,完全看各家CPU指令解碼器跟解算邏輯而定 09/15 22:04
WolfLord:你列的這個是INTEL的標準8051(原始版本)而各家的8051 09/15 22:05
WolfLord:除非標明增強或超級8051外大多依照這個規則,但是實際產 09/15 22:05
WolfLord:品用的8051就各自為政有快有慢了。 09/15 22:06
wcw519:所以樓上的意思是計算這些並不是在學習8051中必要知道的? 09/15 22:31
m490521:你會發現程式發呆的時間比真正運作的時間多很多倍 09/15 22:37
WolfLord:當你要用來延時的時候查表就好,沒必要鑽牛角尖。 09/15 23:31
kikiqqp:指令長度是計算消耗多少空間的,執行週期是看花多少時間 09/17 01:57
kikiqqp:除了寫傳輸、delay和timer外, 很少去刻意精算消耗時間 09/17 01:58
narcissusli:看你用哪家的mcu,把指令集印出查表即可,每家都不同. 09/27 00:03
narcissusli:算執行時間主要用在特定程序, 指令長度....縮code ?! 09/27 00:05