码迷,mamicode.com
首页 > 其他好文 > 详细

ARM基础知识

时间:2015-04-20 00:29:08      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:

ARM处理器模式:

模式可以理解为 工作环境。

异常模式:SVC管理模式、 FIQ 快速中断模式 、 IRQ中断模式、Abort中止、Undef 未定义模式;

正常模式:System系统模式、 User 用户模式

1-6 模式称为特权模式,7为非特权模式。

?

PC机里面有一个运行级别的概念。

?

某些程序运行在这个模式下,另一些程序在另一个模式下。

ARM状态:

执行arm指令。Pc值字对齐(32位)代码量变小。

Thumb状态:

执行thumb指令。Pc值半字对齐(16位)。

?

ARM处理器有37个32位长的寄存器。

?

通用寄存器:

参与运算,保存运算结果。(凡是运算涉及到的寄存器都是通用寄存器)

Add r0, r1,r2 (r1+r2 = r0)

?

R0~R15 在用户模式与系统模式下

R13 :堆栈指针寄存器 stack poiter 堆栈指针。(sp)

R14:链接寄存器(记录上一次记录的位置)

R15:程序计数器pc,永远指向取值的的指令地址。

代码区 、 数据区、 bss段。

内存里面一般不能没有栈。栈的位置与代码放入内存的顺序相反。

把2、3、5等的地址放入其地址。

技术分享

?

?

状态寄存器:

?

?

通用寄存器:

Usr/sys :

Ro – R15

Irq:

?

状态寄存器:

Cpsr current program state register。当前程序状态寄存器。

技术分享

以上总结下,总共37个寄存器。

?

?

汇编代码:

伪指令+指令

数据传送指令:MOV + 立即数、寄存器、寄存器移位

比较指令:CMP 15种条件。

技术分享

技术分享(logic shift right 逻辑右移R4位)

?

技术分享

?

技术分享

ARM基础知识

标签:

原文地址:http://www.cnblogs.com/zhuxuekui/p/4440419.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!