转载自:http://blog.csdn.net/shadet/article/details/447274
2.3 字变量
定义字变量的定义符为DW/WORD(Define Word),每个字占用两个连续的字节单元。
例如:
Word1 DW 89H, 1909H, -1
DW 0abcdH, ?, 0
上述定义的内存分配如下所示。
… | 89 | 00 | 09 | 19 | FF | FF | CD | AB | -- | -- | 00 | 00 | … |
由于字变量的数据是按照“高高低低”的原则存于存储单元之中的,而字节数据是按照排列顺序存于存储单元中的,所以,它们的存储方式有所不同。
试比较下面两个定义的存储顺序,其中:41H和42H分别是'A'和'B'的ASCII码。
|
|
2.4 双字变量
定义双字变量的定义符为DD/DWORD(Define Doubleword),每个双字变量占用二个连续的字单元(四个字节)。
DW1 DD 12345678H, ?
DW2 DD 0abcd1243H
上述定义的内存分配如下所示。
… | 78 | 56 | 34 | 12 | -- | -- | -- | -- | 43 | 12 | CD | AB | … |
2.5 六字节变量
定义六字节变量的定义符为DF/FWORD(Define Farword)。顾名思义,每个六字节变量占用六个连续的字节。
DF1 DF 1234567890abH, -1
DF 1abcd23H
上述定义的内存分配如下所示。
… | abH | 90H | 78H | 56H | 34H | 12H | 0FFH | 0FFH | 0FFH | 0FFH | 0FFH | 0FFH | 23hH | 0cdH | 0abH | 01H | 00H | 00H | … |
2.6 八字节变量
定义八字节变量的定义符为DQ/QWORD(Define Quadword)。同理,每个八字节变量占用八个连续的字节。
DQ1 DQ 12345678H, 0H, -1234H
DQ ?, 1238H, ?
第一个八字节常量12345678H在内存中的分配方式如下所示,其存储原则与前面相同。其它八字节常量的存储方式与此一致。
… | 78 | 56 | 34 | 12 | 00 | 00 | 00 | 00 | … |
2.7 十字节变量
定义十字节变量的定义符为DT/TBYTE(Define Tenbytes)。同理,每个十字节变量占用十个连续的字节。
DT1 DT 12345678H, 0H, -1234H
DT2 DT ?, -1H
第一个十字节常量12345678H在内存中的分配方式如下所示,它同样按“高高低低”的原则来存储。其它十字节常量的存储方式与此一致。
… | 78 | 56 | 34 | 12 | 00 | 00 | 00 | 00 | 00 | 00 | … |
以上六个数据类型是汇编语言中最基本的数据类型,其中,前三个是在程序中经常使用的,后三个的使用频率不太高。