>>> On 4/1/2008 at 12:43 PM, in message
<if05v3503beg04nonbeci3n8eqo2vill79@[EMAIL PROTECTED]
>, Clark F
Morris<cfmpublic@[EMAIL PROTECTED]
> wrote:
> On Mon, 31 Mar 2008 22:37:12 -0600, Robert <no@[EMAIL PROTECTED]
> wrote:
>
>>On Mon, 31 Mar 2008 21:55:10 -0300, Clark F Morris
><cfmpublic@[EMAIL PROTECTED]
> wrote:
>>
>>>On Tue, 18 Mar 2008 19:34:51 -0600, Robert <no@[EMAIL PROTECTED]
> wrote:
>>>
>>
>>>>Lots of muddled thinking on numeric errors has been published. Some
talk
> about 'binary
>>>>arithmetic' without making a distinction between integer and floating
> point. Here's an
>>>>example:
>>>
>>>Try doing a simple divide like calculate the value of 1 / 5 in binary.
>>
>>OK.
>>
>>01 numerator value 1 binary pic 9(9).
>>01 denominator value 5 binary pic 9(9).
>>01 quotient binary pic 9(9)v9(4).
>>
>>compute quotient = numerator / denominator
>>display quotient
>>
>>0000000002000
>>
>>>You get a never ending fraction.
>>
>>Looks pretty diadic to me.
> You may have to do this in Assembler to get the results that I am
> talking about. Take a look at the generated instructions. If I had
> access to an IBM mainframe I would compile a small test program to see
> what the underlying code is.
5820 9510 L 2,1296(0,9) NUMERATOR
4E20 D1C4 CVD 2,452(0,13) TS2=4
D203 D1C0 C02A MVC 448(4,13),42(12) TS2=0
SYSLIT AT +42
F060 D1C5 0004 SRP 453(7,13),4(0),0 TS2=5
5820 9518 L 2,1304(0,9) DENOMINATOR
4E20 D1D0 CVD 2,464(0,13) TS2=16
FDB4 D1C0 D1D3 DP 448(12,13),467(5,13) TS2=0
TS2=19
F896 D1E0 D1C0 ZAP 480(10,13),448(7,13) TS2=32
TS2=0
960F D1E9 OI 489(13),X'0F' TS2=41
D202 D1D8 C02A MVC 472(3,13),42(12) TS2=24
SYSLIT AT +42
D204 D1DB D1E5 MVC 475(5,13),485(13) TS2=27
TS2=37
4F20 D1D8 CVB 2,472(0,13) TS2=24
F144 D1DB D1E0 MVO 475(5,13),480(5,13) TS2=27
TS2=32
4F50 D1D8 CVB 5,472(0,13) TS2=24
5C40 C004 M 4,4(0,12) SYSLIT AT +4
1E52 ALR 5,2
58B0 C034 L 11,52(0,12) PBL=1
47C0 B698 BC 12,1688(0,11) GN=16(000A70)
5A40 C000 A 4,0(0,12) SYSLIT AT +0
GN=16 EQU *
1222 LTR 2,2
47B0 B6A2 BC 11,1698(0,11) GN=17(000A7A)
5B40 C000 S 4,0(0,12) SYSLIT AT +0
GN=17 EQU *
9045 9520 STM 4,5,1312(9) QUOTIENT
Frank


|