LENGTHOF 运算符计算数组中元素的个数,元素个数是由数组标号同一行出现的数值来定义的。示例如下:
.data byte1 BYTE 10,20,30 array1 WORD 30 DUP (?),0,0 array2 WORD 5 DUP(3 DUP(?)) array3 DWORD 1,2,3,4 digitStr BYTE "12345678",0
如果数组定义中出现了嵌套的 DUP 运算符,那么 LENGTHOF 返回的是两个数值的乘积。下表列出了每个 LENGTHOF 表达式返回的数值。
表达式 | 值 | 表达式 | 值 |
---|---|---|---|
LENGTHOF byte1 | 3 | LENGTHOF array3 | 4 |
LENGTHOF array1 | 30+2 | LENGTHOF digitStr | 9 |
LENGTHOF array2 | 5*3 |
如果数组定义占据了多个程序行,那么 LENGTHOF 只针对第一行定义的数据。比如有如下数据,则 LENGTHOF myArray 返回值为 5 :
myArray BYTE 10,20,30,40,50 BYTE 60,70,80,90,100
另外,也可以在第一行结尾处用逗号,并在下一行继续进行数组初始化。若有如下数据定义, LENGTHOF myArray 返回值为 10:
myArray BYTE 10,20,30,40,50, 60,70,80,90,100
汇编语言过程
5.1 汇编语言堆栈简介
5.2 汇编语言运行时堆栈
5.3 PUSH和POP指令
5.4 PROC和ENDP伪指令
5.5 CALL和RET指令
5.6 过程调用嵌套
5.7 示例:整数数组求和
5.8 USES运算符
5.9 链接库简介
5.10 Irvine32链接库
5.11 Irvine32链接库过程详细说明
5.12 Irvine64链接库