汇编中的变量也可以用LABEL或EQU来定义吗?(可以)

EQU

汇编语言中equ(equal) 定义一个常量

a equ 12
相当于C语言中的#define a 12;
相当于C++中的const int a=12;

EQU定义的是常量

LABEL

LABEL的功能是定义“变量或标号的类型”,而变量或标号的段属性和偏移属性由该语句所处的位置确定。(当然,在label这一条语句的同时,也定义了一个变量或者标号)
例如:
  Buffer1 LABEL WORD
  Buffer2 DB 20 DUP (0)
  通常(注意仅仅是通常),紧接着的下一条语句定义的类型与LABEL指定的类型不同。而实际上,Buffer1是Buffer2的别名(相当于Buffer1 LABEL WORD这一条语句定义了一个标号Buffer1),两者指向内存中的同一个存储地址。换言之,同一组数据定义了两种不同的类型,在接受不同数据类型的访问时,可以指定相应的标号。如接受一个字类型数据访问时,使用Buffer1;接受字节类型数据访问时,使用Buffer2。否则因为数据类型不匹配,编译器编译时将出现异常。

tos LABEL WORD 这一个单独的语句就定义了一个字类型的变量:tos(tos是top of stack)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值