Paul Gilmartin wrote:

<begin extract>
It has been patiently explained to me here that STORAGE OBTAIN is
biased toward doubleword multiples.  But PARM contains a halfword
length that doesn't count itself.  So I'd expect the limit to be
either 32758 (8*4095-2) or 32766 (8*4096-2).  Again, why 32760?
</end extract>

It is of course possible to quarrel with the rationale, but the
derivation is straightforward:

q = floor[mod(32767,8)] = 4095, z = 8q = 32760

32760 is the largest integal multiple of 8 not greater than 2^15 - 1 = 32767.

Consider now what happens if storage is allocated on a doubleword
boundary D.  The next doubleword boundary is at D + 8.  Placing the
halfword current-length prefix at D + 6 ensures that any doubleword
alignment for what begins at D + 8 is satisfied.

Be grateful that quadword alignment is still only a very specialized
requirement.   If it were enforced the maximal length of a
current-length prefixed PARM string would be 32752.

John Gilmore, Ashland, MA 01721 - USA

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to