J3/06-228 To: J3 From: Bill Long Subject: C13 - UTI 71, 72 : SHIFTA Date: 28-jul-2006 --------------------- Unresolved Technical Issue 71 (page 427) objects to the use of the word "arithmetic" in the description of the SHIFTA function on the grounds that, for the integer argument case, it implies a specific binary representation for integers. No such representation is explicitly specified. Reply: The term "arithmetic right shift" has been unofficially used for this operation for some time without creating confusion. However, the important aspects of the function are the spelling of the name, the argument characteristics, and the operation performed. The text of the description could be changed if J3 feels this is important. If a change is needed, I would suggest: Edits: ----- [346:23] Replace "Arithmetic right shift" with "Right shift with fill". [426:24] Replace "Performs an arithmetic right shift" with "Performs a right shift with fill". ----------------- Unresolved Technical Issue 72 (page 427) claims that the interpretation of an integer as a sequence of bits in 13.3 is "processor dependent" if the leftmost bit is set, and as a result, the specified use of the leftmost bit by the SHIFTA function is flawed if the I argument is of type integer. Reply: This claim appears to be based on an error in 13.3. The final sentence concerning processor-dependent interpretation in the case where the left bit is set in an integer was deleted by an interp and should not be included in this standard. Furthermore, if the left bit of an integer argument to SHIFTA is unusable, then all of the bit manipultion functions are similarly defective. For example, is the BTEST function badly defined if the POS argument specifies the leftmost bit in an integer I argument? I believe not. The issue raised in UTI 72 is not an actual problem, and no changes in the SHIFTA function description are required to address the issue.