struc 伪指令怎样用?
struc 指令怎么用?定义一组数据后,在主程序中具体如何使用?要不要用堆栈?
结构体类型定义用不着堆栈;可以认为它是一个数据段变量。像一些书中所说:结构内被定义的变量为结构字段,变量名即为字段名。类似于我们C语言中的结构体!
这种结构常用于硬件控制,最简单的例如我们可以用它控制光驱的开关。
来个简单的例子吧:
DATA STRUC ;在这里只是简单定义两个字节的元素,我们还可以定义不同类型的数据
NUM1 DB ?
NUM2 DB ?
DATA ENDS
CSEG SEGMENT
ASSUME CS:CSEG
X DATA <41H> ;在这里定义一个变量X,这样X就成了一个结构字段
MAIN: MOV AH,2
MOV DL,X.NUM1 ;调用结构字段X中的数值和C语言中一样,不过不能用"->"
INT 21H
MOV DL,20H
INT 21H
MOV DL,X.NUM2 ;同样,字段X拥有2个元素,所以可以通过这样调用第二个数
INT 21H
MOV AX,4C00H
INT 21H
CSEG ENDS
END MAIN