汇编中的LABEL详解
LABEL 伪指令可以插入一个标号,并定义它的大小属性,但是不为这个标号分配存储空间。LABEL 中可以使用所有的标准大小属性,如 BYTE、WORD、DWORD(双字)、QWORD(四字) 或 TBYTE。
LABEL 常见的用法是,为数据段中定义的下一个变量提供不同的名称和大小属性。如下例所示,在变量 val32 前定义了一个变量,名称为 val16 属性为 WORD:
.data
val16 LABEL WORD
val32 DWORD 12345678h
.code
mov ax,val16 ; AX = 5678h
mov dx,[val16+2] ; DX = 1234h
val16 与 val32 共享同一个内存位置。LABEL 伪指令自身不分配内存。
有时需要用两个较小的整数组成一个较大的整数,如下例所示,两个 16 位变量组成一个 32 位变量并加载到 EAX 中:
.data
LongValue LABEL DWORD
val1 WORD 5678h
val2 WORD 1234h
.code
mov eax,LongValue ; EAX = 12345678h
LABEL的功能是定义变量或标号的类型,而变量或标号的段属性和偏移属性由该语句所处的位置确定。
外文名
LABEL
格式
变量/标号
变量的类型:BYTE、WORD、DWORD、DQ、DT
标号的类型:NEAR、FAR
汇编语言
符号定义伪指令——LABEL伪指令
格式:变量/标号 LABEL 类型
变量的类型有:BYTE、WORD、DWORD、DQ、DT;
标号的类型有:NEAR、FAR;
例如:
Buffer1 LABEL WORD
Buffer2 DB 20 DUP (0)
通常,紧接着的下一条语句定义的类型与LABEL指定的类型不同。而实际上,Buffer1是Buffer2的别名,两者指向内存中的同一个存储地址。换言之,同一组数据定义了两种不同的类型,在接受不同数据类型的访问时,可以指定相应的标号。如接受一个字类型数据访问时,使用Buffer1;接受字节类型数据访问时,使用Buffer2。否则因为数据类型不匹配,编译器编译时将出现异常。
来源:https://wapbaike.baidu.com/item/LABEL/2259659?fr=aladdin&ms=1&rid=9431757271298324024
汇编中的LABEL详解相关推荐
- 大脸猫讲逆向之ARM汇编中PC寄存器详解
i春秋作家:v4ever 近日,在研究一些开源native层hook方案的实现方式,并据此对ARM汇编层中容易出问题的一些地方做了整理,以便后来人能有从中有所收获并应用于现实问题中.当然,文中许多介绍 ...
- Asp.net中GridView使用详解(引)【转】
Asp.net中GridView使用详解(引) GridView无代码分页排序 GridView选中,编辑,取消,删除 GridView正反双向排序 GridView和下拉菜单DropDownList ...
- Pandas中resample方法详解
Pandas中resample方法详解 Pandas中的resample,重新采样,是对原样本重新处理的一个方法,是一个对常规时间序列数据重新采样和频率转换的便捷的方法.重新取样时间序列数据. 方便的 ...
- oracle中的用户详解 【转】
oracle中的用户详解 [转] - feiyun8616 - 博客园 (cnblogs.com)https://www.cnblogs.com/feiyun8616/p/6497690.htmlor ...
- c 语言中set的用法,C++中set用法详解
1.关于set C++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构 ...
- ALSA声卡驱动中的DAPM详解之四:在驱动程序中初始化并注册widget和route
前几篇文章我们从dapm的数据结构入手,了解了代表音频控件的widget,代表连接路径的route以及用于连接两个widget的path.之前都是一些概念的讲解以及对数据结构中各个字段的说明,从本章开 ...
- Linux中iptraf命令详解(IP局域网监控工具)
2019独角兽企业重金招聘Python工程师标准>>> Linux中iptraf命令详解(IP局域网监控工具) 发布时间:2017-12-27 20:46:03 作者:佚名 ...
- ArcGIS Engine中的Symbols详解
转自原文 ArcGIS Engine中的Symbols详解 本文由本人翻译ESRI官方帮助文档.尊重劳动成果,转载请注明来源. Symbols ArcObjects用了三种类型的Symbol(符号样式 ...
- js路由在php上面使用,React中路由使用详解
这次给大家带来React中路由使用详解,React中路由使用的注意事项有哪些,下面就是实战案例,一起来看一下. 路由 通过 URL 映射到对应的功能实现,React 的路由使用要先引入 react-r ...
最新文章
- Unity + SQL数据库创建管理玩家排行榜学习教程
- Linux下搭建DNS服务器
- 白话数字签名(番外篇)----签名EXE文件(下)
- codeforces 677A-C语言解题报告
- 关于maven面试的哪些事儿~
- python3 + selenium 之窗口切换
- Oracle ITL(Interested Transaction List)理解
- iis8 php mysql zend,强烈推荐windows 2012 iis8 fastcgi php5.2.17 zend mysql
- 数据挖掘10大算法(1)——PageRank
- qq影音linux版本下载官网下载软件,QQ for Linux
- 将lena图片进行简单处理
- 使用python将豆瓣妹子的图片批量搬运到百度网盘
- 《电脑音乐制作实战指南:伴奏、录歌、MTV全攻略》——第1篇 获取伴奏篇 第1章 MIDI音乐伴奏的获取与制作 1.1 电脑MIDI音乐与设备的介绍...
- VS编程,几个好用的Visual Studio插件推荐(一)
- win10重置网络命令_WIN10重置网络的操作方法
- EXCEL中多行多列数据与一行或一列数据的互相转换
- DLM learning materials
- 【Algorithm】GPLT L3-014 球队“食物链”
- 计算机毕业设计Java联想搜索爬虫设计
- X~N(0,1),如何求E(X^2),E(X^4),E(X^n)
热门文章
- TimeLine CSS/Javascript 时间线
- stm32之USART学习
- bzoj1007题解
- HDU 5696 区间的价值 暴力
- MSSQLServer基础01(数据类型)
- Eclipse jee 配置Tomcat5.5
- 关于java的对象数组
- 【数字信号处理】基本序列 ( 单位阶跃序列 | 单位阶跃序列与单位脉冲序列关系 | 矩形序列 | 矩形序列与单位阶跃序列关系 | 矩形序列作用 )
- 【Android 逆向】Android 进程注入工具开发 ( 注入代码分析 | 获取 远程 目标进程 中的 /system/lib/libc.so 动态库中的 mmap 函数地址 )
- 【Binder 机制】Native 层 Binder 机制分析 ( binder_loop | svcmgr_handler | binder.c | binder_parse )