51 Microcontrolador, ¿cómo combinar lenguaje C y lenguaje ensamblador? Quiero llamar a una función en lenguaje ensamblador en lenguaje C.
Primero escriba un archivo H y declare la función de ensamblaje en él
Por ejemplo:
extern bit plus(iu8 *d_dat, iu8 *s_dat, u8 len);
Luego, cree un archivo ASM, como tool.asm
Primero especifique el área de almacenamiento PR?_ plus?TOOL SEGMENT CODE PR?fixed y luego agregue un guión bajo antes del nombre de la función, ?TOOL es el nombre de este asm Nombre, CODE es el área de almacenamiento
Luego afirma la función hacia afuera
PUBLIC _plus
Finalmente afirma el cuerpo de la función
RSEG ?PR?_ plus?HERRAMIENTA
_plus:
USANDO 0
. . . .
ret
Paso de parámetros, R7 es el primer parámetro, R6 es el segundo parámetro. Si no es una cadena o el parámetro es un puntero, ocupará más de un Rn,
Por ejemplo:
En esta función, d_dat es R7, R6; s_dat es R5, R4; len es R3