- 博客(7)
- 收藏
- 关注
转载 44B0X引导程序中伪指令详解(zz)
<br />ARM汇编程序分析过程中,比较难理解的是他的伪操作、宏指令和伪指令。本文是结合44B0X引导程序中出现伪操作、宏指令和伪指令进行总结,便于进一步分析44B0X的引导。 *****************************************************<br /> 一、GET option.s// GET和INCLUDE功能相同<br />功能:引进一个被编译过的文件。<br />格式:GET filename<br />其中:fiename 汇编时引入
2011-05-10 18:42:00 429
转载 对s3c2440、s3c2410的存储控制及启动代码的理解
对于s3c2440、s3c2410这样的片子,并不是想51那样简单的内存和启动操作1、这两种芯片的地址线为addr0~addr26共有27条地址线即为128MB的寻址范围,为了更广的范围芯片厂家就多加了nGCS0~nGCS7(有了所谓的bank0~bank7),8个引脚作为外部的扩展即128*8MB=1GB的寻址范围。理论上这芯片有4GB(2的23次方)的寻址范围和采用统一编址的方式。但并不是全都用到的一般只用到其中的一部分。即可分为:外部地址空间bank0~bank7(0x00000000~0x40000
2011-04-28 21:48:00 529
转载 RO段、RW段和ZI段 --Image$$??$$Limit 含义
要了解RO,RW和ZI需要首先了解以下知识: (1) ARM程序的组成 此处所说的“ARM程序”是指在ARM系统中正在执行的程序,而非保存在ROM中的bin映像(image)文件,这一点清注意区别。 一个ARM程序包含3部分:RO,RW和ZI RO是程序中的指令和常量 RW是程序中的已初始化变量 ZI是程序中的未初始化的变量 由以上3点说明可以理解为:
2011-04-28 16:34:00 814
转载 想成为嵌入式程序员应知道的0x10个基本问题
简述:这是嵌入式C程序员的基本知识。作者在Embedded Systems Programming杂志上发表了很多嵌入式系统开发方面的文章。作者:Jones Nigel 更新日期:2005-04-08 来源:internet C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是相当有趣的。 从被面试者的角度来讲,你能了解许多关
2011-04-23 00:07:00 380
转载 volatile关键字说明
一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值(From Memory),而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子:1) 并行设备的硬件寄存器(如:状态寄存器)2) 一个中断服务子程序中会访问到的非自动变量(Non-automatic variables)3) 多线程应用中被几个任务共享的变量回答不出这个问题的人是不会被雇佣的。我认为这是区分C程序员
2011-04-22 23:21:00 318
转载 ARM特殊寄存器定义详解——#define A (* (volatile unsigned long *) 0x48000000
今天在看S3C2440开发板的初始化代码时,对#define A (* (volatile unsigned long *) 0x48000000这种形式的定义方式有困惑,今天看了三篇文章,觉得对理解这个很有用:文章一:有关volatile unsigned long一些说明 对于不同的计算机体系结构,设备可能是端口映射,也可能是内存映射的。如果系统结构支持独立的IO地址空间,并且是端口映射,就必须使用汇编语言完成实际对设备的控制,因为C语言并没有提供真正的“端口”的概念。如果是内存映射,那就方
2011-04-22 23:06:00 1565
转载 “#ifdef __cplusplus extern "C" { #endif”的定义
“#ifdef __cplusplus extern "C" { #endif”的定义看一些程序的时候老是有“#ifdef __cplusplusextern "C" {#endif”的定义,搞搞清楚是怎么回事:Microsoft-Specific Predefined Macros__cplusplus Defined for C++ programs only. 意思是说,如果是C++程序,就使用extern "C"{而这个东东,是指在下面的函数不使用的C++的名字修饰,而是用C的The followi
2011-04-22 10:00:00 435
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人