arm
文章平均质量分 77
aspenstars
这个作者很懒,什么都没留下…
展开
-
ATPCS规则
为了使单独编译的C语言程序和汇编程序之间能够相互调用,必须为子程序之间的调用规定一定的规则.ATPCS就是ARM程序和THUMB程序中子程序调用的基本规则。基本ATPCS规定了在子程序调用时的一些基本规则,包括下面3方面的内容:1.各寄存器的使用规则及其相应的名称。2.数据栈的使用规则。3.参数传递的规则。1、寄存器的使用必须满足下面的规则:1).子程序间通过寄转载 2017-05-05 00:57:45 · 651 阅读 · 0 评论 -
ARM的常数表达式
如果说Intel指令中的立即数,相信大家都很熟悉。类似的,Arm指令中的“立即数”就是常数表达式。之所以称为常数表达式,而不称为立即数是有原因的。Intel指令属于CISC指令集,指令是不定长的,因此可以将任意32位立即数编码到指令内。 Arm指令属于RISC指令集,指令是定长的32字节。众所周知,指令中操作码是必须的字段,如果把32位立即数直接编码到指令内转载 2017-05-06 01:17:54 · 1996 阅读 · 0 评论 -
ARM处理器中PC值=当前程序执行地址 + 8的根本原因
---2019.1.14 Update根据评论指出,标题有误导,将 PC值 = 当前指令地址 + 8 更正为 PC值=当前程序执行地址 + 8------思考个小问题,处理器执行一条指令需要几个时钟周期。 对于软件工程师来说,印象流我们可能会觉得执行一条指令一个时钟周期嘛,一条指令算是一个最小的原子操作,不可能再细分了吧。 如果看看诸如《see mips run》,《arm体系架构》...转载 2017-06-07 16:03:35 · 7850 阅读 · 4 评论 -
嵌入式Linux GPIO 操作
1.在嵌入式Linux GPIO表示为“S3C2410_GPx(n)”,其中x的取值为“A,B,C,D,E,F,G,H.....”,表示那个GPIO口,n的取值为“1,2,3,.....”表示第几个管脚。例如B口的第六管教:S3C2410_GPB(6)D口的第12管教:S3C2410_GPD(12).....注 这些宏定义在arch/arm/mach-s3c转载 2017-06-24 02:25:30 · 679 阅读 · 0 评论 -
ARM-Linux驱动相关头文件知识点
#include 在linux-2.6.31/include/linux下面寻找源文件#include 在linux-2.6.31/arch/arm/include/asm下面寻找源文件#include 在linux-2.6.31/arch/arm/mach-s3c2410/include/mach下面寻找源文件#include 在linux-2.6.31/arch/arm/p转载 2017-06-24 02:26:32 · 893 阅读 · 0 评论