linux下arm汇编的常用指令解析

1.  ldr 和 str :

(1) ldr 作为指令,叫做寄存器加载指令。将内存中的值加载到寄存器中。

(2) ldr 作为伪指令,实现一个32位常数或地址值加载到寄存器中。后面加载的常量或地址值标号前面必须有一个 “=” ,编译器会将伪指令替换成指令实现。

(3) str 将寄存器中的值保存到内存单元中。

2.  .long 伪操作,给数值分配内存单元。

start:
virable:
.long start

如上,表示将start表示的值存到virable所代表的内存中。

virable:
.long 0x66666666

如上,表示将0x66666666存入virable所在的内存单元中。

3.  adr 和 adrl:

伪指令,将一个地址加载到寄存器中。adr 小范围地址读取指令,将基于pc相对偏移的地址值读取到寄存器中。

adrl 中等范围地址读取指令。

4.  b 和 bl:

伪指令,实现基于pc值的相对跳转,b 用于不返回的跳转。bl 一般用于子程序跳转,即最后通过 mov pc,lr 返回程序被调用点处。

时间: 2024-09-28 16:08:09

linux下arm汇编的常用指令解析的相关文章

linux下arm汇编注释符

注意使用 @ 符 # 是整行注释符 @ 是行内注释符 以为 @ 是行内注释符,害我调试了半天.

linux下维护服务器之常用命令

linux下维护服务器之常用命令! 第1套如下: 正则表达式: 1.如何不要文件中的空白行和注释语句: [[email protected] ~]# grep -v '^$' 文件名 |grep -v '^#' 2.如何查阅系统上面正在运作当中的程序呢? 利用静态的 ps 或者是动态的top,还能以 pstree 来查阅程序树之间的关系! 一个是叧能查阅自己 bash 程序癿『 ps -l 』一个则是可以查阅 所有系统运作癿程序『 ps aux 』 [[email protected] ~]#

Linux基础整理-vi/vim常用指令与简单配置

常用指令部分摘自:http://www.runoob.com/linux/linux-vim.html 说明:常用指令这里直接copy过来了,因为我对照鸟哥的书和自己的经历,觉得这里的已经整理的很好了,就不自己浪费时间去整理了,千人栽树,后人乘凉吧,绿色部分是我觉得比较实用的部分. vi/vim 按键说明 除了上面简易范例的 i, [Esc], :wq 之外,其实 vim 还有非常多的按键可以使用. 第一部份:一般模式可用的按钮说明,光标移动.复制贴上.搜寻取代等 移动光标的方法 h 或 向左箭

linux下history命令显示历史指令记录的使用方法

linux下history命令显示历史指令记录的使用方法 History命令主要用于显示历史指令记录内容, 下达历史纪录中的指令 .1>History命令语法: [[email protected]]# history [n][[email protected]]# history [-c][[email protected]]# history [-raw] histfiles参数:n   :数字,要列出最近的 n 笔命令列表-c  :将目前的shell中的所有 history 内容全部消除-

linux下ARM交叉编译器的安装

1.下载arm-linux-gcc编译器. 2.将下载好的编译器压缩文件拷贝到linux中,注意不要在windows中解压,因为RAR解压工具解压gzip压缩工具压缩的文件可能会出问题. 尽量将编译器的压缩文件放置到根目录下(其实也不一定是要根目录,但是我自己使用过程中发现有一个厂家提供的编译器没有安装在指定的位置,编译器提示库找不到),这样做的目的是为了尽量减少麻烦.拷贝好之后,在终端使用: # tar xvzf arm-linux-gcc-4.4.3.tar.gz 解压编译器. 3.解压好了

linux下arm平台Qt编译环境搭建与解析

一.概述: ???? 我们知道QTcreator.这仅仅是个IDE,他包含了一个编译器--qmake.这两者的关系与codeblocks和g++的关系一样,首先要明确这些. ???? 而我们在linux下搭建arm平台的QT编译环境,基本的是要使用适合arm的qmake.正如我们编译在arm上使用c++程序时要用arm-none-linux-gnueabi-g++一样.而qmake仅仅是我们使用的工具,自然不须要也不能换.所以我们仅仅要使用arm-none-linux-gnueabi-g++编译

2017-7-18-每日博客-关于Linux下的history的常用命令.doc

History history命令可以用来显示曾执行过的命令.执行过的命令默认存储在HOME目录中的.bash_history文件中,可以通过查看该文件来获取执行命令的历史记录.需要注意的是.bash_history不包含当前会话所执行的命令,执行过的命令在关机时才会写入文件,除非执行命令history -w. 常用参数:1.n 显示n个最近的记录 History 3 2.-w <文件> 覆盖原有文件或者将记录写入一个新文件 用法示例:将所有执行过的命令写入history.txt文件中$ hi

linux 下C/C++程序常用调试方法(gdb)

 不管是在开发或者运行过程中,调试保证程序正常运行最基本的手段,熟悉这些调试方式,方便我们更快的定位程序问题所在,提高开发效率. 一 程序正常运行调试 (1)  直接使用gdb 开发过程中最常用的方式,我们可以在其过程中给程序添加断点,监视等辅助手段,监控其行为是否与我们设计相符,比如: (2)      程序已经运行,通过attach附加到进程 二 程序中断后调试 首先简单介绍下linux 下的信号: 软中断信号(signal,又简称为信号)用来通知进程发生了异步事件.进程之间可以互相通过

Linux下关于热插拔硬盘的指令

有时我们需要为在线系统添加热插拔的SCSI硬盘,此时我们不能停机,可以以下指令将新的硬盘加入系统中 # echo "scsi add-single-device 0 0 1 0" > /proc/scsi/scsi                  // 添加硬盘# echo "scsi remove-single-device 0 0 1 0" > /proc/scsi/scsi            // 删除硬盘 对于指令中的四个数字分别表示scs