| |||
| Home > 컴파일러 관련 기능 > 키워드 및 연산자 > __asm | |||
이 키워드는 컴파일러에서 ARM 어셈블러 armasm으로 정보를 전달하는
데 사용됩니다.
이 키워드의 정확한 작업은 사용법에 따라 다릅니다.
__asm 키워드는 임베디드 어셈블리 함수를 선언하거나
정의하는 데 사용할 수 있습니다. 예를 들면 다음과 같습니다.
__asm void my_strcpy(const char *src, char *dst);
자세한 내용은 컴파일러 사용 설명서에서 7-19페이지의 임베디드 어셈블러를 참조하십시오.
__asm 키워드는
인라인 어셈블리를 함수로 통합하는 데 사용할 수 있습니다. 예를 들면 다음과 같습니다.
int qadd(int i, int j)
{
int res;
__asm
{
QADD res, i, j
}
return res;
}
자세한 내용은 컴파일러 사용 설명서에서 7-2페이지의 인라인 어셈블러를 참조하십시오.
__asm 키워드는
C 기호에 어셈블러 레이블을 지정하는 데 사용할 수 있습니다. 예를 들면 다음과 같습니다.
int count __asm__("count_v1"); // export count_v1, not count
자세한 내용은 어셈블러 레이블을 참조하십시오.
__asm 키워드는
명명된 레지스터 변수를 선언하는 데 사용할 수 있습니다. 예를 들면 다음과 같습니다.
register int foo __asm("r0");
자세한 내용은 명명된 레지스터 변수를 참조하십시오.