








中断-------------外部硬件的触发
软中断-----------系统调用
复位-------------如死机
未定义指令-------undefine
数据异常---------数据越界
Reset和复位---------------------SVC(超级用户模式)
prefetch(预取)data abort--------abort
user system模式切换到特权模式只能通过中断的方式,而从特权模式切换到用户模式(user system)只需要程序员修改cpsr就可以实现
异常的触发是随机的 (所有需要的中断向量表来记录,实现跳转到入口地址)
bl带链接的跳转指令,指令先将下一条指令拷贝到的r14(连接寄存器中),然后跳转到指定的地址去执行
mov pc ,lr 可以跳回到原来的地址
load/store架构规定,存储器之间不能拷贝,需要寄存器进行中转
ldr r0,[r1,#8] //将存储器地址为r0+8的字数据读入寄存器0中
str r0,[r1,#12]!来自动更新基止寄存器(r1+12),前++
str r0,[r1],#12 更新基止寄存器(r1+12)后++
最后
以上就是感动路人最近收集整理的关于使用swi软件中断模拟中断的流程的全部内容,更多相关使用swi软件中断模拟中断内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复