Daniel Seagraves wrote, in his classic style of leaving the body of the
message devoid of any any actual context as to what he's asking about and
requiring a reference to the Subject line:
Subject: Can someome explain how arithmetic works?
Need this for my emulator, and nobody can explain to me how it works, and
I can't find any documentation that's useful to me. Specifically, I need stuff
like "you shift left and then check the last bit" etc. etc. Basically, I have
a bunch of ones and zeroes and I have to know how to add/subtract/multiply/
divide with them.
A *very* popular book for introducing this subject to students these days is
_Computer Arithmetic: Algorithms and Hardware Designs_, by Behrooz
Parhami. It's a pedantic, general purpose introduction, with an emphasis
on conveying a true understanding of the subject through how the bits
are actually banged about.
An even more pedantic introduction is Donald Knuth's _The Art of Computer
Programming, Vol 1: Fundamental Algorithms_. It's probably not so good as a
introduction if you're really unfamiliar with the subject already,
but it's a true classic in the field, and anyone who has worked in the
field goes back to it every so often for some deep insight. For example,
I just browsed through it a couple days ago for some grokking of how negative
number base arithmetic works. Neat feature: no sign bit necessary!
Another good reference, if you've already got some experience with
computer architecture books and want to leverage this knowledge, is
the IEEE Tutorial titled simply _Computer Arithmetic_ and edited by
Earl E. Swartzlander. There's also Kai Hwang's _Computer
Arithmetic: Principles, Architecture, and Design_ and Israel
Koren's _Computer Arithmetic Algorithms_.
I suspect that you just want a cheat-sheet for a few specific applications,
in which case there's probably a Schaum's outline paperback that will get you
by but without conveying any real understanding about how it works or why
it works the way it does. I'm sure your local library has some similar
workbook-style textbooks.
Perhaps intermediate between the dumbed-down level of Schaum's Outlines
and the high-and-lofty ivory tower view of Knuth would be a good
numerical analysis text intended for scientists who have to learn
the basics of how computers do arithmetic, and how this differs from
traditional school-book arithmetic. _Numerical Recipes_ doesn't quite
fit the bill, but when I
was an undergrad I took several numerical analysis courses and all the
textbooks had good, but terse, introductions to computer arithmetic, both
fixed and floating-point. Again, I'm sure your local library has some
good books.
--
Tim Shoppa Email: shoppa(a)trailing-edge.com
Trailing Edge Technology WWW:
http://www.trailing-edge.com/
7328 Bradley Blvd Voice: 301-767-5917
Bethesda, MD, USA 20817 Fax: 301-767-5927