Hello Martin,

> Also, a bug in D0>:
> Hmmm, something wrong here I feel:
> 
> > (ATmega2560)> decimal  1553994000. d0> .   1572137999. d0> .  
> > -1 0  ok  

Yes, you are right. There is something odd with d0>

It seems when the sign[1] of the least significant cell and the most
significant cell is the same, d0> gives the right answer. When they
are different, d0> gives the wrong answer.

[1] with sign defined by state of msb

amforth 6.8 ATmega328P Forthduino
> 0 0 d.
0  ok
> 0 0 d0> . cr
0 

> 1 0 d.
1  ok
> 1 0 d0> . cr
-1 

> 0 1 d.
65536  ok
> 0 1 d0> . cr
-1

> 1 1 d.
65537  ok
> 1 1 d0> . cr
-1 

> -1 0 d.
65535  ok
> -1 0 d0> . cr
0 

> 0 -1 d.
-65536  ok
> 0 -1 d0> . cr
-1 
 
> -1 -1 d.
-1  ok
> -1 -1 d0> . cr
0 

> -1 1 d.
131071  ok
> -1 1 d0> . cr
0 

> 1 -1 d.
-65535  ok
> 1 -1 d0> . cr
-1 

Kind regards,

Tristan

On 26Aug19 07:46, Martin Nicholas via Amforth-devel wrote:
> Not present in 6.8 as far as I can see.
> 
> > 8.6.2.1270 DU< “d-u-less” DOUBLE EXT
> > ( ud1 ud2 -- flag )
> > flag is true if and only if ud1 is less than ud2.
> 
> Also, a bug in D0>:
> Hmmm, something wrong here I feel:
> 
> > (ATmega2560)> decimal  1553994000. d0> .   1572137999. d0> .  
> > -1 0  ok  
> 
> Cheers!
> 
> -- 
> Regards,
> 
> Martin Nicholas.
> 
> E-mail: reply-2...@mgn.org.uk (Address will be valid throughout 2019).
> 
> 
> _______________________________________________
> Amforth-devel mailing list for http://amforth.sf.net/
> Amforth-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/amforth-devel


_______________________________________________
Amforth-devel mailing list for http://amforth.sf.net/
Amforth-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amforth-devel

Reply via email to