[Arm프로세서] Armv7 동작 모드를 저장하는 cpsr 레지스터

Guillermo Austin Kim|2021년 9월 13일
Posts

[Arm프로세서] Armv7 동작 모드를 저장하는 cpsr 레지스터

Guillermo Austin Kim|2021년 9월 13일

cpsr 레지스터는 Current Program Status Register의 약자로 Arm 코어의 세부 상태를 저장하는 용도로 사용됩니다. 먼저 Arm 스팩 문서에서 정의한 cpsr 레지스터의 비트 맵을 소개합니다. 그림 3.2 CPSR 레지스터의 비트 맵 그림 3.2에서 가장 오른쪽 부분을 보면 M[4:0]이라고 표시된 부분이 있습니다. 이는 0~4번째 비트를 나타내는데, 이 5개 비트에 Arm 동작 모드를 설정하는 비트가 설정돼 있습니다. 다음 표는 Arm 동작 모드 별로 M[4:0]에 저장된 비트 정보입니다. 표 3.3 CPSR M[4:0]에 저장된 Arm 동작 모드 인코딩 정보 위 표를 읽을 때 한 가지 유념해야 할 사실이 있습니다. PL0 권한으로 실행되는 User 모드에서