Hi Gary,

Thanks for the PoP quote. I must have missed that one.

Otherwise, I roughly got as far as you did.
One can move the (virtual) decimal point at will,
provided you adjust the exponent value accordingly.

When e.g. adding two DFP numbers, the LUV vs. RUV does
not seem to matter - the addition results are the same
in either case.

When adding a RUV-encoded value to a LUV-encoded
value the addition is bound to produce rubbish.
So it seems relevant to know how to distinguish.

Since the processor seems not to make the distinction,
I think I must be something...

Kind regards,
Abe
===


Op 04/03/2024 om 09:08 schreef Gary L Peskin:
> Hi, Abe -
>
>  
>
> In the version of the PoP that I'm looking at, it states that ". Except where 
> otherwise indicated, ...DFP [is defined] in terms of the right-units view. So 
> I think that's just a convention in the documentation.
>
>  
>
> As far as LUV vs RUV, a given value is represented the same in a register or 
> storage regardless of whether you view it as LUV or RUV.  These are just 
> "views" at the number.  You can view it as if the decimal point is either to 
> the right of the leftmost digit (LUV) or to the right of the rightmost digit 
> (RUV). In other words it's sort of like saying 1.234 * 102 (LUV) is the same 
> as 1234 * 10-1 (RUV). If you look carefully, you’ll see that the biases for 
> the exponent in figure 20-2 differ by the same amount as the number of digits 
> in the significand. By considering the bias as having changed, it just 
> accounts for where the decimal point is even though the representation is the 
> same. It’s just a question of how you want to view the number. I probably 
> didn’t explain this very well but I hope you get  the idea.
>
>  
>
> Frankly, I think this whole LUV vs RUV discussion is more confusing than 
> helpful but I guess some people like to think of their numbers as x.xxxx * 
> 10y and others prefer to think of them as xxxxx * 10z.
>
>  
>
> And figure 9-1 is just showing the possible range of values with an unbiased 
> exponent. It’s not meant to indicate any representation of the top/bottom of 
> the range in memory which uses biased exponents.
>
>  
>
> HTH,
>
> Gary
>
>  
>
> -----Original Message-----
> From: IBM Mainframe Assembler List <ASSEMBLER-LIST@LISTSERV.UGA.EDU> On 
> Behalf Of Abe Kornelis
> Sent: Sunday, March 3, 2024 10:29 AM
> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> Subject: Decimal Floating Point Numbers
>
>  
>
> All,
>
>  
>
> There's something with decimal floating point numbers that has been eluding 
> me for a long time.
>
>  
>
> According to PoP chapter 20, DFP numbers may be encoded as either Left-Units 
> View or Right-Units View.
>
> As shown in e.g. figure 20-2.
>
>  
>
> Yet when looking at a DFP value in a dump, it seems to be impossible to tell 
> which view applies.
>
> Just like a packed decimal does not have the decimal point encoded - you just 
> have to know where the programmer decided it to be.
>
> Is it indeed like that with LUV vs. RUV - you just have to know?
>
>  
>
> Additionally, figure 9-1 lists only the RUV values; no mention is made of LUV 
> representation limits.
>
> Instruction descriptions equally make no mention of LUV vs. RUV.
>
>  
>
> To me it appears the instruction always treat the data as RUV. Is this 
> correct?
>
> Or am I missing something obvious?
>
>  
>
> Thanks in advance,
>
> Abe Kornelis.
>
> ==========

Reply via email to