Jump to content

Data descriptor

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Peter Flass (talk | contribs) at 21:45, 15 January 2013 (Example). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In computing a data descriptor is a structure containing information that describes data.

Data descriptors may be used in compilers[1], as a software structure at run time in languages like Ada or PL/I, or as a hardware structure in some computers such as Burroughs large systems.

Example

The following descriptor is used by IBM Enterprise PL/I to describe a character string[2]:

      +--------+--------+--------+--------+
      |  desc  | string |        | flags  |
      |  type  |  type  | (res)  |        |
      +--------+--------+--------+--------+
      |       maximum string length       |
      |                                   |
      +--------+--------+--------+--------+
 byte         0        1        2        3
  • 'desc type' is 2 to indicate that this is an element descriptor rather than an array or structure descriptor.
  • 'string type' indicates that this is a character or a bit string, with varying or nonvarying length. 2 indicates a nonvarying (fixed-length) character string.
  • '(res)' indicates a reserved byte not used for character strings.
  • 'flags' indicate the encoding of the string, EBCDIC or ASCII, and the encoding of the length of varying strings.

See also

References

  1. ^ Holt, Richard C (July, 1987). "Data descriptors: a compile-time model of data and addressing". ACM Transactions on Programming Languages and Systems (TOPLAS). 9 (3): 367–389. doi:10.1145/24039.24051. {{cite journal}}: Check date values in: |date= (help)
  2. ^ IBM Corporation (2006). Enterprise PL/I for z/OSProgramming Guide (PDF). p. 385.