arm汇编指令详解
“arm汇编指令详解”相关的资料有哪些?“arm汇编指令详解”相关的范文有哪些?怎么写?下面是小编为您精心整理的“arm汇编指令详解”相关范文大全或资料大全,欢迎大家分享。
ARM汇编指令实验
S3C2410 基础 实验 ARM汇编指令实验
实验1 ARM汇编指令实验
1、实验目的:
熟悉ADS开发环境和wiggler调试环境。
掌握简单的ARM汇编指令的使用方法。
2、实验设备
PC机、JTAG调试板、S3C2410开发板。
3、实验内容
熟悉ARM开发环境的建立。
使用ARM汇编指令设置GPIO口的相应寄存器,控制LED灯的亮灭。
4、实验原理
下面介绍本实验用到的一些汇编指令。
1).LDR/STR指令
说明:LDR/STR指令用于加载/存储寄存器。举例说明:
示例:
LDR r3,[r0],#4 //从r0表示的地址中读取数据分别存放到r3中,然后将r0加4。 STR r3, [r1],#4 //将r3中的数据保存到r1表示的地址中,然后将r1加4。
LDMIA/STMIA指令
说明:LDM/STM指令用于加载/存储多个寄存器,举例
示例:
LDMIA r0!,{r4---r11}//从r0表示的地址中顺利取出8个字数据分别存放到r4-r11中。
2).程序分支指令
B指令
说明:B指令为ARM的分支指令,将引起处理器转移到制定标号处执行。 示例:
B Label //处理器转移到Label标号处执行
BEQ stop//Z标记置位,则跳转到sto
ARM指令集详解
ARM指令集详解
ARM可以用两套指令集:ARM指令集和Thumb指令集。本文介绍ARM指令集。在介绍ARM指令集之前,先介绍指令的格式。
1 指令格式 (1)基本格式
其中,<>内的项是必须的,{}内的项是可选的,如 S 是否影响CPSR 寄存器的值,书写时影响CPSR,否则不影响 Rd 目标寄存器 Rn 第一个操作数的寄存器 operand2 第二个操作数 指令格式举例如下: LDR R0,[R1] ;读取R1 地址上的存储器单元内容,执行条件AL BEQ DATAEVEN ;跳转指令,执行条件EQ,即相等跳转到DATAEVEN ADDS R1,R1,#1 ;加法指令,R1+1=R1 影响CPSR 寄存器,带有S S
ARM指令集详解
ARM指令集详解
ARM可以用两套指令集:ARM指令集和Thumb指令集。本文介绍ARM指令集。在介绍ARM指令集之前,先介绍指令的格式。
1 指令格式 (1)基本格式
其中,<>内的项是必须的,{}内的项是可选的,如 S 是否影响CPSR 寄存器的值,书写时影响CPSR,否则不影响 Rd 目标寄存器 Rn 第一个操作数的寄存器 operand2 第二个操作数 指令格式举例如下: LDR R0,[R1] ;读取R1 地址上的存储器单元内容,执行条件AL BEQ DATAEVEN ;跳转指令,执行条件EQ,即相等跳转到DATAEVEN ADDS R1,R1,#1 ;加法指令,R1+1=R1 影响CPSR 寄存器,带有S S
ARM汇编指令 对比记忆(整理)
参考资料:
1. Richard Blum,Professional Assembly Language
2. GNU ARM 汇编快速入门,http://blog.chinaunix.net/u/31996/showart.php?id=326146 3. ARM GNU 汇编伪指令简介,http://www.cppblog.com/jb8164/archive/2008/01/22/41661.aspx 4. GNU汇编使用经验,http://blog.chinaunix.net/u1/37614/showart_390095.html 5. GNU的编译器和开发工具,http://blog.ccidnet.com/blog-htm-do-showone-uid-34335-itemid-81387-type-blog.html 6. 用GNU工具开发基于ARM的嵌入式系统,http://blog.163.com/liren0@126/blog/static/32897598200821211144696/
7. objcopy命令介绍,http://blog.csdn.net/junhua198310/archive/2007/06/2
ARM指令集详解(超详细带实例)
算术和逻辑指令
ADC : 带进位的加法
(Addition with Carry)
ADC{条件}{S} <dest>, <op 1>, <op 2>
dest = op_1 + op_2 + carry
ADC 将把两个操作数加起来,并把结果放置到目的寄存器中。它使用一个进位标志位,这样就可以做比 32 位大的加法。下列例子将加两个 128 位的数。
128 位结果: 寄存器 0、1、2、和 3
第一个 128 位数: 寄存器 4、5、6、和 7
第二个 128 位数: 寄存器 8、9、10、和 11。
ADDS R0, R4, R8 ; 加低端的字
ADCS R1, R5, R9 ; 加下一个字,带进位 ADCS R2, R6, R10 ; 加第三个字,带进位 ADCS R3, R7, R11 ; 加高端的字,带进位
如果如果要做这样的加法,不要忘记设置 S 后缀来更改进位标志。
ADD : 加法
(Addition)
ADD{条件}{S}
MCS-51单片机汇编指令详解
MCS-51单片机汇编指令详解
以累加器为目的操作数的指令
MOV A,Rn MOV A,direct MOV A,@Ri MOV A,#data
第一条指令中,Rn代表的是R0-R7。第二条指令中,direct就是指的直接地址,而第三条指令中,就是我们刚才讲过的。第四条指令是将立即数data送到A中。 下面我们通过一些例子加以说明:
MOV A,R1 ;将工作寄存器R1中的值送入A,R1中的值保持不变。
MOV A,30H ;将内存30H单元中的值送入A,30H单元中的值保持不变。
MOV A,@R1 ;先看R1中是什么值,把这个值作为地址,并将这个地址单元中的值送入A中。如执行命令前R1中的值为20H,则是将20H单元中的值
送 入A中。
MOV A,#34H ;将立即数34H送入A中,执行完本条指令后,A中的值是34H。
以寄存器Rn为目的操作的指令 MOV Rn,A MOV Rn,direct MOV Rn,#
FTP指令详解
FTP命令详解
By jinger 发表于 2006-9-20 10:53:00
FTP(File Transfer Protocol)文件传输协议,为Internet上不同电脑系统间进行文件传输时共同遵守的协议。从使用者的角度来看,FTP为网络上互传文件的工具。目前的FTP工具多种多样,有NCSA FTP、UNIX FTP等字符方式下的FTP,也有CUTE FTP、WS-FTP等图形界面下的FTP。其实,Windows 中已内置了一个FTP工具,其名字就叫FTP,需要注意的是,只有你的计算机安装了TCP/IP协议,你才能在你的Windows目录下找到这个工具。若你的计算机已通过拨号或专线方式连上Internet,你就能方便地使用这个工具在Internet上进行文件传输来获得各种各样的共享软件。一般地,我们应在Windows的命令提示符下使用这个工具,键入FTP,出现“ftp>”提示符。先用open命令打开一个连接,把自己的计算机与一个远程主机连接起来,然后用dir命令查看远程主机内容,用cd命令进入相应的目录。用get或mget下载远程主机的文件到自己的计算机上。若你对远程主机拥有写权限,你就可用put或mput把自己的计算机
ARM汇编中关于\\".word\\"伪指令的概念
PS:在u-boot源码时遇到_armboot_start、_bss_start等这些变量,不知道指向什么地址,
于是查了一下,弄清了ARM汇编中“.word”这个伪指令是什么意思了,感觉自己很菜。借鉴一下网友帖子的内容,关键在帖子最后的总结:
汇编和C引用变量的不同:汇编是“绝对”引用,即没有指针的概念,引用得到的就是值;c语言是“间接”引用,相当于指针的概念,引用地址变量,得到的就是该变量所指的内容值。 感谢原作者,以下为原帖:
aaronwong: u-boot中代码的疑问(_armboot_start与_start)? ---------------------------
我使用的是u-boot-1.3.0-rc2。在cpu/pxa/start.S中,有如下的标号定义: _TEXT_BASE:
.word TEXT_BASE /*uboot映像在SDRAM中的重定位地址,我设置为0xa170 0000 */
.globl _armboot_start _armboot_start:
.word _start /*_start是程序入口,链接完毕它的值应该是0xa170 0000=TEXT_BASE*/ /
汇编指令大全+超全的汇编指令
:1183197819
汇编指令大全汇编指令大全 指令大全
零、状态寄存器
1MOVE数据传送指令 MOV 说明:
格式: MOV OPRD1,OPRD2 1. OPRD1 为目的操作数,可以是
寄存器、存储器、累加器. 功能: 本指令将一个源操作数送到目的操作数OPRD2 为源操作数,可以是寄存
中,即OPRD1<--OPRD2.
2. MOV 指令以分为以下四种情
况:
<1> 寄存器与寄存器之间的数据
传送指令
<2> 立即数到通用寄存器数据传
送指令
<3> 寄存器与存储器之间的数据
传送指令
3. 本指令不影响状态标志位
2PUSH堆栈操作指令 PUSH和POP 说明:
1. OPRD为16位(字)操作数,可以
格式: PUSH OPRD 是寄存器或存储器操作数.
POP OPRD 2. PUSH的操作过程是: (SP)<--
(SP)-2,((sp))<--OPRD 即先修
功能: 实现压入操作的指令是PUSH指令;实现弹出改堆栈指针SP(压入时为自动减
操作的指令是POP指令.2),然后,将指定的操作数送入新
的栈顶位置.
此处的((SP))<--OPRD,也可以理
解为: [(SS)*16+(SP
汇编指令
?
注册 用户名:应用
密码: 登录 ? ? ? ? ? ? ? ? ? ?
HOHO 照片PK 分享 投票 测试 礼物 开心部落 汽车工厂 七彩鱼
更多
网页游戏
分享
? ? ? ?
热门分享 最新分享 好友的分享 我的分享
如何分享? 问题反馈
shxc_3的分享
分享
PIC常用汇编指令
PIC常用汇编指令 常用指令
1.寄存器加1指令:INCF 【格式】 INCF F,d
【功能】寄存器F加1
【说明】
(1)INCF是Increment F的缩写;
(2)在PIC系列8位单片机中,常用符号F代表片内的各种寄存器和F的序号地址;
(3)d=0时,结果存入W;d=1时,结果存入F。
【实例】 INCF PORTC,1 ;将PORTC加1
2.寄存器减1指令:DECF 【格式】 DECF F,d
【功能】寄存器F减1
【说明】
(1)DECF是Decrement F的缩写;
(2)d=0时,结果存入W;d=1时,结果存入F。
【实例】 ENCODER EQU 0X21
……
DECF ENCODER