導航:首頁 > 源碼編譯 > C語言嵌入匯編語言編譯報錯

C語言嵌入匯編語言編譯報錯

發布時間:2024-07-12 23:27:30

『壹』 單片機C語言編譯錯誤:requires ANSI-style prototype

需要要把調用的子函數放到main前面,或者在main函數前面先把需要調用的子函數定義聲明一下。

requires ANSI-style prototype的意思是:需要ANSI樣式原型。

(1)C語言嵌入匯編語言編譯報錯擴展閱讀

單片機匯編指令是為解決某些特定的問題代碼中必須嵌入匯編語言以代替C語言完成的單片機的編程,匯編語言對於程序調試是不可或缺的。它包括:算術操作類指令,布爾變數操作類指令,邏輯操作數指令,控制轉移類指令。

直接使用匯編指令編寫單片機程序,對硬體的控制更加直接,可以直接操作物理地址,寄存器,埠等;其它更高級的語言對硬體的控制是依賴於類庫來實現的。

對於一些對程序大小和運行速度有非常嚴苛要求的項目,都必須使用匯編指令。C語言只是為了方便編寫,與機器打交道的都是2進制代碼。

『貳』 是用c語言和匯編混合編的程序,在keil里編譯時出現C51 FATAL-ERROR -

程序問題。
LL SEGMENT CODE; // 在程序存儲區中定義段
PUBLIC LED; //聲明函數
FLAG DATA 20H
DPFLAG DATA 22H
RSEG LL; //函數可被連接器放置在任何地方
LED:
NOP
DISP: MOV P1,#0FFH ;顯示函數
MOV P2,#0
MOV DPTR,#TAB
MOV A,DPFLAG
CJNE A,#1,DISP0 ;判斷是否有選擇按鍵
SJMP N1
DISP0:MOV P1,#0F8H
MOV A,R2
MOVC A,@A+DPTR
MOV P2,A
NOP ;弄兩個空指令緩沖下數碼管
NOP
MOV P2,#0
N1: MOV A,DPFLAG
CJNE A,#2,DISP1
SJMP N2
DISP1: MOV P1,#0F9H
MOV A,R3
MOVC A,@A+DPTR
MOV P2,A
NOP
NOP
MOV P2,#0
N2: MOV A,DPFLAG
CJNE A,#3,DISP2
SJMP NEND
DISP2: MOV P1,#0FAH
MOV A,R4
MOVC A,@A+DPTR
MOV P2,A
NOP
NOP
MOV P2,#0
NEND: RET
NOP
RET
TAB: DB 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,40h,0
END
上面是匯編文件,。
#include<reg52.h>
extern void led();
void main()
{
P2=0XFF;
led();
while(1)
{
led();
}
}
這里是C文件。
你試試,我這個工程師可以的

閱讀全文

與C語言嵌入匯編語言編譯報錯相關的資料

熱點內容
linux與unixshell編程指南 瀏覽:129
vb6反編譯程序錯誤 瀏覽:117
伺服器弄掛有什麼影響 瀏覽:298
安卓軟體為什麼運行不了 瀏覽:521
什麼安卓手機是四方的 瀏覽:475
雲伺服器廠商租用多少錢 瀏覽:349
平安車貸解壓要多久 瀏覽:412
樂一php程序員待遇 瀏覽:162
ZDM命令無法識別 瀏覽:918
解壓小手工A4紙 瀏覽:979
鋼筋加密區是幾倍 瀏覽:668
編譯程序代碼軟體 瀏覽:804
怎麼恢復加密的東西 瀏覽:987
程序員賣茶 瀏覽:697
後端程序員英文 瀏覽:363
滴滴程序員平均月薪 瀏覽:591
如何使用ftp命令 瀏覽:788
小書亭下載的文件在哪手機文件夾 瀏覽:180
交叉編譯器編譯單個c文件 瀏覽:518
代理伺服器地址列表吧 瀏覽:936