ARM学习笔记&思考_20140810

一、CPSR的中断禁止位

中断禁止位包括I、F,用来禁止或允许IRQ和FIQ两类中断,当I=1时,表示禁止IRQ中断,I=0时,表示允许IRQ中断;当F=1时,表示禁止FIQ中断,F=0时,表示允许FIQ中断。

思考:是否可以利用禁用中断位达到反调试的目的?

摘自:《汇编语言程序设计——基于ARM体系结构(第2版)》P53


二、汇编指令格式

用助记符表示的ARM指令一般格式如下:

<opcode> {<cond>} {S}<Rd>,<Rn> {,<OP2>}
格式中<>的内容必不可少,{}中的内容可省略。如<opcode>是指令助记符,是必须的。而{<cond>}为指令的执行条件,是可选的,缺省情况下表示使用默认条件AL(无条件执行)。
<opcode>表示操作码,如ADD表示算术加法。
{<cond>}表示指令执行的条件域,如EQ、NE等,缺省为AL。
{S}决定指令的执行结果是否影响CPSR的值,使用该后缀则指令执行的结果影响CPSR的值,否则不影响。
<Rd>表示目的寄存器。
<Rn>表示第一个操作数,为寄存器。
<op2>表示第二个操作数,可以是立即数、寄存器和寄存器移位操作数。

例如指令ADDEQS R0, R1, #8;其中操作码为ADD,条件域cond为EQ,S表示指令的执行影响CPSR寄存器的值,目的寄存器Rd为R0,第一个操作数寄存器Rn为R1,第二个操作数OP2为立即数#8。

摘自:《汇编语言程序设计——基于ARM体系结构(第2版)》P65

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值