图2.8给出的是在美国Burroughs公司生产的B-6700机中采用的一种数据描述符表示方法。当最高三位为101时表示该字是一个数据描述符,最高三位为000时表示该字是一个数据。
图2.8 B-6700机的数据描述符表示方法
101 标志位 长度 地址
(a) 数据描述符
000 数值
(b) 数据
  图2.8(b)中的标志位长度共8位,分别表示是否描述的是另一个数据描述符,描述的是单个数据还是数据块,是连续存放还是分段存放,是字还是串,是单精度数据还是双精度数据,是可读可写还是只读。如果被描述的是数据块,则"长度"字段指出这个数据块所包含的数据个数,"地址"字段指出这个数据块的首地址。
  用数据描述符表示方法表示一个3×4矩阵A如图2.9所示。
  
  采用数据描述符可以表示多种结构不同的数据,把几个数据描述符按树形连接起来就能描述一个多维数组。例如,把一个两层的描述符按树型连接就能表示一个二维数组,具体描述方法可参见图2.9。
  一条指令中的一个地址X指向了一个描述符,这个描述符的"标志位"、"长度"和"地址"共同描述一个由三个描述符组成的描述符组,而组成这个描述符组的三个描述符又分别描述了三个数据块,每个数据块都由4个数据组成。采用两重树形结构的描述符能描述一个二维数组,同样,如果三重树形结构就能描述三维组组。
图2.9 用数据描述符表示法表示一个3x4矩阵
  数据描述符方法为表示向量、矩阵和多维数组等数据结构提供了一种很好的方法,能够用一条指令实现整个向量、矩阵或多维数组的运算。从图2.9中可以看到,采用数据描述符方法形成数据地址的速度比常规机器中采用的变址寻址要快得多,这样,也能简化了编译器的代码生成。
  采用数据描述符表示法的优点与缺点与上一节介绍的标志符数据表示方法相同,它的机器结构可能比标志符数据表示方法更复杂。