SYSTEM NOTICE

Auto translation by AI. Be sure, accuracy, nuances and authorial intent may not be fully reflected.
見出し画像

Before the PC: The Genes Babbage's Analytical Engine Left for the von Neumann Architecture - Memories of the Early PC Era

The 1830s, London, shrouded in the soot of the Industrial Revolution.
In the corner of a workshop where the clanging of metal echoed, a man sat with his head in his hands, surrounded by vast blueprints. Charles Babbage. What he was trying to build was a giant monster that would clatter and move with the power of steam, combining tens of thousands of brass gears.

The name of that monster was the "Analytical Engine."
It was the phantom of the world's first digital computer, one that thought not with electrical "0s" and "1s," but with the rotation of gears.


"Digital" built with gears

In a word, what the British mathematician Charles Babbage challenged was the "automation of calculation."
At the time, all the astronomical tables and mathematical formulas needed for navigation were calculated by hand by people called "computers." Naturally, being human, they got tired and made mistakes. In an era when those mistakes could even cause ships to be shipwrecked, Babbage was convinced that "if you let a machine do the calculations, it will never make a mistake."

The brilliance of the "Analytical Engine" he conceived lies in the fact that it was not analog, but completely "digital."

Rather than using analog methods like a slide rule to measure length, he sought to process discrete numerical values from 0 to 9 accurately by clicking the positions of gears.
What is astonishing is that the heart of a modern computer was already present in his blueprints.

Babbage called the part that actually performed the calculations the "mill," and the place where numerical values were stored the "store."
These are the very "CPU" and "memory" that modern IT engineers rely on every day. Since he intended to realize all of this solely through the meshing of brass gears, to the people of that time, it must have seemed like something out of science fiction or magic.


Loom cards breathe life into the machine

If it were just a machine capable of calculation, others had existed before it. What made the Analytical Engine decisively different from them was that it incorporated the concept of "programming" for the first time in the world.

Babbage turned his attention to the "Jacquard loom," the cutting-edge technology of the time. This was a machine that automatically wove complex textile patterns by reading punched cards with holes in them.
He thought: if the patterns can be changed, the calculation procedures should be able to be changed as well.

Punch holes in a card and insert it into the machine. Then, without modifying the machine itself at all, just by swapping the cards, it would automatically perform addition at one time and complex astronomical calculations at another.
This was the very moment of the birth of software, or programming.

It is said that at this time, Babbage already had in his mind all the basic structures that modern programmers use when writing code: "execute in order from the top," "change processing based on conditions," and "repeat the same processing."

And the person who understood the potential of this machine even better than Babbage was a female mathematician named Ada Lovelace. For the Analytical Engine, she wrote down the procedures for actually solving mathematical formulas as a sequence of instructions on punch cards.

In an age without electricity, the world's first program code was spun onto paper by the hands of a woman.


Where did Babbage's genes disappear to?

Despite being such a disruptive innovation, the Analytical Engine was never completed during Babbage's lifetime.
The design was so complex that the British government of the time cut off funding.

The technology was far too ahead of its time.
In the end, the genius's vision seemed to be buried in the darkness of history as a vast collection of blueprints.

The story would begin to move again about 100 years later.

In the 20th century, in the midst of World War II, Alan Turing, known as a genius of codebreaking, was reading Babbage's old papers.
He was strongly inspired by Babbage's idea of "generality," the notion that any calculation could be performed if only the program were rewritten.

This would lead to the theory of the "Universal Turing Machine," which became the foundation of modern computer science.

Furthermore, it was the famous John von Neumann who gave that theory form as a practical electronic circuit. The von Neumann architecture he proposed—where programs are loaded into memory and executed sequentially by the CPU—has become the basis for every PC and smartphone we use today.

Looking at this lineage, one notices a certain fact.
The structure of the von Neumann architecture was surprisingly identical to the relationship between the "store" (memory), "mill" (CPU), and "punched cards" (programs) that Babbage envisioned 100 years ago.

Perhaps we have simply replaced the brass gears Babbage dreamed of with silicon and electrons.


Transcending a 100-year time gap

In the business world, it is often said that "technology that is too early will not be adopted."

Babbage's frustration was likely a classic example of this. To the citizens of London at the time, a steam locomotive right in front of them must have been far more appealing than a mountain of giant gears that might not even work.

However, the seed of the idea he left behind—that machines could be controlled by programs—was passed on without interruption to the geniuses of 100 years later, eventually blossoming into our current digital society.

When we open a PC or launch a smartphone app, perhaps there are invisible brass gears clicking and turning deep within the screen.
We are still dancing in the garden that a genius dreamed of 180 years ago.



[Random Notes] The Concept of the "Analytical Engine"

Charles Babbage's "Analytical Engine" is the greatest turning point in the history of computing, as it was the first in the world to establish the design philosophy that would become the foundation of modern computers (digital calculators).

1. Historical Background

(1) The transition period from analog to digital

・The 19th century, when Babbage was active, was an era that did not even have the term "digital computer."

(2) An era when "calculation was something humans did"

・At that time, the word "computer" referred to humans (calculators) who performed manual calculations for mathematical formulas or nautical ephemerides.

・Manual calculation was always accompanied by "human error" (calculation mistakes), which became a social problem leading to major accidents such as shipwrecks.

(3) The challenge from analog to "mechanical digital"

- Unlike "analog computing" (such as slide rules) which measures continuous quantities like length or weight, Babbage sought to obtain absolutely error-free, accurate output by using "discrete numerical values (digital)" represented by the positions of gears.

- A major characteristic of this era was the aim to create a "mechanical digital computer using gears" that did not rely on electricity.


2. What is Charles Babbage's "Analytical Engine"?

The "Difference Engine" Babbage first designed could only perform specific calculations, but the "Analytical Engine" he conceived next was a "general-purpose computer" capable of executing any calculation. It possessed all the components of a modern computer.

(1) Perfect correspondence with modern hardware
The five major units of a modern computer (control, arithmetic, memory, input, and output) were already designed as gear mechanisms.

- Mill
Corresponds to a modern CPU (arithmetic and control unit). It performs actual calculations by meshing gears together.

- Store
Corresponds to modern memory (storage unit). A place to store numerical values as the rotation angles of gears.

- Control and Input/Output
The design also included devices for reading "punch cards" and devices for automatically printing results (the ancestor of the printer).


3. The birth of the "concept of programming"

The Analytical Engine was decisively different from previous calculators in that "a single machine could perform any calculation by swapping out programs."

(1) Control via punch cards
- Inspired by the Jacquard loom (an automatic loom) used for weaving fabric, commands (instructions) were given to the machine using cards with holes (punch cards). - By simply swapping cards, it became possible to make the machine perform completely different calculations without modifying its physical structure.

(2) Coverage of basic programming structures
- The concepts essential to modern programming—"sequence" (executing in order from the top), "conditional branching" (changing processing if something is true), and "loops" (repetition)—already existed in Babbage's mind at this time.

(3) The world's first programmer, "Ada Lovelace"
- Ada Lovelace, a female mathematician who understood Babbage's work, wrote down the "mathematical formula (algorithm) for calculating Bernoulli numbers" as a sequence of punch card instructions for the Analytical Engine. This is considered the world's first computer program.



Related Articles

- The History and Technical Evolution of Calculators and Computers


Book Introduction

- Our PC 30-Year History: Nippon PC Chronicle Kindle Edition
Edited by SE Editorial Department
Shoeisha (2012/12/20)
A Japanese PC history textbook that looks back with photos. It explains the major changes in PCs over more than 30 years in two parts, using many photos and touching on social conditions to make the flow of time easy to understand. Part 1 is dedicated to explaining topics by era, incorporating "testimonies (turning points)" from developers and people involved at the time to reveal behind-the-scenes development stories. Part 2 summarizes PC architecture and other topics by theme.
(* Book descriptions, etc., are generally based on the descriptions on the linked site (Amazon). Please refer to the link for detailed content.)

*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-


いいなと思ったら応援しよう!

Tom.Msn よろしければ応援お願いします! いただいたチップはクリエイターとしての活動費に使わせていただきます!