摘要: 对照Startup.s学习ARM汇编指令(1)GBLL 伪指令用于定义一个全局的逻辑变量,并初始化为{False}。GBLL BOOTLOADERBOOTLOADER SETL {TRUE}(2)GET(或 INCLUDE)GET 伪指令用于将一个源文件包含到当前的源文件中,并将被包含的源文件在当前位置进行汇编处理。可以使用 INCLUDE 代替 GET。INCLUDE ..\\..\\kernel\\oal\\startup.s(3)IMPORT 伪指令用于通知编译器要使用的标号在其他的源文件中定义,但要在当前源文件中引用,而且无论当前源文件是否引用该标号,该标号均会被加入到当前源文件的符号 阅读全文
posted @ 2012-07-04 14:55 nsoft 阅读(386) 评论(0) 推荐(0) 编辑
摘要: ARM处理器共有9中寻址方式1.寄存器寻址 操作数的值在寄存器中,指令执行时直接取出寄存器的值来操作 MOV R1,R2 ;R2->R1 SUB R0,R1,R2 ;R1-R2->R02.立即寻址 MOV R0,#0XFF00 ;0XFF00->R0SUBS R0,R0,#1 ;R0-1->R03.寄存器移位寻址MOV R0,R2,LSL #3 ;R2的值左移3位,存入R0, R0=R2*84.寄存器间接寻址LDR R1,[R2]5.基址寻址LDR R2,[R3,#0XC0] ;读取R3+0XC0地址上的数据,放入R26.多寄存器寻址LDMIA R1!,{R2-R7,R 阅读全文
posted @ 2012-07-04 14:52 nsoft 阅读(436) 评论(0) 推荐(0) 编辑
摘要: 常用 ARM指令集及汇编 一、 ARM处理器的寻址方式 二、指令集学习 (一) ARM 指令集 1. 指令格式 2. 条件码 3. ARM 存储器访问指令 1) LDR/ STR -加载 / 存储指令 2) LDM/ STM -多寄存器加载 / 存储指令 3) SWP -寄存器和存储器交换指令 4. ARM 数据处理指令 1) 数据传送指令 a) MOV -数据传送指令 b) MVN -数据非传送指令 2) 算术逻辑运算指令 a) ADD -加法运算指令 b) SUB -减法运算指令 c) RSB- 逆向减法指令 d) ADC -带进... 阅读全文
posted @ 2012-07-04 14:51 nsoft 阅读(562) 评论(0) 推荐(0) 编辑