GNU汇编 伪指令
伪指令 本身并没有所对应的机器码
它只是在编译的时候起作用,或者转换为其他的实际指令来运行
global
ascii
byte
word
data
equ
align
@ 下面的例子是在数据段存放数据
.section .data
hello:
.ascii "helloworld"
bh:
.byte 0x1
ADD
.word 0xff
.section .bss
<未初始化的数据>
.section .text
.globl _start
_start:
<汇编代码>
.equ DA, 0x89
mov r0,#DA
操作类伪指令
nop
反汇编看实质:mov r0,r0
ldr
mov 指令的立即数不能超过8位 (shift 12 位,其中4位作为左移右移的位)
ldr r0, =0x1ff
ldr 反汇编后,会发现其实是在内存里面定义了一个.word 的变量
然后通过 ldr r0, [PC,#-4]
反汇编: arm-linux-objdump -O -S xxx.elf
GNU汇编 伪指令的更多相关文章
- 4.简单的 GNU 汇编语法
芯片启动时很多设备没有初始化,需要汇编语言进行准备. 简单的GNU汇编语法: 1 label: instruction @ comment label :标号,类似于外号,为所在位置做标号,可以通过这 ...
- ARM标准汇编与GNU汇编
ARM标准汇编与GNU汇编 http://www.cnblogs.com/hnrainll/archive/2011/05/17/2048315.html
- 《Intel汇编第5版》 条件汇编伪指令
一.条件汇编伪指令和宏使用可以使汇编程序更加灵活 二.通过伪指令来检查函数的参数是否为空,如果为空则输出警告信息 INCLUDE Irvine32.inc includelib Irvine32.li ...
- ARM GNU 常用汇编伪指令介绍
abort .abort: 停止汇编 .align absexpr1, absexpr2: 以某种对齐方式,在未使用的存储区域填充值. 第一个值表示对齐方式,4, 8,16 或 32. 第 二个表 ...
- C51汇编伪指令
1.DS ---预留存储区命令格式: [标号:] DS 表达式值其功能是从指定地址开始,定义一个存储区,以备源程序使用.存储区预留的存储单元数由表达式的值决定. ;从标号TEP地址处开始保留1个存 ...
- GNU 汇编 协处理器指令
1. CP15 协处理器 16组寄存器 mcr 写 mrc (rgeister CP15) 读 CP15 到 Register mrc p15,0,c0,c0,0
- GNU汇编 存储器访问指令
.text .global _start _start: mov r0,#0xff str r0,[r1] ldr r2,[r1]
- GNU汇编 程序状态字访问指令
.text .global _start _start: mrs r0,cpsr orr r0,#0b100 msr cpsr,r0
- GNU汇编逻辑或算数左移右移
lsl 左移 .text .global _start _start: mov r1,#0b1 mov r1,r1,lsl#2 ROR循环右移 .text .global _start _star ...
随机推荐
- .NET面试题5
常见面试题目: 1. const和readonly有什么区别? 2. 哪些类型可以定义为常量?常量const有什么风险? 3. 字段与属性有什么异同? 4. 静态成员和非静态成员的区别? 5. 自动属 ...
- dapper.net框架使用随笔
一.简单介绍 Dapper是轻量级的ORM工具,代码就SqlMapper.cs一个文件,对于习惯使用原生的sql语句用户是个好选择,具有以下特性. 1.类似 ado.net 的写法,灵活拼接sql 2 ...
- EF框架
Linq to EF 添加: //用户注册int IUserDAO.Register(Users user) { ; using (EF.ddgwDBEntities context = new EF ...
- div模拟textarea自适应高度
之前在公司做项目的时候,有这么一个需求,要我写一个评论框,可以随着评论的行数增加而自动扩大,最开始我想用textarea实现,但是后来尝试后发现textarea并不适合,textarea的高度不会随着 ...
- Brackets - 前端神器
做了几年的 .Net 项目开发,后来公司转 Java 语言开发,Java 做了还没一年,公司准备前后端分离开发,而我被分到前端! Brackets是一款基于web(html+css+js)开发的web ...
- Implementation with Java
Implementation with Java From:http://jcsc.sourceforge.net In general, follow the Sun coding conventi ...
- java右移>> 无符号右移>>>
>>>是无符号右移,在高位补零 >>是带符号的右移,如果是正数则在高位补零,负数则补1 int a = -1; System.out.println(a>>1 ...
- [原创]在Debian9上配置NAS
序言 此教程安装的都是最新版本的.由于是当NAS让它非常稳定的运行,所以能不安装的软件尽量不要安装. 一.准备工作 1. 更新系统 没啥,就他喵想用个最新的. apt update && ...
- count group by 组合用法
1 需求是 求订单表1个月内 订单累计费用超过500的有多少人 根据题意 最先写出的sql是这样的 SELECT SUM(totalfee)AS n FROM sendorder WHERE `add ...
- check_mk检测插件 - raid监控
mk_raidstatus python版本 #!/usr/bin/env python # -*- encoding: utf-8; py-indent-offset: 4 -*- import s ...