回 帖 发 新 帖 刷新版面

主题:请教一条汇编指令

小弟刚学汇编,有一条汇编指令不太明白是什么意思,请教各位,谢谢,如下:

DATA SEGMENT
BUFA DW 367BH,2845H,0A78H,9DE3H,0F6BH,6532H
COUNT EQU($-BUFA)/2
BUFB DW COUNT DUP(?)
DATA ENDS

其中的COUNT EQU($-BUFA)/2,小弟只知道是定义常量,不明白是($-BUFA)什么意思,$是表示什么的?[em1]

回复列表 (共4个回复)

沙发

$ 就是当前的地址值
                                                                                                                                                                                                                                                                                                                                                                  $-BUFA就是BUFA总共用的空间数 因为BUFA定义时是字  除以2就是 前面有多少个元素
 如果你把 BUFA理解为一个数组 则 count的值就是这个数组中元素的个数

板凳

谢谢啦,3Q

3 楼

长见识了,受用。

4 楼

一楼的好像讲错了啊
    应该是:BUFA 是个地址,$是当前地址,用当前地址减去BUFA的地址,得到BUFA数组的
长度,除2是每个字为2字节,从而得到BUFA数组的元素个数并存入count中.

我来回复

您尚未登录,请登录后再回复。点此登录或注册