
ARM Assembly
文章平均质量分 66
Decisiveness
这个作者很懒,什么都没留下…
展开
-
ARM cpsr_c
众所周知,ARM每种工作模式除R0~R15共16个寄存器外,还有第17个寄存器CPSR,叫做 当前程序状态寄存器,CPSR中一些位被用于标识各种状态,一些位被用于标识当前出于什么工作模式其中cpsr_c代表的是这32位中的低8位,也就是控制位当你看到有些程序里这样写msr cpsr_c 0xd2 /转载 2015-04-14 10:53:39 · 545 阅读 · 0 评论 -
ARM简介 (teq指令)
接触ARM,嵌入式也有1年多的时间,期间因为各种原因有一些断断续续,但是从未放弃。今天就来对ARM处理器进行一下总结,可能会比较乱,知识的跳跃也会比较大,但都是我根据自己的总结,有的是我以前记载在笔记本上的,有的则是我写在google notebook里面的东西。因为水平有限,可能还有会错误,欢迎指正!计算机体系结构:冯.诺依曼体系结构:我们将数据和指令都存储在一个转载 2015-04-16 11:21:30 · 10969 阅读 · 0 评论 -
ARM汇编程序---通过ARM汇编调用C语言函数实现累加
在C语言中定义实现一个累加的函数,参数是累加的最大值,从1加到此值。下面是代码:汇编代码:其中注意开始的参数的定义要紧靠前面,负责无法读出,其中要将C语言函数导入:IMPORT+函数名,并将你定义的汇编开始部分定义出去:EXPORT+开始函数名STACK_TOP EQU 0x40002000 N EQU 100 PRESERVE8 AREA HOM转载 2015-05-10 12:14:42 · 3317 阅读 · 0 评论 -
ARM中的预取命令pld的使用
ARM中的预取命令pld的使用http://blog.youkuaiyun.com/ce123_zhouwei/article/details/8471614(comment)Kernel version:2.6.14CPU architecture:ARM920T最近在分析ARM Linux的copy_from_user,主要功能由__arch_copy_from_u转载 2015-05-20 13:00:35 · 1471 阅读 · 0 评论 -
SWI指令---软件中断实例详解
SWI指令---软件中断实例详解关键字: SWI,指令,软件中断,实例,详解SWI,即software interrupt软件中断。该指令产生一个SWI异常。意思就是处理器模式改变为超级用户模式,CPSR寄存器保存到超级用户模式下的SPSR寄存器,并且跳转到SWI向量。其ARM指令格式如下:SWI{cond} immed_24Cond域:是可选的条件码 (参见 ARM汇编指令条件转载 2015-06-01 15:54:39 · 2243 阅读 · 0 评论 -
cpsr_c
MSR CPSR_c, #0xd2MSR SPSR_cxsf,r0中cpsr_c这是什么,还有spsr_cxsf这是什么 不会是标志位吧。CPSR有4个8位区域:标志域(F)、状态域(S)、扩展域(X)、控制域(C)MSR - Load specified fields of the CPSR or SPSR with an immediate constant, or转载 2015-06-01 17:52:14 · 685 阅读 · 0 评论 -
EOR逻辑异或指令
6.2 EOR逻辑异或指令1.指令的编码格式逻辑异或EOR(Exclusive OR)指令将寄存器中的值和的值执行按位“异或”操作,并将执行结果存储到目的寄存器中,同时根据指令的执行结果更新CPSR中相应的条件标志位。 指令的编码格式如图6.3所示。图6.3 EOR指令的编码格式 2.指令的语法格式EOR{}{S} ,,转载 2015-06-01 16:18:17 · 16077 阅读 · 0 评论