ARM 预备知识

一、2种工作状态

1、ARM 态:32位,执行字对其的32位 ARM 指令;

2、Thumb 态:16位,执行半字对齐的16位指令。

3、两种状态间使用 Bx Rn 指令进行切换:

    Bx是跳转指令,而Rn是寄存器(1个字,32位),如果Rn的位0为1,则进入Thumb状态;如果Rn的位为0,这进入ARM状态。原 因:ARM指令的后两位始终为0,没有用,而Thumb指令的后一位始终为0,没有用,因此采用位0来表示ARM指令与Thumb指令的切换标志位。ARM和Thumb两种状态之间的切换不影响处理器的工作模式和寄存器的内容;ARM处理器在处理异常时,不管处理器处于什么状态,则都将切换到ARM状态。现在几乎只需要关注 ARM 态。

二、7种工作模式


三、37 个寄存器



如上所示: I位置位表示禁用中断,F位置位表示禁用快速中断;T位决定处理器当前工作模式。
NZCV 为条件码,它们会影响指令的操作,这一点将会在下面看到。

四、ARM 的指令系统

1、特点

① ARM内核属于RISC结构,所以其指令集有着一些独特的特点:指令长度固定,指令格式的种类少,寻址方式简单;

② ARM处理器的指令集是加载/存储型的,也即指令集仅能处理寄存器中的数据,而且处理结果都要放回寄存器中,而对系统存储器的访问则需要通过专门的加载/存储指令来完成。

2、ARM 指令的格式


3、8种寻址方式


4、7类指令






  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值