J3/07-335r2 To: J3 From: Van Snyder Subject: More BOZ literal and bit sequence stuff plus a few random edits Date: 15 November 2007 Reference: 07-326r1, 07-007r3 1. Introduction The BOZ literal stuff never gets around to specifying that the sequence of digits defines a sequence of bits. The BOZ literal stuff doesn't specify a minimum requirement for the position of the leftmost nonzero bit in a bit sequence. We noticed some random unrelated things that need the Editor's attention. 2. Edits w.r.t. 07-007r3 [56:5]-------------------------------------------------------------------- Replace the edit for [56:5] in paper 07-326r1 by [56:5] At the end of the paragraph, add more sentences: "Each digit of a represents a sequence of bits, according to its numerical interpretation, using the model of 13.3, with $z$ equal to one for binary constants, three for octal constants or four for hexadecimal constants. A represents a sequence of bits that consists of the concatenation of the sequences of bits represented by its digits, in the order the digits are specified. The positions of bits in the sequence are numbered from right to left, with the position of the rightmost bit being zero. The length of a sequence of bits is the number of bits in the sequence. The processor shall allow the position of the leftmost nonzero bit to be at least $z - 1$, where $z$ is the maximum value that could result from invoking the STORAGE_SIZE intrinsic function (13.7.163) with an argument that is a real or integer scalar of any kind supported by the processor. [339:21+]----------------------------------------------------------------- Insert a subclause heading "<<13.3.1 General>>" [340:3]------------------------------------------------------------------- Before "An example" insert "This defines a sequence of bits $w_{z-1} \dots w_0$, with $w_{z-1}$ the leftmost bit and $w_0$ the rightmost bit. The positions of bits in the sequence are numbered from right to left, with the position of the rightmost bit being zero. The length of a sequence of bits is $z$." [340:5+]------------------------------------------------------------------ Insert a paragraph: "The interpretation of a negative integer as a sequence of bits is processor dependent." [340:11+]----------------------------------------------------------------- Insert new subclauses: "<<13.3.2 Bit sequence comparisons>> "When bit sequences of unequal length are compared, the shorter sequence is considered to be extended to the length of the longer sequence by padding with zero bits on the left. "Bit sequences are compared from left to right, one bit at a time, until unequal bits are found or all bits have been compared and found to be equal. If unequal bits are found, the sequence with zero in the unequal position is considered to be less than the sequence with one in the unequal position. Otherwise the sequences are considered to be equal. "<<13.3.3 Interpretation of bit sequences as arguments to INT and REAL>> "When a constant is the argument A of an INT or REAL intrinsic function: o If the length of the sequence of bits specified by A is less than the size in bits of a scalar variable of the same type and kind type parameter as the result, the is considered to be extended to a length equal to the size in bits of the result by padding on the left with zero bits. o If the length of the sequence of bits specified by A is greater than the size in bits of a scalar variable of the same type and kind type parameter as the result, the is considered to be truncated from the left to a length equal to the size in bits of the result. [465]--------------------------------------------------------------------- Move Note 15.9 under control of the BITS macro so it disappears until such time, if ever, BITS come back. [568:5+]------------------------------------------------------------------ Insert an item: o the interpretation of a negative integer as a sequence of bits (13.3);