ITEEDU

4.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码。

B1 DB 'AB'
  W1 DW 'AB'
  … 41h 42h 42h 41h …

4.2.4 双字变量

定义双字变量的定义符为DD/DWORD(Define Doubleword),每个双字变量占用二个连续的字单元(四个字节)。

 DW1 DD 12345678H, 
 DW2 DD 0abcd1243H

上述定义的内存分配如下所示。

…    78    56    34    12    --   --   --   --   43    12    CD     AB     …

4.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

4.2.6 八字节变量

定义八字节变量的定义符为DQ/QWORD(Define Quadword)。同理,每个八字节变量占用八个连续的字节。

 DQ1 DQ 12345678H, 0H,  -1234H
  DQ  , 1238H,  

第一个八字节常量12345678H在内存中的分配方式如下所示,其存储原则与前面相同。其它八字节常量的存储方式与此一致。

…    78    56     34    12    00    00     00    00    …

4.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    …

以上六个数据类型是汇编语言中最基本的数据类型,其中,前三个是在程序中经常使用的,后三个的使用频率不太高。