求教汇编高手,汇编变量定义

2019-07-15 19:34发布

求教汇编高手,汇编中变量的定义,以前都是用equ直接分配地址给变量,看网上说这样不好,试了一下用 db,dw 定义,
可为什么不能通过,data    segment就有报错,编译软件使用的是keil uv2,是编译软件的问题吗?
data    segment

buffer1 db 23 dup(?)
buffeer db 0ah,0dh,'$'
buffer2 db 30 dup(?)
buffer3 db 8 dup('0')
count   db 5
handle  dw ?
del     db 8 dup('0')
x       db ?
data    ends

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
woodmice
2019-07-16 00:20
EQU 不是地址分配,是等价定义语句,定义的是啥等价于啥;
只有 DW DB DD 这些语句才是带地址分配的语句,本身的意义只是给指定类型和长度的数据保留地址空间;
实际分配地址是在链接时完成的;

data segment 只能定义数据,不能定义常数,也就是说你只能用问号保留地址空间,不能指定其内容;

要定义有确定内容的数据,应该在 code segment 内定义

一周热门 更多>