C51和汇编混合编程函数声明
先看个例子:
本文引用地址:https://www.eepw.com.cn/article/201611/317683.htm?PR?CLRME SEGMENT CODE; //在程序存储区中定义段
PUBLIC CLRME; //声明函数
RSEG ?PR?CLRME; //函数可被连接器放置在任何地方
CLRME:
MOV R0,#7FH
CLR A
LOOP:
MOV @R0,A
DJNZ R0,LOOP
RET
END
只需给存放功能函数的段指定一个段名;
?PR? CLRME SEGMENT CODE;作用是在程序存储区中定义段,CLRME为段名,?PR?表示段位于程序存储区内
PUBLIC CLRME;作用是声明函数为公共函数
RSEG ?PR?CLRME;表示函数可被连接器放置在任何地方,RSEG是段名的属性
段名的开头为PR,是为了和C51内部命名转换兼容,命名转换规律如下:
CODE-?PR?CO
XDATA-?XD
DATA-?DT
BIT-?BI
PDATA-?PD
评论