微控制器指令週期的計算

時間 2021-09-02 04:45:43

1樓:

計算方法:pic微控制器的每四個時鐘週期為乙個內部指令週期,例如:8mhz的晶振,則內部指令週期為1/(8/4)= 0.5 us

例項一:35us, 8mhz的晶振, 8位定時器, 分頻比1/2 , 初值 e4

例項二:156.25us , 32768hz的晶振, 8位定時器, 分頻比1/32 , 初值 fc

計算方法一: 35 = =(256-初值)*分頻*4/晶振 + 14/分頻 =(256-初值)+14/2

計算方法二:0.015625 =(256-初值)*分頻*4/晶振 = (256-初值)*32*4/32768

指令週期是指令週期執行某一條指令所消耗的時間,它等於機器週期的整數倍。傳統的80c51微控制器的指令週期大多數是單週期指令,也就是指令週期=機器週期,少部分是雙週期指令。

擴充套件資料

在mcs-51系統中,有單週期指令,雙週期指令。四週期指令只有乘,除兩條指令。指令的運算速度和它的機器週期直接相關,機器週期數較小則執行速度快。

在程式設計時要注意選用具有同樣功能而機器週期數小的指令。每一條指令的執行都可以包括取指和執行兩個階段。在取指階段,cpu從內部或者外部rom中取出指令操作碼及運算元,然後再執行這條指令。

在8051指令系統中,根據各種操作的繁簡程度,其指令可由單位元組,雙位元組和三位元組組成。從機器執行指令的速度看,單位元組和雙位元組指令都可能是單週期或雙週期,

而三位元組指令都是雙週期,只有乘,除指令佔四個週期,一條指令的位元組數表徵這條指令在儲存器中所佔空間大小,而週期數表徵執行這條指令所花時間長短,即執行速度。

2樓:匿名使用者

1、時鐘週期

時鐘週期t又稱為狀態週期,是時序中最小的時間單位。具體計算就是1/fosc。也就是說如果晶振為1mhz,那麼時鐘週期就為1us;6mhz的話,就是1/6us。

2、機器週期

機器週期定義為實現特定功能所需的時間,或完成某一規定操作所需的時間,通常由若干時鐘週期構成。具體計算為:時鐘週期 x cycles。

如果微控制器是12週期的話,那麼機器週期就是t×12。假設晶振頻率為12m,微控制器為12週期的話,那麼機器週期就是1us。

3、指令週期

置零週期是時序中的最大時間單位,定義為執行一條指令所需的時間。通常,包含乙個機器週期的指令成為單週期指令,比如clr,mov等等。包含兩個機器週期的指令稱為雙週期指令。

另外還有4週期指令,比如乘法和除法指令。

而我現在使用的晶振為22.1184mhz,微控制器為4時鐘週期,所以機器週期為1/5.5296 us。

3樓:匿名使用者

指令表上都有啊

還計算?

4樓:匿名使用者

pdf上明明白的清清楚楚地都有標註滴親

微控制器中,什麼叫指令長度,區分微控制器指令的長度有什麼意義?微控制器指令長度什麼概念?詳細的介紹一下微控制器長度的計算方法。

指令長度就是一條指令的二進位制數字的多少。例如51微控制器有8位,16位,24位指令 8位 累加器 暫存器間的加 減 與 或等算術和邏輯運算指令,3位操作碼可區分8種運算 3位操作碼可區分8個暫存器 其他定義 16位 累加器 暫存器與乙個 立即數 之間的加 減 與 或等算術和邏輯運算指令,需要乙個8...

微控制器加法指令只怎麼執行的,51微控制器的加法指令到底怎麼加啊,例如12A4H 0FE7H

a,30h是將30h記憶體中數加a放到a的儲存單元。84h 8dh,d是13,加4為17,0到15即0到f這16個數,結果為1,進位標誌c為有效,然後加進8 8 c 17,還是保留1並進位,所以最後是11h。psw是微控制器內部標誌暫存器,是微控制器執行必不可少的基本運算基礎,cy是進位標誌,是位元...

在51微控制器的組合語言中的雙週期指令說週期讀入操作碼並丟棄,既然讀了又丟棄了還要週期幹什

第乙個問題 雙週期指令,第二週期讀的是運算元,只有在第一週期讀操作碼的,而有幾條指令是單位元組的,也需要兩個週期,這不是浪費時間,是因乙個週期是不能完成的,這不是你想像的那樣。第二個問題 要做計時,不管是倒計時還是正常計時,用延遲函式來做,這種方法計時是不準確的,只有用定時器才比較準確。第三個問題 ...