2016-12-29 21 views
0

В архитектуре ARM/Thumb имеется 16 (r0-r15) регистров в одном процессоре. Кроме того, Thumb-Instruction-Set может использовать только первые 8 (r0-r7) регистров и регистры r13, r14 и r15. Но последний 5 (r8-r12) регистр все еще находится в процессоре. Как мы можем использовать эти регистры Hi (r8-r12)?Как использовать регистр Hi (r8-r12) в Cortex-m0?

В последнее время я разрабатываю защитную схему в процессоре ARM Cortex-M0. В моем проекте я хочу использовать r9 и r10 для хранения некоторой информации. Поскольку другие инструкции не будут использовать эти регистры, поэтому мне не нужно толкать и всплывать эти регистры.

Может ли кто-нибудь помочь мне с этим? Должен ли я использовать инструкцию BX или BLX для переключения набора команд?

Instruction I use the r9 register

Wrong information

+0

Вы можете просто пропустить '.syntax unified' заявление в исходном файле ассемблера. –

ответ

0

Cortex-M0 поддерживает только набор команд Thumb (и некоторые инструкции из Thumb2). Таким образом, нет возможности переключения команд с Thumb на ARM.

Ссылка: https://en.wikipedia.org/wiki/ARM_Cortex-M#Instruction_sets

ARM документация от http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0040d/Bgbbfcgc.html дает небольшую подсказку о возможных использований высоких регистров.

[Если позволит время, я проба Somethings и будет обновлять этот пост в ближайшее время]