Dear Sirs,
I want to write a function likes below,
int sub(unsigned int x)
{
#pragma ASM
MOV A,#x
#pragma ENDASM
}
But the keil-C shows the message: error A45: UNDEFINED SYMBOL (PASS-2)
Does the Assembler not know how to access the variable in C ?
How could I pass the variable from C to assemble?
Really thanks for your reply.
BR,
Eddie
shihwen chou said: I want to write a function likes below
Why?
If it really needs to be done in assembler, then do it in a proper assembler module.
For an easy way to create a 'C'-callable assembler function, see:
http://www.8052mcu.com/forum/read/149030
I wholeheartedly support using that approach, inline assembler usually end up in something unmaintainable.
in my book "difficult to maintain" equals unmaintainable