7.3.10. DCI

ARM 코드에서 DCI 지시어는 4바이트 단위로 정렬된 메모리의 워드를 하나 이상 할당하고 메모리의 초기 런타임 내용을 정의합니다.

Thumb 코드에서 DCI 지시어는 2바이트 단위로 정렬된 메모리의 하프워드를 하나 이상 할당하고 메모리의 초기 런타임 내용을 정의합니다.

구문

{label} DCI{.W} expr{,expr}

인수 설명:

expr

숫자 식 (숫자 식 참조) 입니다.

.W

있을 경우 Thumb 코드에 4바이트를 삽입해야 함을 나타냅니다.

사용법

DCI 지시어는 위치가 데이터 대신 코드로 표시된다는 점을 제외하고 DCD 또는 DCW 지시어와 매우 유사합니다. DCI는 사용 중인 어셈블러 버전에서 지원하지 않는 새 명령어의 매크로를 작성할 때 사용합니다.

ARM 코드에서 DCI는 필요한 경우 4바이트 단위로 정렬하기 위해 첫 번째로 정의된 워드 앞에 최대 3바이트의 패딩을 삽입합니다. Thumb 코드에서 DCI는 필요한 경우 2바이트 단위로 정렬하기 위해 처음 1바이트의 패딩을 삽입합니다.

DCI를 사용하여 명령어 스트림에 비트 패턴을 삽입할 수 있습니다. 예를 들어 다음과 같이 사용합니다.

DCI 0x46c0

Thumb 연산 MOV r8,r8을 삽입합니다.

DCD 및 DCDUDCW 및 DCWU도 참조하십시오.

예제 매크로

    MACRO           ; this macro translates newinstr Rd,Rm
                    ; to the appropriate machine code
    newinst     $Rd,$Rm
    DCI         0xe16f0f10 :OR: ($Rd:SHL:12) :OR: $Rm
    MEND

Thumb-2 예제

    DCI.W   0xf3af8000   ; inserts 32-bit NOP, 2-byte aligned.
Copyright © 2002-2008 ARM Limited. All rights reserved.ARM DUI 0204IK
Non-Confidential