偽指令在微控制器中到底是起到什麼作用

2022-06-25 07:11:50 字數 5356 閱讀 4150

1樓:威疇巧女

因為數碼管在動態迴圈顯示字碼時會因為沒有讓所有數碼管熄滅導致送入字碼時串碼出現的陰影,就是說把你想要顯示那位的字碼串到其他位的數碼管上顯示了,由於速度快所以呈現陰影,所以我們都要在字碼送給數碼管顯示後延時一定時間,再給數碼管送入0x00(16進位制),把所有的數碼管熄滅再重新送入其他字碼。

2樓:戲材操涵

彙編裡有,比如equ就是名稱定義,為下面程式設計好記例如:pe_t

equp3.5

;觸屏使能

sda_t

equp3.4

;觸屏資料

sck_t

equp3.3

;觸屏時鐘

db_t

equp3.7

;蜂鳴器

3樓:環聽安喻大

偽指令、指令,都是組合語言裡面的,c語言中那有這種說法?

偽指令,是指導編譯的。

c語言中,也有類似的語句,如:

#include

???#....

char

a,b,

c;……

參考:http://hi.

4樓:沙裡波特

作用,很多了。

比如:你想要在儲存器中,定義一些資料,你就可以用 db 偽指令。

你想要從某個儲存單元開始,存放程式,你就可以用 org 偽指令。

你想要結束編譯,你就可以用 end 偽指令。...

5樓:緒白山錯韻

偽指令是在彙編程式中使用的。

為了寫程式的方便,就像c語言,為了能用符號表示一些變數,就要用偽指令來定義變數,例如:

led1

bitp2.1

;bit

就是一條偽指令,定義引腳led1=p2.1times

equ30h

;equ也是一條偽指令,定義變數time=30h如是不用偽指令,在程式中就要直接寫p2.1和30h,這樣的程式可讀性差,不易修改和移植。

偽指令在微控制器中到底是起到一個什麼作用?

6樓:匿名使用者

偽指令是在彙編程式中使用的。

為了寫程式的方便,就像c語言,為了能用符號表示一些變數,就要用偽指令來定義變數,例如:

led1 bit p2.1 ;bit 就是一條偽指令,定義引腳led1=p2.1

times equ 30h ;equ也是一條偽指令,定義變數time=30h

如是不用偽指令,在程式中就要直接寫p2.1和30h,這樣的程式可讀性差,不易修改和移植。

7樓:湯圓8號

比如org ,end可以告訴cpu哪邊開始,那邊就結束了,可以防止誤操作。還有其它的偽指令,書上多有寫他們的作用。

8樓:做而論道

偽指令、指令,都是組合語言裡面的,c語言中那有這種說法?

偽指令,是指導編譯的。

c語言中,也有類似的語句,如:

#include<???>

#....

char a, b, c;

…… 參考:

9樓:雅酷

彙編裡有,比如equ就是名稱定義,為下面程式設計好記例如:pe_t equ p3.5 ;觸屏使能sda_t equ p3.

4 ;觸屏資料sck_t equ p3.3 ;觸屏時鐘db_t equ p3.7 ;蜂鳴器

微控制器裡equ是什麼指令?作用?

10樓:哎呀小白妞

單機片中equ指令是偽指令,作用是用賦值偽操作給重複出現的數值或暫存器賦予一個名字,即把一個符號名稱與一個整數表示式或一個任意文字連線起來,方便操作。

在微控制器中用equ指令來賦值以後資料或者暫存器的字元名,可以用來代表資料地址、**地址、或者用來當做立即數進行使用。

11樓:匿名使用者

我來回答吧。

equ其實就是為了書寫的方便,用equ左邊的來等價右邊的,不參與編譯的。

比如ppp equ 20h,在編譯之前,會將你程式裡出現的所有的ppp,都用20h替換。

你程式裡用到的p1和p0是系統已經定義的p口,這樣你程式裡出現p0、p1系統就不知道是8200h還是真正的p口了,所以這樣的定義是不符合要求的,改個名字就可以了。

第三個問題:138的g1是接高電平的,g2a、g2b是接低電平的,這樣138才會有輸出。

輸出的就是cba對應的譯碼值,比如cba是001,那麼y1輸出低電平,其他都為高。

12樓:匿名使用者

equ 是一條偽指令,是在你程式被編譯時,就將p0指向8300h。p1同理。

但是p0/p1這在標頭檔案裡(regxx.h)已經定義過了,指向了sfr中的p0和p1口。

所以你這裡定義,要將p0,p1改成別的標頭檔案裡沒有的,當然程式的p0和p1,也要相應的改動。

根據74ls138的規格書(網上搜「74ls138 pdf」),可以知道g1接高電平;g2a、g2b接低電平有效。

13樓:匿名使用者

賦值偽指令equ

格式為:

符號名 equ 表示式

功能是將表示式的值或特定的某個彙編符號定義為一個指定的符號名.

比如p1 equ 8200h就是將8200h單元定義為p1,作一個符號名以下方便程式設計.

呵呵,知道的就這一點點了,希望能幫上忙.

14樓:匿名使用者

偽指令,

p1,p2有點像高階語言中的保留字,已經被定義過,p1,p2,p3,p4幾個埠.

微控制器組合語言中,指令和偽指令有何區別?

15樓:匿名使用者

微控制器中指令是對應cpu的可執行**,在編譯時會分配儲存單元,執行時cpu按指令指引的方向和功能執行。偽指令是不可執行**,一般起輔助作用,是為編譯系統服務的,編譯時不會分配儲存單元,只是按偽指令的功能定位程式資料或指令位置。

16樓:

指令有對應的機器碼,直接指揮cpu幹活;偽指令沒有對應的機器碼,只是指示編譯器的編譯過程,編譯完成後在目標**(機器碼)中是沒有痕跡的。大多數偽指令只是為了寫程式方便和可讀性強而設定的,偽指令僅和編譯器有關,在cpu的指令系統中是沒有定義的。

17樓:做而論道

以前回答過:

18樓:匿名使用者

[指令語句]

每一條指令語句在源程式彙編時都要產生可供計算機執行的指令**(即目標**),所以這種語句又叫可執行語句。每一條指令語句表示計算機具有的一個基本能力,如資料傳送,兩數相加或相減,移位等,而這種能力是在目標程式(指令**的有序集合)執行時完成的,是依賴於汁算機內的**處理器(cpu)、儲存器、i/o介面等硬體裝置來實現的。

[偽指令語句]

偽指令語句是用於指示彙編程式如何彙編源程式,所以這種語句又叫命令語句。例如源程式中的偽指令語句告訴彙編程式:該源程式如何分段,有哪些邏輯段在程式段中哪些是當前段,它們分別由哪個段暫存器指向;定義了哪些資料,儲存單元是如何分配的等等。

偽指令語句除定義的具體資料要生成目標**外,其他均沒有對應的目標**。偽指令語句的這些命令功能是由彙編程式在彙編源程式時,通過執行一段程式來完成的,而不是在執行目標程式時實現的。

51微控制器中org是什麼意思

19樓:浮生梔

org是個用於定位的偽指令。

org(偽指令)(pseudo instruction)是用於對彙編過程進行控制的指令,該類指令並不是可執行指令,沒有機器**,只用於彙編過程中為彙編程式提供彙編資訊。例如,提供如下資訊:哪些是指令、哪些是資料及資料的字長、程式的起始地址和結束地址等。

偽指令有2個特點:

(1)由於是偽「指令」,因而它只存在於組合語言中。高階語言中不叫指令,叫語句;

(2)由於是「偽」指令,也即「假」指令,因而不是可執行指令,不會產生機器**,不會佔用rom空間,只用於彙編過程中為彙編程式提供彙編資訊。

擴充套件資料

模組彙編程式:

模組彙編程式 為適應模組程式設計方法而研製的。它除了克服簡單彙編程式的缺點之外,還提供並行設計、編碼和除錯不同程式模組的能力,而且更改程式時只更改有關的模組即可。每個彙編後的程式模組稱為目標模組,多個目標模組經連線裝配程式組合成一個完整的可執行的程式。

條件彙編程式:

條件彙編程式 主要特點是具有選擇彙編某些程式段的能力。它適用於編寫選擇性較大的程式或程式包,以便根據使用者的需要和裝置的配置情況剪裁、編制適當的軟體。

這種組合語言通常要引入「條件轉移」、「轉移」等彙編指示,以便根據使用者指定的彙編條件有選擇地彙編某些程式段或控制彙編程式的加工路徑。

巨集彙編程式:

巨集彙編程式 主要特點是在彙編程式中增加巨集加工功能。它允許使用者方便地定義和使用巨集指令,適用於程式中多處出現、具有一定格式、可以通過少數引數調節改變的程式段落的場合。

採用這種方法不僅減少程式的長度,增加可讀性,而且程式段落的格式需要改變時,只須改動定義處,而不必改動每一使用處。

20樓:匿名使用者

org是個用於定位的偽指令。

簡單的說就是把從這句話開始直到下一個org指令或者end指令前的程式語句都順序放在它指定的地址裡。比如說你的程式裡org只管了一個語句(ajmp main),則從0000h這個地址開始放語句。放多少,看下面有幾條語句(直到org或end 指令為止)。

同樣org 0030h是把它後面的所有到下一個org或end命令前的所有**都順序放到從0030h開始的程式單元。這應該是一個子程式。就像c語言裡的子函式。

21樓:小兵闖天涯

origin,表示一段程式的開始地址,即把這個程式放在flash的哪個地址。

org 000h 在彙編

中表示跳到微控制器記憶體地址處000開始執行,一般在開頭時使用。 「h」表示16進位制。不加「h」系統預設為10進位制。

mcs51微控制器的偽指令有哪些?

微控制器中調整指令daa是什麼意思

35h 27h 5ch 累加器 a 5ch經過 da a 累加器 a 92 da a 的指令是累加器十進位制調整.答案是制 a 62h da a 是bcd加法後的調整 兩個baibcd碼相加du 35 27 62add a,27後 a 5bh da a 進行調整就zhi 成了 62h 一定是兩個bc...

微控制器的CY位有什麼作用,微控制器中CY是什麼意思,舉個例子說說

微控制器的 復cy位簡介 微控制器制cy carry 用於表示加bai法進算中du的進位和減法運算中的借位zhi,加法運算中有dao進位或減法運算中有借位則cy位置1,否則為0。cy位是累加器的進位 借位標誌。對於無符號數的運算,cy位就可以表示其是否溢位。但如果是有符號數,則不能按cy標誌來判斷了...

微控制器中十進位制調整指令DAA是什麼意思

bcd碼轉換指令 比如說 81d 91d 172d 而 81h 91h 112h 這裡為了將81h 91h結果與81d 91d一致,經過da有 da 112h 112h 60h 172h雖然一個是16進位制一個是10進位制但172在形式上是相等的。mov r5,81h mov a,91h add a...