Regardless of the instruction used to load the source register, CVD treats
it as a signed F-word.  So any value with bit 32 (high-order bit of lower
half) on will be converted to a negative PD number.  So,

CVD R1,DWORD
IF LTR,R1,R1,M
  AP DWORD,=P' 4294967296'
ENDIF

The modern ways are much better, but the above is what worked pre-21st
Century.

sas


On Thu, Jan 20, 2022 at 3:17 AM Abe Kornelis <a...@bixoft.nl> wrote:

> Dave,
>
> your initial request was for conversion of an unsigned 32-bit binary value.
>
> The LGF you are using does sign extension...  I'd suggest you use LLGF
> to avoid just that ;-)
>
> Additionally, if speed is a concern, you might want to save only the
> high halves of registers
> when they may be changed during execution. In your code sample this
> would be just R2.
>
> Kind regards & success!
> Abe
> ===
>
>

Reply via email to