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 返回程序被调用点处。

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

  1. linux下arm汇编注释符

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

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

    Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中.默认保存1000条,你也可以更改这个值 ...

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

    linux下维护服务器之常用命令! 第1套如下: 正则表达式: 1.如何不要文件中的空白行和注释语句: [root@localhost ~]# grep -v '^$' 文件名 |grep -v '^ ...

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

    一.概述:      我们知道QTcreator.这仅仅是个IDE,他包含了一个编译器--qmake.这两者的关系与codeblocks和g++的关系一样,首先要明确这些.      而我们在linu ...

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

    History history命令可以用来显示曾执行过的命令.执行过的命令默认存储在HOME目录中的.bash_history文件中,可以通过查看该文件来获取执行命令的历史记录.需要注意的是.bash ...

  6. ARM 汇编 内存访问指令

    一. 单个寄存器操作读写内存 内存访问指令格式:<opcode><cond> Rd, [Rn] Rn 中保存的是一个内存的地址值 1. 内存写指令  [ str,strb,st ...

  7. linux下tar命令的常用实例

    语法:tar [主选项+辅选项] 文件或者目录 使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用. 主选项:c 创建新的档案文件.如果用户想备份一个目录或是一些 ...

  8. (原创)Linux下的floating point exception错误解析

    很多人也许都碰到过这样的错误:linux下程序刚一运行就报错:Floating point exception. 其实这个问题很容易排查,绝大多数情况情况都是逻辑的问题,如:c = a/b;或 c = ...

  9. Linux下的ELF可执行文件的格式解析 (转)

    LInux命令只是和Kernel一起被编译进操作系统的存在于FS的ELF格式二进制文件,或者权限足够的脚本,或者一个软链 ELF(Executable and Linking Format)是一种对象 ...

随机推荐

  1. JQuery加载列表实现动画滚动(自上而下挤)

    这个例子是jquery动态加载列表,并通过定时刷新,实现其循环滚动效果的一个例子. 1.HTML代码: <div class="fake-table"> <li ...

  2. python爬虫之登录

    #-*-coding:utf--*- import cookielib, urllib, urllib2 import json import threading,time class Order(o ...

  3. centos7 安装Node.js并配置为全局可用

    本文Node.js版本为5.12.0,登录 https://nodejs.org/dist/v5.12.0/,需指定其他版本的话可以直接修改版本号进行登录. 为了方便使用tar命令对文件进行解压,我们 ...

  4. Python的字典类型

    Python的字典类型为dict,用{}来表示,字典存放键值对数据,每个键值对用:号分隔,每个键值对之间用,号分隔,其基本格式如下: d = {key1 : value1, key2 : value2 ...

  5. Matplotlib模块

    不求甚解,不断学习不断添加... 2017.10.26 1.绘制简单的图像 # 第一步创建显示画面,figure('show')指定图表名称 plt.figure('data') #绘制图像--> ...

  6. 查询oracle约束所关联的表

    ORA-02292: 违反完整约束条件 (ADMIN.FK_PROJECTP_RELATIONS_OFFICIAL) - 已找到子记录 遇到这样的错误,熟悉的话可能从约束名称看出是那张表的约束,因为名 ...

  7. Spring Maven项目集成Springboot

    Maven管理的Spring项目,准备集成Springboot做接口 1.Springboot对Spring有版本要求 我用的Springboot版本:1.4.5.RELEASE,对应Spring的版 ...

  8. Android dialog使用

    翻译自:开发->API 指南->User Interface & Navigation->Dialogs 注意: dialog是一个基类,但是我们应该尽可能避免直接使用dia ...

  9. 用JS 和 jQery获取屏幕的高度和宽度

    用的时候,网上找了下,放在一起,方便以后查阅 document.body.clientWidth document.body.offsetWidth(包括线宽)//网页可见区域宽 document.b ...

  10. Spring Cloud (4)zool 路由网关

    一:作用: 1.1  转发 1.2  过滤 二.pom 三.启动类 ------------------------------------------------------------------ ...