设置SVC模式
2024-08-31 22:17:43
清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
最新文章
- PHP内核探索之变量(3)- hash table
- PHP将uncode转utf8,一行代码解决问题
- 关于Java擦除特性
- ABAP程序中退出操作(CHECK, EXIT, RETURN, LEAVE PROGRAM)
- 洛谷P2727 01串 Stringsobits
- (转) C++ static、const和static const 以及它们的初始化
- Thread的第二天学习
- Hadoop与HBase中遇到的问题
- CheckBox控件实现选项的选中
- windows屏幕保护程序opengl模板
- THinkPHP简单漂亮的分页类 DownLoad
- 【BZOJ 2004】: [Hnoi2010]Bus 公交线路
- 不要再被骗了------QQ盗号原理大揭秘
- 树上背包O(n*m^2)|| 多叉树转二叉树 || o(n*m)???
- Gym - 100781G-Goblin Garden Guards
- 比较两个ranges(equal,mismatch,lexicographical_compare)
- Windows bat 学习(高级)
- Centos简介
- Java 数组如何转成List集合
- 【c++】字符串流输出恢复状态问题
热门文章
- Oracle数据库密码过期重置
- UIButton设置按钮点击范围大于可视范围
- vuefor循环
- 代码实现:判断101-200之间有多少个素数(质数),并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
- flutter 快速生成Widget
- Python基本语法_函数属性 & 参数类型 & 偏函数的应用
- java:Review(J2ee)
- 【HANA系列】SAP HANA SQL/MDX及TCP/IP端口介绍
- docker 安装 gitlab 中文社区版
- 【HTTP】一、HTTP协议简介及其工作流程