1樓:匿名使用者
指令長度就是一條指令的二進位制數字的多少。例如51微控制器有8位,16位,24位指令
8位:累加器、暫存器間的加、減、與、或等算術和邏輯運算指令,(3位操作碼可區分8種運算+3位操作碼可區分8個暫存器+其他定義)
16位:累加器、暫存器與乙個「立即數」之間的加、減、與、或等算術和邏輯運算指令,需要乙個8位二進位制數,所以比8位指令長
24位指令:與儲存器訪問數有關的「直接位址」指令需要16位位址,加首位元組就要24位了,直接轉移和呼叫子程式指令,也需要16位位址。
綜上所述,指令長度與定址方式密切相關。
2樓:匿名使用者
乙個指令中包含的2進製**的位數,稱為指令長度。 指令長度=操作碼的長度+運算元位址的長度x運算元位址個數
3樓:西門不敗
指令一般是 操作符+運算元1+【運算元】2+【運算元3】運算元2 和 運算元3 不是每個指令都有的這樣一來就有很多指令是1乙個運算元 有兩個運算元的於是就出現了指令長度這個概念
4樓:俱懷逸興壯思飛欲上青天攬明月
指令長度是指乙個指令中包含的2進製**的位數。指令長度=操作碼的長度+運算元位址的長度。
微控制器是一種積體電路晶元,是採用超大規模積體電路技術把具有資料處理能力的**處理器cpu、隨機儲存器ram、唯讀儲存器rom、多種i/o口和中斷系統、定時器/計數器等功能整合到一塊矽片上構成的乙個小而完善的微型計算機系統,在工業控制領域廣泛應用。從上世紀80年代,由當時的4位、8位微控制器,發展到現在的300m的高速微控制器。
區分微控制器指令的長度有什麼意義?微控制器指令長度什麼概念?詳細的介紹一下微控制器長度的計算方法。
5樓:匿名使用者
用彙編時,計算位址時要用到。長度就是你說的幾個位元組,至於長度,不用計算,可以查指令表。當然也有一定規律可循。至於c語言,就不用考慮這長度了。
舉個乙個延時10ms子程式的例子:
d10ms: ;晶振12mhz
mov r7,#250
mov r6,#20 ;雙位元組指令djnz r6,$ ;雙位元組指令djnz r7,$-4 ;r7不為0,從本條指令往前跳4 個位元組處執行。這樣就是跳到mov r6,#20ret
6樓:
實際運用中,多數情況下,沒什麼意義;
之所以要了解,主要是對實時性要求很嚴格的程式工程來說,這類工程,需要的執行週期很短,程式很好,所以,你要明白每條指令執行多長時間,通過對指令的優化,使得程式乙個週期達到最小,這類程式多數用組合語言編寫;
而實際運用中,很少有對實時性要求非常非常嚴格的情況,且一般運用中,工程量較大,多數用c語言,靠編譯器自動優化,所以,你明白指令長度和執行週期,對51來說,沒什麼意義。
微控制器指令的位元組數和週期數分別是什麼
7樓:天王星雲
位元組數就是指該指令的長度,畢竟指令從本質上來說也是由最小單位bit構成的。微控制器中的指令位元組一般有單位元組(8bit)、雙位元組(16bit)。
指令週期就是指執行該指令需要多少個機器週期。
51微控制器指令長度,有兩位元組三位元組,指令暫存器長度是乙個位元組,指令長度等於指令暫存器長度不矛盾嗎?
8樓:匿名使用者
指令長度等於指令暫存器長度,這並不矛盾。對於51微控制器,執行指令時,是先取第乙個位元組的指令碼,也叫操作碼,進行解碼,然後執行。如果是單位元組指令就執行操作了。
如果是兩個位元組,或三個位元組的指令,就會再取出第二位元組,第三個位元組,第二,第三位元組通常是立即數,位址,偏移量等運算元,取出這些運算元後,就會進行計算,或按立即數,位址傳送資料了,是偏移量就計算目標位址然後跳轉了。
總結,51微控制器是逐一位元組取出指令碼的,並不是一下子全部取出二個,三個位元組的指令。而只有第乙個位元組才是操作碼,其餘是運算元。
有關微控制器指令的位元組長度問題
9樓:匿名使用者
指令的長度和執行週期,在講微控制器的書上一般都有。
《微控制器原理及其應用》書中61頁
資料傳送類指令表 列有全部指令 助記符 說明 位元組數 執行時間(機器週期)
指令**(機器**)
10樓:做而論道
指令的位元組長度,在編寫組合語言的查表指令時,是應該事先知道的。
指令的執行週期,在編寫組合語言的延時程式時,也是應該事先知道的。
指令的長度和執行週期,在講微控制器的書上一般都有。
如果使用keil軟體,編譯之後,在「反彙編視窗」,可以清楚的看到每條指令的機器碼,指令的長度,一目了然。
在keil軟體進行除錯時,所花費的機器週期數目,在左邊的視窗,也可以清楚的看到。
11樓:匿名使用者
不用記了,以前人工彙編的時候才用得到,現在就算彙編也都是有程式幫你生成機器碼了,不過你只要知道一般情況下,指令位元組越少,執行越快就行了,具體的不用深究。
51微控制器怎樣從RoM中取指令,微控制器中訪問ROM指令的操作碼是什麼?
這是微控制器工作時,完全是自動完成的,不需要任何的人為的干預,只要上電並復位後,進入工作狀態,就自動從rom中取指令開始執行了。 給你個 裡面有將,你可以看一看 微控制器中訪問rom指令的操作碼是什麼? 51微控制器要訪問rom時的指令操作碼是movc,具體指令有 movc a,a pc 對應的機器...
微控制器彙編DA指令什麼用,微控制器組合語言十進位制調整da
胡像貓 微控制器彙編言語da指令,是指十進位制加法運算。是結合加法指令一起用的,例如daa,這條指令是十進位制調整指令,用來在進行十進位制運算 bcd碼 時進行校正的。當兩個bcd碼加法時,01h 09h應該是等於10h,但由於 微控制器的加法指令是二進位制的運算,加完之後得到的結果是0ah,這時就...
微控制器指令週期的計算
計算方法 pic微控制器的每四個時鐘週期為乙個內部指令週期,例如 8mhz的晶振,則內部指令週期為1 8 4 0.5 us 例項一 35us,8mhz的晶振,8位定時器,分頻比1 2 初值 e4 例項二 156.25us 32768hz的晶振,8位定時器,分頻比1 32 初值 fc 計算方法一 35...