清0:bic

置1:orr

访问cpsr和spdr要用到mrs和msr指令

mrs是把状态寄存器的值赋给通用寄存器

msr是把通用寄存器的值赋给状态寄存器

 .text
.global _start
_start:
b reset
ldr pc, _undefined_instruction
ldr pc, _software_interrupt
ldr pc, _prefetch_abort
ldr pc, _data_abort
ldr pc, _not_used
ldr pc, _irq
ldr pc, _fiq _undefined_instruction: .word undefined_instruction
_software_interrupt:.word software_interrupt
_prefetch_abort:.word prefetch_abort
_data_abort:.word data_abort
_not_used:.word not_used
_irq:.word irq
_fiq:.word fiq undefined_instruction:
nop software_interrupt:
nop prefetch_abort:
nop data_abort:
nop not_used:
nop irq:
nop fiq:
nop reset:
bl set_svc set_svc:
mrs r0, cpsr
bic r0, r0, #0x1f
orr r0, r0, #0xd3
msr cpsr, r0

黄色部分就是设置处理器在svc模式

执行完set_svc之后,就需要加上 mov  pc  lr,这是把之前跳转的lr保存的pc地址给返回给pc

最新文章

  1. PHP内核探索之变量(3)- hash table
  2. PHP将uncode转utf8,一行代码解决问题
  3. 关于Java擦除特性
  4. ABAP程序中退出操作(CHECK, EXIT, RETURN, LEAVE PROGRAM)
  5. 洛谷P2727 01串 Stringsobits
  6. (转) C++ static、const和static const 以及它们的初始化
  7. Thread的第二天学习
  8. Hadoop与HBase中遇到的问题
  9. CheckBox控件实现选项的选中
  10. windows屏幕保护程序opengl模板
  11. THinkPHP简单漂亮的分页类 DownLoad
  12. 【BZOJ 2004】: [Hnoi2010]Bus 公交线路
  13. 不要再被骗了------QQ盗号原理大揭秘
  14. 树上背包O(n*m^2)|| 多叉树转二叉树 || o(n*m)???
  15. Gym - 100781G-Goblin Garden Guards
  16. 比较两个ranges(equal,mismatch,lexicographical_compare)
  17. Windows bat 学习(高级)
  18. Centos简介
  19. Java 数组如何转成List集合
  20. 【c++】字符串流输出恢复状态问题

热门文章

  1. Oracle数据库密码过期重置
  2. UIButton设置按钮点击范围大于可视范围
  3. vuefor循环
  4. 代码实现:判断101-200之间有多少个素数(质数),并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
  5. flutter 快速生成Widget
  6. Python基本语法_函数属性 & 参数类型 & 偏函数的应用
  7. java:Review(J2ee)
  8. 【HANA系列】SAP HANA SQL/MDX及TCP/IP端口介绍
  9. docker 安装 gitlab 中文社区版
  10. 【HTTP】一、HTTP协议简介及其工作流程