On this page
In 1941 in Berlin, a civil engineer finished a machine that read its instructions from punched film, worked in binary, and handled numbers in floating point, the format your calculator still uses. Konrad Zuse built it largely because he was tired of doing engineering sums by hand. This post tells his story from reliable sources, explains how his machines stored numbers with a worked binary example, and shows what students can learn from the way he worked.
Who was Konrad Zuse?
MacTutor's biography records that Zuse was born in Berlin-Wilmersdorf on 22 June 1910 and died in Hünfeld, Germany, on 18 December 1995. He studied civil engineering at the Technische Hochschule Berlin-Charlottenburg from 1927, which meant many hours "working through the long statics calculations which are so important in the training of civil engineers". After graduating he joined the Henschel aircraft company to work on stress analysis, which meant still more calculation.
Zuse later wrote, as MacTutor quotes: "I started in 1934, working independently and without knowledge of other developments going on around me. In fact, I hadn't even heard of Charles Babbage when I embarked on my work."
What were the Z1 and the Z3?
His first machine, the Z1, was finished in 1938 in his parents' living room. It was entirely mechanical and programmed by punched tape, but MacTutor notes that it did not work well: the memory was a success, while the mechanical linkages that carried commands were not. The Z2 replaced the arithmetic unit with electromechanical relays, the switches used in telephone exchanges.
The Z3, completed in 1941, used relays for both its memory and its arithmetic unit, about 2,600 of them. MacTutor calls it the first operational program-controlled calculating machine and records that it was used in the aircraft industry to solve systems of simultaneous equations arising from the vibration of airframes.
Raúl Rojas of the Freie Universität Berlin worked out its design from the patent application Zuse filed in 1941. In Konrad Zuse's legacy: the architecture of the Z1 and Z3 (IEEE Annals of the History of Computing, 1997), he explains that both machines had separate memory and processor units, handled floating-point numbers, computed the four basic operations and square roots, and read programs in sequence from punched tape.
Was the Z3 a real computer?
The honest answer has two parts. The Z3 had no conditional branch: it could only run a fixed sequence of operations. But in How to make Zuse's Z3 a universal computer (1998), Rojas showed that a single loop of its arithmetic instructions can, in principle, simulate any Turing machine with a tape of a given finite size, by doing the branching through arithmetic. The cost is a punched tape that becomes enormously long. So the Z3 was universal in principle, not in practice.
Most of Zuse's early machines did not survive the war. Rojas's later paper on the Z1 records that the original Z1 was destroyed in a bombing raid in December 1943, and MacTutor notes that the Z3 was reconstructed in 1960 for display in a museum in Munich.
Worked example: a number in binary floating point
Rojas's Z1 paper explains the format: a number is stored as 2^a × b, where a is a binary exponent and b is a mantissa normalised so that it has a 1 before the binary point. The Z1 used 7 bits for the exponent, giving a range from −64 to +63.
Store 6.5 in this form.
Whole part: 6 = 4 + 2 = 110 in binary.
Fraction: 0.5 = 1/2 = 0.1 in binary.
So 6.5 = 110.1 in binary.
Move the point two places left to normalise: 110.1 = 1.101 × 2^2.
Check: 1.101 in binary is 1 + 1/2 + 1/8 = 1.625, and 1.625 × 4 = 6.5.
A machine using this format stores the exponent 2 and the mantissa 1.101. Now try 0.75: it is 0.11 in binary, which normalises to 1.1 × 2^(−1). Check: 1.5 × 1/2 = 0.75.
What mistakes do students make with binary fractions?
Treating places after the point as tenths. In binary they are halves, quarters and eighths, so 0.101 is 1/2 + 1/8.
Shifting the point the wrong way. Moving the point left raises the exponent; check by multiplying back.
Expecting every decimal to fit. Decimal 0.1 has no exact binary form, which is why computers show tiny rounding errors.
For base conversions from the CBSE syllabus, see our post on number systems and binary. For practice that checks each step, the Fermi Problem Library has worked problems with a step-by-step solver that explains the reasoning rather than printing an answer.
What can a student learn from how Zuse worked?
Zuse began with a problem he met every day, the repetitive sums of structural engineering, and chose the simplest parts that could solve it: two-state switches. When the mechanical Z1 proved unreliable, he kept what worked and replaced what did not. In 1965 the Harry H. Goode Memorial Award honoured him, MacTutor reports, "for independently proposing the use of the binary system and floating-point arithmetic". Our post on Charles Babbage's engines covers the earlier attempt Zuse had not heard of.
Try it now: write 10.25 in binary, normalise it to the form 1.xxx × 2^a, and check your answer by converting back.



