Первым портом вызова для вопросов набора команд ARM является соответствующее Руководство по архитектуре ARM.Например, Cortex-M3 использует ARMv7-M .
Там вы можете найти:
B5.2.2 MRS Перейти к регистрациииз специального регистра
перемещает значение из выбранного регистра специального назначения в регистр общего назначения.
В различных местах есть списки конкретных регистров специального назначения, таких какэто статья и более определенно в руководстве по архитектуре и Техническом справочном руководстве (TRM) для конкретного ядра, используемого в вашем SoC.
Регистры специального назначения - это архитектурно определяемое внутреннее состояние процессоратакие как флаги ALU, состояние модели исключения, элементы управления безопасностью и т. д. Они отличаются от регистров общего назначения r0-r14, которые доступны для основной части набора команд.Модель безопасности процессора обычно ограничивает доступ к большей части этого состояния (поэтому пользовательский код не может повысить свои привилегии).
Специальные инструкции используются для доступа к регистрам специального назначения (и тесно связаны с сопроцессором).регистры) частично для обеспечения соответствующих проверок разрешений и частично для увеличения адресуемого пространства (за счет предоставления только двух типов операций).