Zoned Decimal Data
This data is represented in a form in which each byte corresponds to one decimal digit. Each of these bytes is stored in character form. For example, the digit 7 is stored on the iSeries™, eServer™ i5, or System i5™ as F7, which is the EBCDIC representation, and is stored on the workstation as 37, which is the ASCII representation.
The size of each digit is determined by its half-byte on the right side. Valid values for the half-bytes are decimal 0 through 9.
The sign in both the iSeries™, eServer™ i5, or System i5™ and workstation zoned decimal fields is specified by the hexadecimal value in the left half-byte of the right byte of the field. For the iSeries™, eServer™ i5, or System i5™, a hex B or hex D in this half-byte represents a negative number (for example, X'F6D2' represents -62).
For DOS random files, zoned decimal fields from the system change from EBCDIC to ASCII, as do character fields, except that the sign half-byte in the workstation field is changed to a hex 3 to indicate a positive number or a hex B to indicate a negative number.
For DOS random type-2 files, zoned decimal fields from the system change from EBCDIC to ASCII, as do character fields, except that the sign half-byte in the workstation field is changed to a hex 3 to indicate a positive number or a hex 7 to indicate a negative number.
The decimal position, if specified, represents the number of decimal digits to the right of the decimal point and is specified by the file description.