View Single Post
  #17   Report Post  
DoN. Nichols
 
Posts: n/a
Default

In article ,
Martin H. Eastburn wrote:
Tim Williams wrote:


[ ... ]

Should use it to draw these in real time.

http://webpages.charter.net/dawill/Images/Mbrot20.gif

(With my QBasic program, it took about half an hour to draw the 1281 x 801
RAW format file. D'oh!)


[ ... ]

I remember doing 100! or factorial 100 in full integer precision printout.
The first time 11 1/2 hours then 3 hours. First in Advanced Disk Basic, then Machine language (not assembly).
Oh the processor 8080.


Does the advanced disk basic support that many digits of integer
precision? Or were you processing it in slices of some form? 69! is
the maximum for the HP 15C calculator, and that can only be represented
in scientific or engineering notation, not in integer format.
Scientific notation gives:

1.71122452E98

However, the unix DC command does it rather quickly -- even on my
slowest system.
--

In order of system speed. (The important time values at the end
of each are the ones ending in 'u' (user space time) and those ending in
's' (system space time -- the math part of things.) Sorry that I don't
have my old 8MHz v7 unix system still up and running. That might even
take enough time to count. :-) But -- it would take most of a day to
excavate it, and set it up. It is stored broken down into components.

SPARC-10 (quad 35 MHz CPUs), running SunOs 4.1.4 (Solaris 1.2)
================================================== ====================
popocat:csu 15:35 # time dc /tmp/trial
93326215443944152681699238856266700490715968264381 62146859296389521759\
99932299156089414639761565182862536979208272237582 51185210916864000000\
000000000000000000
0.10u 0.16s 0:00.00 0.0%
================================================== ====================
Total 0.26 second

SS-5 (110 MHz CPU) running OpenBSD 3.4
================================================== ====================
popocat-2:csu 20:14 # time dc /tmp/trial
93326215443944152681699238856266700490715968264381 6214685929638952175\
99993229915608941463976156518286253697920827223758 2511852109168640000\
00000000000000000000
0.050u 0.040s 0:00.09 100.0% 0+0k 2+0io 7pf+0w
================================================== ====================
Total 0.090 second

SS-5 (170 MHZ CPU) running Solaris 2.6,
================================================== ====================
izalco:dnichols 15:32 time dc /tmp/trial
93326215443944152681699238856266700490715968264381 621468592963895217\
59999322991560894146397615651828625369792082722375 825118521091686400\
0000000000000000000000
0.02u 0.05s 0:00.09 77.7%
================================================== ====================
Total 0.070 second

SPARC Ultra-2, Dual 400 MHz CPUs running Solaris 9
================================================== ====================
Hendrix:csu 0:54 # time dc /tmp/trial
93326215443944152681699238856266700490715968264381 621468592963895217\
59999322991560894146397615651828625369792082722375 825118521091686400\
0000000000000000000000
0.00u 0.02s 0:00.04 50.0%
================================================== ====================
Total 0.02 second

Celeron 2.3 GHz running OpenBSD 3.5
================================================== ====================
curlmakr:csu 11:33 # time dc /tmp/trial
93326215443944152681699238856266700490715968264381 6214685929638952175\
99993229915608941463976156518286253697920827223758 2511852109168640000\
00000000000000000000
0.000u 0.007s 0:00.00 0.0% 0+0k 2+1io 6pf+0w
================================================== ====================

Anyone feel like comparing the restults to see if any one was
wrong? :-)

The "program" was:


================================================== ====================
100
99 * 98 * 97 * 96 * 95 * 94 * 93 * 92 * 91 * 90 *
89 * 88 * 87 * 86 * 85 * 84 * 83 * 82 * 81 * 80 *
79 * 78 * 77 * 76 * 75 * 74 * 73 * 72 * 71 * 70 *
69 * 68 * 67 * 66 * 65 * 64 * 63 * 62 * 61 * 60 *
59 * 58 * 57 * 56 * 55 * 54 * 53 * 52 * 51 * 50 *
49 * 48 * 47 * 46 * 45 * 44 * 43 * 42 * 41 * 40 *
39 * 38 * 37 * 36 * 35 * 34 * 33 * 32 * 31 * 30 *
29 * 28 * 27 * 26 * 25 * 24 * 23 * 22 * 21 * 20 *
19 * 18 * 17 * 16 * 15 * 14 * 13 * 12 * 11 * 10 *
09 * 08 * 07 * 06 * 05 * 04 * 03 * 02 * 01 *
p q
================================================== ====================

if anyone cares. There may be a way to let it automatically decrement
on its own, but this was quicker to set up. :-) It is a reverse Polish
notation, so two numbers are entered into the stack, then they are
multiplied, another entered, and multipled, etc. The 'p' is "print the
results", and the 'q' is "quit now".

This was in 1975 by myself.


And this was in 2004 (with systems dating back to perhaps 1998
or so. :-)

Enjoy,
DoN.

--
Email: | Voice (all times): (703) 938-4564
(too) near Washington D.C. | http://www.d-and-d.com/dnichols/DoN.html
--- Black Holes are where God is dividing by zero ---