Difference engine: Difference between revisions

Jump to navigation Jump to search
 
imported>Waltzingmogumogupeach
No edit summary
 
Line 5: Line 5:
A '''difference engine''' is an automatic [[mechanical calculator]] designed to tabulate [[polynomial]] functions. It was designed in the 1820s, and was created by [[Charles Babbage]]. The name ''difference engine'' is derived from the method of [[finite differences]], a way to interpolate or tabulate functions by using a small set of polynomial co-efficients. Some of the most common [[mathematical function]]s used in engineering, science and navigation are built from [[logarithm]]ic and [[trigonometric functions]], which can be [[Taylor series|approximated]] by polynomials, so a difference engine can compute many useful [[Mathematical table|tables]].
A '''difference engine''' is an automatic [[mechanical calculator]] designed to tabulate [[polynomial]] functions. It was designed in the 1820s, and was created by [[Charles Babbage]]. The name ''difference engine'' is derived from the method of [[finite differences]], a way to interpolate or tabulate functions by using a small set of polynomial co-efficients. Some of the most common [[mathematical function]]s used in engineering, science and navigation are built from [[logarithm]]ic and [[trigonometric functions]], which can be [[Taylor series|approximated]] by polynomials, so a difference engine can compute many useful [[Mathematical table|tables]].


== History ==
== History ==  
{{Wikisource|Astronomische Nachrichten/Volume 46/On Mr. Babbage's new machine for calculating and printing mathematical and astronomical tables}}
{{Wikisource|Astronomische Nachrichten/Volume 46/On Mr. Babbage's new machine for calculating and printing mathematical and astronomical tables}}
[[File:LondonScienceMuseumsReplicaDifferenceEngine.jpg|thumb|Close-up of the London Science Museum's difference engine showing some of the number wheels and the sector gears between columns. The sector gears on the left show the double-high teeth very clearly. The sector gears on the middle-right are facing the back side of the engine, but the single-high teeth are clearly visible. Notice how the wheels are mirrored, with counting up from left-to-right, or counting down from left-to-right. Also notice the metal tab between "6" and "7". That tab trips the carry lever in the back when "9" passes to "0" in the front during the add steps (Step 1 and Step 3).]]
[[File:LondonScienceMuseumsReplicaDifferenceEngine.jpg|thumb|Close-up of the London Science Museum's difference engine showing some of the number wheels and the sector gears between columns. The sector gears on the left show the double-high teeth very clearly. The sector gears on the middle-right are facing the back side of the engine, but the single-high teeth are clearly visible. Notice how the wheels are mirrored, with counting up from left-to-right, or counting down from left-to-right. Also notice the metal tab between "6" and "7". That tab trips the carry lever in the back when "9" passes to "0" in the front during the add steps (Step 1 and Step 3).]]
Line 27: Line 27:
[[File:Difference engine Scheutz.jpg|thumb|upright=1.8|Per Georg Scheutz's third difference engine, in the [[Science Museum, London|Science Museum]], London]]
[[File:Difference engine Scheutz.jpg|thumb|upright=1.8|Per Georg Scheutz's third difference engine, in the [[Science Museum, London|Science Museum]], London]]


Inspired by Babbage's difference engine in 1834, the Swedish inventor [[Per Georg Scheutz]] built several experimental models. In 1837 his son Edward proposed to construct a working model in metal, and in 1840 finished the calculating part, capable of calculating series with 5-digit numbers and first-order differences, which was later extended to third-order (1842). In 1843, after adding the printing part, the model was completed.
Inspired by Babbage's difference engine in 1834, the Swedish inventor [[Per Georg Scheutz]] built several experimental models. In 1837 his son Edvard proposed to construct a working model in metal, and in 1840 finished the calculating part, capable of calculating series with 5-digit numbers and first-order differences, which was later extended to third-order (1842). In 1843, after adding the printing part, the model was completed.


In 1851, funded by the government, construction of the larger and improved (15-digit numbers and fourth-order differences) machine began, and finished in 1853. The machine was demonstrated at the [[Exposition Universelle (1855)|World's Fair in Paris, 1855]] and then sold in 1856 to the [[Dudley Observatory]] in [[Albany, New York]]. Delivered in 1857, it was the first printing calculator sold.<ref name=":3">{{Cite book|url=https://archive.org/details/bub_gb_Ut1wgt6kSBEC|title=Specimens of Tables, Calculated, Stereomoulded, and Printed by Machinery|last1=Scheutz|first1=George|last2=Scheutz|first2=Edward|date=1857 |publisher=Whitnig |pages=VIII–XII, XIV–XV, 3}}</ref><ref name="SI">{{cite web |title=Scheutz Difference Engine |url=https://americanhistory.si.edu/collections/search/object/nmah_997042 |website=Smithsonian National Museum of American History |access-date=June 14, 2019}}</ref><ref name=":6" /> In 1857 the British government ordered the next [[Per Georg Scheutz|Scheutz's]] difference machine, which was built in 1859.<ref>{{Cite book |url=https://archive.org/details/differenceengine00doro|url-access=registration|title=The Difference Engine: Charles Babbage and the Quest to Build the First Computer|last=Swade|first=Doron|date=2002-10-29 |publisher=Penguin Books |isbn=9780142001448 |pages=[https://archive.org/details/differenceengine00doro/page/4 4], 207 }}</ref><ref>{{Cite book|url=https://books.google.com/books?id=jlmVKZ1psCkC&pg=PA37|title=The Universal Machine: From the Dawn of Computing to Digital Consciousness|last=Watson|first=Ian|date=2012|publisher=Springer Science & Business Media|isbn=978-3-642-28102-0|pages=37–38}}</ref> It had the same basic construction as the previous one, weighing about {{Convert|10|-Lcwt|lb kg|lk=on|abbr=on}}.<ref name=":6">{{Cite book |title=First Printing Calculator |last1=Merzbach |first1=Uta C. |author-link=Uta Merzbach |last2=Ripley |first2=S. Dillon |last3=Merzbach |first3=Uta C. |pages=8–9, 13, 25–26, 29–30 |citeseerx=10.1.1.639.3286 }}</ref>
In 1851, funded by the government, construction of the larger and improved (15-digit numbers and fourth-order differences) machine began, and finished in 1853. The machine was demonstrated at the [[Exposition Universelle (1855)|World's Fair in Paris, 1855]] and then sold in 1856 to the [[Dudley Observatory]] in [[Albany, New York]]. Delivered in 1857, it was the first printing calculator sold.<ref name=":3">{{Cite book|url=https://archive.org/details/bub_gb_Ut1wgt6kSBEC|title=Specimens of Tables, Calculated, Stereomoulded, and Printed by Machinery|last1=Scheutz|first1=George|last2=Scheutz|first2=Edward|date=1857 |publisher=Whitnig |pages=VIII–XII, XIV–XV, 3}}</ref><ref name="SI">{{cite web |title=Scheutz Difference Engine |url=https://americanhistory.si.edu/collections/search/object/nmah_997042 |website=Smithsonian National Museum of American History |access-date=June 14, 2019}}</ref><ref name=":6" /> In 1857 the British government ordered the next [[Per Georg Scheutz|Scheutz's]] difference machine, which was built in 1859.<ref>{{Cite book |url=https://archive.org/details/differenceengine00doro|url-access=registration|title=The Difference Engine: Charles Babbage and the Quest to Build the First Computer|last=Swade|first=Doron|date=2002-10-29 |publisher=Penguin Books |isbn=9780142001448 |pages=[https://archive.org/details/differenceengine00doro/page/4 4], 207 }}</ref><ref>{{Cite book|url=https://books.google.com/books?id=jlmVKZ1psCkC&pg=PA37|title=The Universal Machine: From the Dawn of Computing to Digital Consciousness|last=Watson|first=Ian|date=2012|publisher=Springer Science & Business Media|isbn=978-3-642-28102-0|pages=37–38}}</ref> It had the same basic construction as the previous one, weighing about {{Convert|10|-Lcwt|lb kg|lk=on|abbr=on}}.<ref name=":6">{{Cite book |title=First Printing Calculator |last1=Merzbach |first1=Uta C. |author-link=Uta Merzbach |last2=Ripley |first2=S. Dillon |last3=Merzbach |first3=Uta C. |pages=8–9, 13, 25–26, 29–30 |citeseerx=10.1.1.639.3286 }}</ref>
Line 80: Line 80:
Each iteration creates a new result, and is accomplished in four steps corresponding to four complete turns of the handle shown at the far right in the picture below. The four steps are:
Each iteration creates a new result, and is accomplished in four steps corresponding to four complete turns of the handle shown at the far right in the picture below. The four steps are:
# All even numbered columns (2,4,6,8) are added to all odd numbered columns (1,3,5,7) simultaneously. An interior sweep arm turns each even column to cause whatever number is on each wheel to count down to zero. As a wheel turns to zero, it transfers its value to a sector gear located between the odd/even columns. These values are transferred to the odd column causing them to count up. Any odd column value that passes from "9" to "0" activates a [[carry (arithmetic)|carry]] lever.
# All even numbered columns (2,4,6,8) are added to all odd numbered columns (1,3,5,7) simultaneously. An interior sweep arm turns each even column to cause whatever number is on each wheel to count down to zero. As a wheel turns to zero, it transfers its value to a sector gear located between the odd/even columns. These values are transferred to the odd column causing them to count up. Any odd column value that passes from "9" to "0" activates a [[carry (arithmetic)|carry]] lever.
# For the odd columns, any carry levers in the activated state cause the adjacent digit to be incremented by 1. This carry operation is applied sequentially to allow carries to propagate. Meanwhile, the even columns are returned to their original values.
# This is like Step 1, except it is odd columns (3,5,7) added to even columns (2,4,6), and column one has its values transferred by a sector gear to the print mechanism on the left end of the engine. Any even column value that passes from "9" to "0" activates a carry lever. The column 1 value, the result for the polynomial, is sent to the attached printer mechanism.
# This is like Step 1, except it is odd columns (3,5,7) added to even columns (2,4,6), and column one has its values transferred by a sector gear to the print mechanism on the left end of the engine. Any even column value that passes from "9" to "0" activates a carry lever. The column 1 value, the result for the polynomial, is sent to the attached printer mechanism.
# This is like Step 2, but for doing carries on even columns, and returning odd columns to their original values.
# This is like Step 2, but for doing carries on even columns, and returning odd columns to their original values.
<!-- What happened to step #4?! -->
 
=== Subtraction ===
=== Subtraction ===
The engine represents negative numbers as [[Method of complements|ten's complements]]. Subtraction amounts to addition of a negative number. This works in the same manner that modern computers perform subtraction, known as [[two's complement]].
The engine represents negative numbers as [[Method of complements|ten's complements]]. Subtraction amounts to addition of a negative number. This works in the same manner that modern computers perform subtraction, known as [[two's complement]].
Line 157: Line 158:
* [[Allan G. Bromley]]
* [[Allan G. Bromley]]
* [[Johann Helfrich von Müller]]
* [[Johann Helfrich von Müller]]
* [[History of computing]]
* [[History of computing hardware]]
* [[Logical machine]]
* [[Logical machine]]
* [[Martin Wiberg]]
* [[Martin Wiberg]]
* [[Pinwheel calculator]]
* [[Pinwheel calculator]]
* [[Timeline of computing hardware before 1950]]
{{div col end}}
{{div col end}}