4.10.2. SVC

관리자 호출

구문

SVC{cond} #immed

인수 설명:

cond

선택적 조건 코드입니다 (조건부 실행 참조).

immed

다음 범위에 있는 정수로 평가되는 식입니다.

  • ARM 명령어의 경우 0 ~ 224–1 (24비트 값)

  • 16비트 Thumb 명령어의 경우 0 ~ 255 (8비트 값)

사용법

SVC 명령어는 예외를 발생시킵니다. 즉, 프로세서 모드가 관리자로 변경되고, CPSR이 관리자 모드 SPSR로 저장되며, 예외가 SVC 벡터로 분기됩니다 (개발자 설명서의 6장 프로세서 예외 처리 참조).

프로세서에서는 immed를 무시하지만 예외 처리기에서는 요청 중인 서비스를 확인하기 위해 이 식을 검색할 수 있습니다.

Note

ARM 어셈블리 언어를 개발하는 과정에서 SWI 명령어의 이름이 SVC로 변경되었습니다. 이번 RVCT 릴리스에서는 SWI 명령어가 SVC로 디스어셈블되고 해당 명령어가 이전에는 SWI였다는 주석이 추가됩니다.

조건 플래그

이 명령어는 플래그를 변경하지 않습니다.

아키텍처

이 ARM 명령어는 모든 버전의 ARM 아키텍처에서 사용할 수 있습니다.

이 16비트 Thumb 명령어는 ARM 아키텍처의 모든 T 변형에서 사용할 수 있습니다.

Copyright © 2002-2008 ARM Limited. All rights reserved.ARM DUI 0204IK
Non-Confidential