11.07.2015 Views

HLASM: V1R6 Language Ref

HLASM: V1R6 Language Ref

HLASM: V1R6 Language Ref

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

DC instructionPadding and truncation of valuesThe nominal values specified for constants are assembled into storage. The amountof space available for the nominal value of a constant is determined:v By the explicit length specified in the length modifier, orv If no explicit length is specified, by the implicit length according to the type ofconstant defined (see Appendix B, “Summary of constants,” on page 403).The padding and truncation rules discussed below apply to single nominal values.|PaddingIf more space is specified than is needed to accommodate the binary representationof the nominal value, the extra space is padded:v With binary zeros on the left for the binary (B), hexadecimal (X), fixed-point(H,F), packed decimal (P), and all address (A,Y,S,V,J,Q,R) constantsv With sign extension for constants that support sign extension of the nominalvalue (H, F, Y, A), as described in Table 26 on page 147.v With ASCII spaces on the right (X’20’) for CE-type character constants.v With EBCDIC zeros on the left (X'F0') for the zoned decimal (Z) constantsv With EBCDIC spaces on the right (X'40') for the character (C) constantsv With EBCDIC spaces on the right (X'40') for the Unicode character (CU) constantprior to translationv With double-byte spaces on the right (X'4040') for the graphic (G) constantsNotes:1. In floating-point constants (E,D,L), the fraction is extended to occupy the extraspace available.2. Padding is on the left for all constants except the character constant and thegraphic constant.TruncationIf less space is available than is needed to accommodate the nominal value, thenominal value is truncated and part of the constant is lost. Truncation of thenominal value is:v On the left for the binary (B), hexadecimal (X), fixed-point (H and F), anddecimal (P and Z)v On the right for the character (C) constant, the Unicode character (CU) constant,and the graphic (G) constantv On the left for absolute or relocatable address (A and Y), the external address(V), offset (Q), length (J) and PSECT address (R) constants. The actual valuestored and any possible truncation is dependent on the values inserted by thelinker/binder and the length of the constant.Notes:1. If significant bits are lost in the truncation of fixed-point constants, errordiagnostic message ASMA072E Data item too large is issued.2. Floating-point constants (E, D, L) are not truncated. They are rounded to fit thespace available—see Figure 18 on page 160 for rounding modes.3. The above rules for padding and truncation also apply when using thebit-length modifier (see “Subfield 5: Modifier” on page 134).130 <strong>HLASM</strong>: <strong>V1R6</strong> <strong>Language</strong> <strong>Ref</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!