51微控制器中組合語言如何呼叫c的子程式

2021-03-10 21:06:37 字數 1946 閱讀 4841

1樓:匿名使用者

我的程式是keil編譯的,如下

先申明extrn code (_send_crc) ;send_crc是c中的函式,彙編中加了_

呼叫的時候

lcall _send_crc

如果要專

使用c中的變數,那麼code變成

屬相應的data,xdata等

2樓:匿名使用者

我的程bai序keil編譯器,

extrn code(du_send_crc)的第一個國家zhisend_crc c函式編譯加上呼叫dao_lcall _send_crc

如果您要成相應的資料,然內後使用容變數在c,xdata**

3樓:匿名使用者

我的程來序keil編譯器,

extrn code(_send_crc)的第一自個國家send_crc c函式編譯加上bai呼叫_lcall _send_crc

如果您要成相應du的zhi資料,然後使用變數dao在c,xdata**

4樓:匿名使用者

用逆向思維考慮就是在c語言下插入彙編

5樓:匿名使用者

查查c的編譯

器和彙編編譯器的資料,上面有詳細的說明。

一般在彙編中用extern宣告外專部函式,將c語言中屬的函式名前面加上下劃線就是彙編的函式名,有些編譯器是這樣的,並不是所有的編譯器都是這樣的。還是要查編譯器的使用說明才能知道你用的編譯器是怎麼操作的。

如果是keil,應該是上面的操作。

6樓:匿名使用者

請您留下郵箱,我給您個檔案,您就知道如何

51微控制器程式設計時彙編和c語言如何結合?

7樓:匿名使用者

c語言和組合語言之間主要存在:相互呼叫、混合程式設計等關係,舉例來說吧:

1、c語言呼叫匯編回子程式答

此時,彙編子程式需要申明為外部程式

#include

extern void delay(void)sbit pluse=p1^0;

main()

}彙編子程式:

彙編部分需要做如此處理。

public delay

delay segment code

rseg delay

delay:

mov r2,#250

djnz r2,$

retend

2:c語言中嵌入彙編,這個比較簡單用巨集指令包含進來就可以實現。

void delay(void)

51微控制器程式設計時彙編和c語言如何結合

8樓:匿名使用者

c語言和組合語言之間主要存在:相互呼叫、混合程式設計等關係,舉例來說吧:

1、c語言呼叫匯編子程式

此時,彙編子程式需要申明為外部程式

#include

extern void delay(void)sbit pluse=p1^0;

main()

}彙編子程式:

彙編部分需要做如此處理。

public delay

delay segment code

rseg delay

delay:

mov r2,#250

djnz r2,$

retend

2:c語言中嵌入彙編,這個比較簡單用巨集指令包含進來就可以實現。

void delay(void)

9樓:匿名使用者

在keil工程欄中右鍵.c檔案 選擇options for file然後把這2個勾上

就能在c語言中嵌入彙編了。

格式是這樣的或者

10樓:匿名使用者

中西結合 專業**胃必治

微控制器組合語言填空,微控制器組合語言作業

delay mov r3,20 設定50ms計數迴圈初值 mov tmod,10h 設定時器1方式1mov th1,03ch 置定時器初值mov tl1,0b0h setb tr1 啟動t1lp1 jbc tf1 lp2 查詢計數溢位sjmp lp1 lp2 mov th1,03ch 重新制定時器初...

51微控制器的指令是組合語言嗎

組合語言 assembly language 是一種用於電子計算機 微處理器版 微控制器或其他可程式設計器件的低權級語言,亦稱為符號語言。在組合語言中,用助記符 mnemonics 代替機器指令的操作碼,用地址符號 symbol 或標號 label 代替指令或運算元的地址。在不同的裝置中,組合語言對...

微控制器彙編程式,微控制器(組合語言)程式

這個是外部擴充套件的ram,fef0h是存資料的地址,mov dptr 0fef0h是給資料指標賦值,movx dptr,a是間接定址,將a中資料送到外部ram的fef0h中,中斷服務程式後面應該有reti,挺容易的,看看書,這例題允許了中斷,給出了中斷處理程式,自己看書學得較為深刻。ofefoh指...