C語言和匯編語言之間主要存在:相互調用、混合編程等關系,舉例來說吧:
1、C語言調用匯編子程序
此時,匯編子程序需要申明為外部程序
#include<reg51.h>
extern void delay(void)
sbit pluse=P1^0;
main()
{
while(1)
{
pluse=0;
delay();
pluse=1;
delay();
}
}
匯編子程序:
匯編部分需要做如此處理。
PUBLIC DELAY
DELAY SEGMENT CODE
RSEG DELAY
DELAY:
MOV R2,#250
DJNZ R2,$
RET
END
2:C語言中嵌入匯編,這個比較簡單用宏指令包含進來就可以實現。
void delay(void)
{
#pragma asm
mov r2,#250
djnz r2,$
#pragma endasm
}
|