home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / arch / 8941 < prev    next >
Encoding:
Internet Message Format  |  1992-08-17  |  3.1 KB

  1. Xref: sparky comp.arch:8941 alt.folklore.computers:12689
  2. Path: sparky!uunet!dtix!darwin.sura.net!Sirius.dfn.de!math.fu-berlin.de!news.uni-stuttgart.de!ifi!news
  3. From: hgz@cs5.informatik.uni-stuttgart.de (Hans-Georg Zipperer)
  4. Newsgroups: comp.arch,alt.folklore.computers
  5. Subject: Re: Babbage books (was: Proposal: Computer History Project)
  6. Message-ID: <1992Aug18.074434.20337@ifi.informatik.uni-stuttgart.de>
  7. Date: 18 Aug 92 07:44:34 GMT
  8. References: <samw.713392337@bucket> <1992Aug11.134401.26906@grmbl.saar.de> <1992Aug13.181353.22013@imax.imax.com>
  9. Sender: news@informatik.uni-stuttgart.de
  10. Organization: Informatik, Uni Stuttgart, W. Germany
  11. Lines: 47
  12.  
  13. In article <1992Aug13.181353.22013@imax.imax.com> dave@imax.imax.com (Dave Martindale) writes:
  14. >In article <1992Aug11.134401.26906@grmbl.saar.de> me@grmbl.saar.de writes:
  15. ...
  16. >>[about the adding mechanism of the Babbage engines]
  17. ...
  18. >This is not true of the Difference Engine, at least.  The basic addition
  19. >is done with all digits in parallel, but that's a relatively constant load.
  20. >Any carries generated just result in a little lever being moved to a
  21. >new position (Babbage called it "warned"), but no carry propagation happens
  22. >at this stage.
  23. >
  24. >Then, when the main addition is done, another piece of mechanism comes
  25. >into play to handle carry propagation, and that is done serially.
  26. >Each digit wheel is rotated one place if a carry is pending in that
  27. >position, and any "carry in" that creates a "carry out" at this stage
  28. >simply sets the "carry in" lever for the next higher digit, before the
  29. >carry happens in that place.  So the more digits you have the longer the
  30. >carry process takes, but at any given time there are at most two or three
  31. >pieces of hardware moving.
  32. >
  33. >I don't know what the Analytical Engine did for addition, though.
  34. >
  35. >    Dave
  36.  
  37. The Difference Engine indeed used the carry mechanism described above.
  38. Babbage needed 10 'time steps' for the main addition and spent a lot
  39. of time to speed up the following carry propagation. He used his
  40. 'mechanical notation' (a formal language for the description of
  41. mechanical motions) to reason about this and found a way to do the
  42. carry propagation for his 20 or 30 digits in 10 time steps. Babbage then
  43. used some kind of pipelining in the Difference Engine. One basic cycle
  44. of the engine was divided in 4 subcycles. In the first subcycle, the
  45. even-numbered columns (registers) were added to the odd-numbered columns.
  46. In the second subcycle, the carry propagation for this additions was
  47. done. In the third and fourth subcycles, the odd-numbered columns were
  48. added to the even-numbered columns in the same fashion.
  49.  
  50. For the Analytic Engine, Babbage wanted 50 decimal places. This would
  51. make the carry propagation slower than the main addition and would slow
  52. down the whole system. In 1834, he invented the 'anticipating carriage'
  53. (look-ahead carry), which solved the problem. The new adder still needed
  54. 10 time steps to do the main addition, but the carry propagation for an
  55. unlimited number of digits could be done in a single time step afterwards.
  56.  
  57. -- 
  58.   Hans-Georg Zipperer     Universit"at Stuttgart, Institut f"ur Informatik
  59.   Tel. (0711) 7816-405    e-mail: zipperer@ifi.informatik.uni-stuttgart.de
  60.