0x03伪指令
等号伪指令 =
相当于指定常量,由等号定义的符号常量不占用存储空间。
count = 1234
可以重复定义多次,EQU则不容许
EQU伪指令
1、常量名 EQU 表达式
NUMBER EQU 10*10
2、常量名 EQU 常量名
COUNT = 100
SUM EQU COUNT
3、常量名 EQU <text> ;可以定义非整数和字符串
PI EQU <3.1415926>
presskey EQU <"Output is :">
.data
propt db presskey
$ 当前地址运算符
Array db 10,20,30,40
ArraySize = ($-Array)
或
WordList dw 1234h,5678h
dw 0000h,0FFFFh
WordListSize = ($-WordList)/2 ;字数
OFFSET、ADDR操作符和LEA指令 返回变量在段中的偏移地址
LEA 计算堆栈变量的偏移地址
ALIGN、EVEN伪指令
EVEN 使下一地址从偶地址开始
偶数边界 和 偶地址
PTR 操作符
方便寄存器使用
TYPE 操作符
返回变量的大小(字节数)
LENGTHOF 操作符
返回变量右边所包含元素的个数
SIZEOF 或 SIZE操作符
返回值是 LENGTHOF * TYPE(?有区别)
??LABEL 伪指令 <error A2008: syntax error : in directive>
别名变量 不占用存储空间
格式:变量名 LABEL 数据类型
TYPEDEF 和 TYPEDEF PTR 操作符
自定义系统类型
TYPEDEF PTR 定义指针类型
.RADIX 基数控制伪指令
改变默认标记基数
ORG 伪指令
设定程序存放地址
REPT伪指令
以固定格式重复指令块,REPEAT
REPT 重复次数
指令块
ENDM
ASSUME伪指令
使用指定的逻辑段
SHORT伪指令
近转移,转移指令本身占用1个字节
0x03伪指令的更多相关文章
- ARM汇编程序中的伪指令
转自http://blog.chinaunix.net/uid-13701930-id-336459.html 4.1 ARM汇编器所支持的伪指令 在ARM汇编语言程序里,有一些特殊指令助记符,这些助 ...
- ARMGNU伪指令
符号定义伪指令 .global,.local,.set,.equ .global 使得符号对连接器可见,变为对整个工程可用的全局变量 .global symbol .local 表示符号对外部不可见, ...
- ARM伪指令,王明学learn
ARM伪指令 在ARM汇编语言程序中里,有一些特殊指令助记符与指令系统的助记符不同,没有相对应的操作码,通常称这些特殊指令助记符为伪指令,他们所完成的操作称为伪操作.伪指令在元程序中的作用是为完成汇编 ...
- 8.adr与ldr伪指令的区别
ldr和adr都是伪指令,区别是ldr是长加载.adr是短加载. 重点:adr指令加载符号地址,加载的是运行时地址: ldr指令加载符号地址时,加载的是链接地址.
- pragma伪指令
pragma伪指令 通过pragma伪指令告诉编译器如何对待特定的函数.对象或代码段.TMS320C28x C/C++编译器支持如下形式的pragma伪指令: CODE_SECTION(func,“s ...
- ARM7ldr指令与ldr伪指令
ldr伪指令的第二个操作数之前有个=,意思是第一个操作书 = 第二个操作数,相当明了 核心就在于对于用.word指令在.text段里另外定义一段内存,用ldr r0,[pc + x(可以算出.text ...
- LDR伪指令与ADR伪指令的区别
测试代码 ldr r0, _start adr r0, _start ldr r0, =_start nop mov pc, lr _start: nop 设置代码的起始地址为 0x0c008000, ...
- ARM学习笔记9——ARM汇编汇编语言中的伪指令
ARN汇编器支持ARM伪指令,这些伪指令在汇编阶段被翻译成ARM或Thumb指令.ARM伪指令包含ADR.ADRL.MOV32和LDR.一.ADR伪指令 1.作用 ADR是小范围地址读取伪指令,基于P ...
- Keil伪指令
Keil伪指令 目录 Keil伪指令... 1. ALTNAME. 2 2. BIT. 2 3. BSEG.. 2 4. CODE. 2 5. CSEG.. 2 ...
随机推荐
- Oracle数据库作业-1
设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表 ...
- Matplotlib之无GUI时的解决办法
需添加: import matplotlib as mpl mpl.use('Agg') 而且必须添加在import matplotlib.pyplot之前,否则无效
- Table of Contents - JavaSE
Java Bean Lombok IO Commons-IO - IOUtils Regular Expression 正则表达式常用操作 Concurrency java.util.concurre ...
- 基于ASP.Net +easyUI框架上传图片,实现图片上传,提交表单
<body> <link href="../../Easyui/themes/easyui.css" rel="stylesheet" typ ...
- hive操作语句使用详解
#创建表人信息表 person(String name,int age) hive> create table person(name STRING,age INT)ROW FORMAT DE ...
- 解决discuz与jquery不兼容问题——下拉列表不能用(Uncaught TypeError: Cannot set property 'position' of undefined)
问题描述: 最近学着用discuz来模仿一个门户网站,里面要把导航条做出滑动效果,要用到jquery,将要用到jquery引用到header.htm中,如下图所示: 但是由于discuz采用php以及 ...
- hexo搭建静态博客
1. 环境环境 1.1 安装Git 请参考[1] 1.2 安装node.js 下载:http://nodejs.org/download/ 可以下载 node-v0.10.33-x64.msi 安装时 ...
- Row_Number实现分页(适用SQL)
1:首先是 select ROW_NUMBER() over(order by id asc) as 'rowNumber', * from table1 生成带序号的集合 2:再查询该集合的 第 1 ...
- in C#,编译型常量(const)和运行时常量(readonly)
readonly 关键字与 const 关键字不同. const 字段只能在该字段的声明中初始化. readonly 字段可以在声明或构造函数中初始化. 因此,根据所使用的构造函数, readonly ...
- tcp 和 udp 缓冲区的默认大小及设置【转】
1. tcp 收发缓冲区默认值 [root@ www.linuxidc.com]# cat /proc/sys/net/ipv4/tcp_rmem 4096 87380 4161536 ...