Cortex-M

TRACE32
이동: 둘러보기, 검색

* 계속 업데이트 중 입니다. 링크를 통하여 해당 문서로 이동하실 수 있습니다. * 

 

Cortex-M instruction set

Branch instructions

B, BL, BX and BLX : Branch, Branch with Link 등 각종 분기문에 대한 설명입니다.

CBZ and CBNZ : Thumb-II에서만 사용되는 Compare and Branch 에 대한 설명입니다.


Load and store instructions

LDR and STR basic form : LDR/STR 명령의 기본 설명입니다.

LDR and STR, data width : 바이트(8-bit), 하프워드(16-bit), 워드(32-bit) 단위로 동작하는 LDR/STR 명령에 대한 설명입니다.

LDR and STR, immediate offset : "LDR R0, [R13,#0x48]" 과 같이 LDR/STR 명령에 상수값의 오프셋이 포함된 경우에 대한 설명입니다.

LDR and STR, register offset : "STR R0, [R2, R4]" 와 같이 LDR/STR 명령에 레지스터값의 오프셋이 포함된 경우에 대한 설명입니다.

 

Load Multiple and Store Multiple instructions

LDM and STM : 여러개의 데이터를 한번에 복사하는 load/store multiple에 대한 설명입니다.

PUSH and POP : full-descending 방식의 스택 메모리에 여러 레지스터 값을 쓰거나 읽어오는 PUSH, POP 명령에 대한 설명입니다.

 

General data processing instructions

ADD, ADC, SUB, SBC and RSB : 더하기, 빼기 등의 기본적인 레지스터 연산에 대한 설명입니다.

AND, ORR, EOR, BIC and ORN : AND, OR, XOR 등 비트 연산에 대한 설명입니다.

MUL, MLA, MLS, SMLAL, SMULL, UMLAL and UMULL : 곱셈 연산에 대한 설명입니다.

SDIV and UDIV : 나눗셈 연산에 대한 설명입니다.

SSAT and USAT : Saturating 명령에 대한 설명입니다.

MOVT, BFC and BFI : 값 대입, 비트필드 연산에 대한 설명입니다.

 

Miscellaneous instructions

IT : Thumb-II의 특이한 명령중 하나인, If-Then 명령에 대한 설명입니다.