DSP

请教汇编ALIGN伪指令的问题

2019-07-13 19:44发布

Employee STRUCT
  Idnum BYTE "000000000"
  Lastname BYTE 30 DUP(1)
  ALIGN WORD
  Years WORD 8
  ALIGN DWORD
  SalaryHistory DWORD 1000h, 2000h, 3000h, 4000h
Employee ends


这样个结构体为何在内存中会是下面这样存储的?多了好多0啊,不是应该只占60个字节吗?


00402000 30 30 30 30 30 30 30 30 30 01 01 01 01 01 01 01 01 01  
00402012 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
00402024 01 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00402036 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00402048 00 00 00 00 00 00 00 00 00 00 00 08 00 00 00 00 00 00
0040205a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
0040206c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
0040207e 00 00 00 00 10 00 00 00 20 00 00 00 30 00 00 00 40 00


十分不解啊,那位高人给指点一二,多谢了。系统是windows2003,vc6+masm