프로세서
메모리에 저장된 명령어들을 실행하는 유한 상태 오토마톤을 말한다.
32비트 ARM Instruction Set
1.모든 ARM 명령어는 조건부 실행이 가능하다.
2.모든 ARM 명령은 32bit로 구성. => 파이프라인 구성용이, 명령 디코더 구현 용이, 고속으로 처리 가능.
3.Load / Store 같은 메모리 참조 명령이나 Branch 명령에서는 모두 상대주소(Indirect Address)(내 주소위치에서 + α) 방식을 사용.
4.ARM 명령은 크기 11개의 기본적은 Type으로 구분.

ARM은 칩의 기본 설계 구조만 만들고, 실제 기능 추가와 최적화 부분은 개별 반도체 제조사의 영역으로 맡긴다. 따라서 물리적 설계는 같아도, 명령 집합이 모두 다르기 때문에 서로 다른 칩이 되기도 하는 것이 ARM.
칩이 논리적 구조인 명령 집합으로 구성되면서 다양한 제품군을 만날 수 있는
특징이 있다
복잡한 것 보다 효율적임을 기반하기 때문에 구조 자체는 단순하다.
그러므로 ARM 기반 프로레서가 더 작고, 효율적이며 상대적으로 느리다.
장점
-> 코드의 크기를 줄일 수 있다.
-> 8비트나 16비트와 같은 좁은 메모리 인터페이스에서 ARM 명령을 수행 할 때 보다 성능이 효율적이다.
-> 크기가 작고 전원소모가 작아서 다양한 모바일 기기에 사용되고 있다
-> 하나의 ARM 기기에 동작하는 OS는 다른 ARM 기반 기기에서도 잘 동작한다.
-> 조건부 실행이 안된다.
-> Immediate 상수 값이 표현 범위가 적다.
->ARM 프로세서가 탑재된 기기에서만 실행 가능
-> 애플 기기는 불가능하다.
애플기기는 불가능하다는 게 무슨 의미일까요?