Re: Long absence
- From: Paul J Gans <gans@xxxxxxxxx>
- Date: Sat, 22 Nov 2008 04:50:15 +0000 (UTC)
R. Baldwin <res0k7yx@xxxxxxxxxxxxxxxxxxxx> wrote:
Paul J Gans <gans@xxxxxxxxx> wrote in
news:gg482b$oaf$1@xxxxxxxxxxxxxxxxx:
Vend <vend82@xxxxxxxxxxx> wrote:
On 20 Nov, 01:13, Paul J Gans <g...@xxxxxxxxx> wrote:code
rnorman <rnor...@xxxxxxxxx> wrote:
On Nov 19, 12:49??pm, Friar Broccoli <Elia...@xxxxxxxxx> wrote:
On Nov 18, 10:38??pm, rnorman <rnor...@xxxxxxxxx> wrote:
My first paying consulting job resulted from
the fact that the math package couldn't run on embedded,
ROMable
ablesbecause of the trick it used (common at the time) of passing
vari
youinline in the code instead of on the stack.
This doesn't sound like a biologist thing, which is what I
thought
uters,were. ??How does this fit into your life history?
And how (if) did you fix that problem?My life history is rather weird. ??My education was in math, comp
rialsystems and information theory. ??I worked in the military-indust
to becomplex on computers and info theory until, during the VietNam War,
thought that it was not a suitable thing to do and switched to
mathematical/theoretical biology. I quickly discovered that ??not
n areaa "real" science. ??So I went into physiology and neurobiology, a
into aof biology heavily biophysical and mathematical where my knowledge
of electronic instrumentation and systems/control theory was very
useful. ??Biology departments accepted my weirdness as I morphed
out ??Ireal biologist especially as I started in a department with several
neurobiologists; one strange one with special math/instrumentation
skill was an asset. ??When microprocessor chips and systems came
ndeveloped a small instrumentation microcomputer for my biology work
i
lythe mid 70's which led me into the local computer society where I
met the people with the need for that software I mentioned. ??I
quick
,discovered that moonlighting as a computer consultant paid
handsomely
grather nicely supplemented the pittance I got as a college
professor. Actually I applied my computing knowledge at the
university as I taught a computer science department course in
microcomputer operatin
bettersystems for a number of years until they could hire somebody
specializing in that.
The software was needed for a computer controlling numerical
controlled machine tools. ??The need was to control a machine to
tthan 0.0001 inch out of a total sweep of some 30 inches, and to
direc
lineit both along straight lines and in circular arcs. ??The straight
e ais easy, Bresenham's algorithm for drawing straight lines was well
known. ??Computing a series of straight line chords to approximat
ncircle to the desired accuracy was the problem. ??Single precisio
Ifloating point was not quite accurate enough and double precision
floating point trig functions seemed to be the answer. ??But, as
osaid, the Microsoft package was not ROMable and this was a small,
embedded system based on the 8-bit Z80 chip that had to power up
running that one single program. ??It had to run in 64K memory,
counting RAM and ROM combined, with no auxiliary memory whatsoever;
n
ghard drive, no tape, no nothing. ??32K ROM program and 32K workin
dmemory was it. ??So I said I could do the math package since I ha
nd youpretty good knowledge of Z80 assembler programming and knew that
math. ??It turns out that all you need is a square root routine a
ecan do complete calculation of circular arcs so I wrote a system
that used 24 bit fixed-point arithmetic, 16 bits of fraction (to
accomodat
8 bit1/10,000 of an inch) and 8 bits of integer (to accomodate 30+
inches). ??I could compute square root of sums of squares using 4
ilt-inintermediary values so as to avoid truncation errors in the
computation. ??All with an 8 bit processor that did not have a bu
andmultiply or divide instruction. ??Everything was built on shifts
n toadd/subtract. ??It worked well and I got paid well and I stayed o
anchedwrite statistical process control software for them. ??Later I br
C+out into all sorts of other embedded small computer systems, first
8080/Z80, then 80186 or 80286 systems using assembler, FORTH, C,
and
uted+ as things grew more and more sophisticated although I also did a
reasonable number of PIC microprocessor jobs.
Neat!
I am pleased to see how you worked your floating point. ??i hit
upon the same scheme (16 bits for mantissa, 8 for exponent) back
then when I wrote a floating point package for BDS C (Leor Zolman's
contribution to computing back in the CP/M days). ??It was distrib
along with BDS C for a while and then faded and finally vanished
as the 8086/8087 chip set became available.
Heheh, I worked with floating point in hardware (FPGA) to implement a
Clifford algebra coprocessor for a college project. We had to use the
standard IEEE 754-1985 with all its conundrums Fortunately, we had
libraries for the basic operations.
Lucky you... Back in the day there were as yet no IEEE standards,
so it was a free-for-all. And of course the devil was in the details
and no two implementations got the same answer for any problem that
was at all complex.
Heck, back in the day it was the IRE.
Yes there was!
--
--- Paul J. Gans
.
- Follow-Ups:
- Re: Long absence
- From: heekster
- Re: Long absence
- References:
- Re: Long absence
- From: David Hare-Scott
- Re: Long absence
- From: Ron O
- Re: Long absence
- From: Steven L.
- Re: Long absence
- From: John Wilkins
- Re: Long absence
- From: macaddicted
- Re: Long absence
- From: heekster
- Re: Long absence
- From: rnorman
- Re: Long absence
- From: Friar Broccoli
- Re: Long absence
- From: rnorman
- Re: Long absence
- From: Paul J Gans
- Re: Long absence
- From: Vend
- Re: Long absence
- From: Paul J Gans
- Re: Long absence
- Prev by Date: Re: OT: McCain concedes
- Next by Date: Re: WingNutDaily: Dad links son's suicide to 'The God Delusion'
- Previous by thread: Re: Long absence
- Next by thread: Re: Long absence
- Index(es):
Relevant Pages
|