10.07.2015 Views

PDF version - ARM Information Center

PDF version - ARM Information Center

PDF version - ARM Information Center

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

C, C++ 및 어셈블리 언어 조합4.1 명령어 내장 함수, 인라인 어셈블러 및 임베디드 어셈블러 사용명령어 내장 함수, 인라인 어셈블러 및 임베디드 어셈블러는 정상적인 방법으로는 C 또는 C++에서 직접 액세스할 수 없는 타겟 프로세서 기능을 사용할 수 있도록 <strong>ARM</strong> 컴파일러에서 기본적으로 제공됩니다. 예를 들면 다음과 같습니다.• 포화 산술• 사용자 지정 보조 프로세서• PSR (프로그램 상태 레지스터)명령어 내장 함수명령어 내장 함수를 사용하면 어셈블리 언어에서 복잡한 구현으로재정렬하지 않고도 C 및 C++ 소스 코드에서 타겟 프로세서 기능을손쉽게 통합할 수 있습니다. 명령어 내장 함수는 C 또는 C++의 함수호출과 비슷하지만 어셈블리 언어 명령어를 통해 컴파일되는 동안대체됩니다.참고명령어 내장 함수는 <strong>ARM</strong> 명령어 세트에 사용되므로 다른 아키텍처로 이식할 수 없습니다.인라인 어셈블러인라인 어셈블러는 C 및 C++와의 인터워킹을 지원합니다. 레지스터 피연산자는 임의의 C 또는 C++ 식일 수 있습니다. 또한 인라인 어셈블러는 복잡한 명령어를 확장하고 어셈블리 언어 코드를 최적화합니다.참고컴파일러 최적화로 인해 출력 객체 코드가 입력에 정확히 대응되지않을 수도 있습니다.임베디드 어셈블러임베디드 어셈블러에서는 어셈블러 지시어를 비롯하여 전체 <strong>ARM</strong>어셈블러 명령어 세트를 사용할 수 있습니다. 임베디드 어셈블리 코드는 C 및 C++ 코드와는 별도로 어셈블됩니다. 컴파일된 객체는 생성 후 C 및 C++ 소스의 컴파일을 통해 생성된 객체와 결합됩니다.4-2 Copyright © 2002-2008 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DUI 0203IKNon-ConfidentialUnrestricted Access

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!