3.6.10. 단항 연산자

단항 연산자의 우선순위가 가장 높고 먼저 평가됩니다. 단항 연산자는 피연산자 앞에 나옵니다. 인접 연산자는 오른쪽에서 왼쪽으로 평가됩니다.

Table 3.6에서는 문자열을 반환하는 단항 연산자를 보여 줍니다.

Table 3.6. 문자열을 반환하는 단항 연산자

연산자

사용법

설명

:CHR:

:CHR:A

ASCII 코드 A가 포함된 문자를 반환합니다.

:LOWERCASE::LOWERCASE:string모든 대문자를 소문자로 변환하여 지정된 문자열을 반환합니다.
:REVERSE_CC::REVERSE_CC:cond_codecond_code에서 조건 코드의 반대 조건을 반환하거나, cond_code에 유효한 조건 코드가 들어 있지 않으면 오류를 반환합니다.

:STR:

:STR:A

논리 식에 사용되는 경우 숫자 식이나 문자열 "T" 또는 "F"에 해당하는 8자리 16진수 문자열을 반환합니다.

:UPPERCASE::UPPERCASE:string모든 소문자를 대문자로 변환하여 지정된 문자열을 반환합니다.

Table 3.7에서는 숫자 값을 반환하는 단항 연산자를 보여 줍니다.

Table 3.7. 숫자 또는 논리 값을 반환하는 단항 연산자

연산자사용법설명

?

?A

기호 A를 정의하는 행에서 생성된 실행 가능 코드의 바이트 수입니다.

+ -

+A

-A

단항 더하기 및 단항 빼기. + 및 –는 숫자 및 프로그램 기준 식에서 사용할 수 있습니다.

:BASE:

:BASE:A

A가 PC 상대 또는 레지스터 상대 식이면 :BASE:는 레지스터 구성요소의 수를 반환합니다. :BASE:는 매크로에 매우 유용합니다.

:CC_ENCODING::CC_ENCODING:cond_codecond_code에서 조건 코드의 숫자 값을 반환하거나, cond_code에 유효한 조건 코드가 들어 있지 않으면 오류를 반환합니다.

:DEF:

:DEF:A

A가 정의되어 있으면 {TRUE}이고, 그렇지 않으면 {FALSE}입니다.

:INDEX:

:INDEX:A

A가 레지스터 상대 식이면 :INDEX:는 기준 레지스터의 오프셋을 반환합니다. :INDEX:는 매크로에 매우 유용합니다.

:LEN:

:LEN:A

문자열 A의 길이입니다.

:LNOT:

:LNOT:A

A의 논리 보수입니다.

:NOT:

:NOT:A

A의 비트 보수입니다 (~~A와 같은 별칭).

:RCONST::RCONST:Rnr0 ~ r15에 해당하는 0 ~ 15의 레지스터 번호입니다.

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