The Olivetti Programma 101, also known as Perottina or P101, is one of the first "all in one" commercial desktop
programmable calculator
Programmable calculators are calculators that can automatically carry out a sequence of operations under control of a stored computer programming, program. Most are Turing complete, and, as such, are theoretically general-purpose computers. Howe ...
s, although not the first.
Produced by Italian manufacturer
Olivetti
Olivetti S.p.A. is an Italian manufacturer of computers, tablets, smartphones, printers and other such business products as calculators and fax machines. Headquartered in Ivrea, in the Metropolitan City of Turin, the company has been part of ...
, based in
Ivrea
Ivrea (; pms, Ivrèja ; ; lat, Eporedia) is a town and ''comune'' of the Metropolitan City of Turin in the Piedmont region of northwestern Italy. Situated on the road leading to the Aosta Valley (part of the medieval Via Francigena), it stradd ...
,
Piedmont
it, Piemontese
, population_note =
, population_blank1_title =
, population_blank1 =
, demographics_type1 =
, demographics1_footnotes =
, demographics1_title1 =
, demographics1_info1 =
, demographics1_title2 ...
, and invented by the Italian engineer
Pier Giorgio Perotto
Pier Giorgio Perotto (Turin, December 24, 1930 – Genoa, January 23, 2002) was an Italian electrical engineer and inventor. Working for the manufacturer Olivetti, he led a design team that built the Programma 101, one of the world's first prog ...
, the P101 used many features of large computers of that period. It was launched at the
1964 New York World's Fair
The 1964–1965 New York World's Fair was a world's fair that held over 140 pavilions and 110 restaurants, representing 80 nations (hosted by 37), 24 US states, and over 45 corporations with the goal and the final result of building exhibits or ...
; volume production started in 1965. A
futuristic
The future is the time after the past and present. Its arrival is considered inevitable due to the existence of time and the laws of physics. Due to the apparent nature of reality and the unavoidability of the future, everything that currently ...
design for its time, the Programma 101 was priced at $3,200
[
]
().
About 44,000 units were sold, primarily in the US.
It is usually called a printing
programmable calculator
Programmable calculators are calculators that can automatically carry out a sequence of operations under control of a stored computer programming, program. Most are Turing complete, and, as such, are theoretically general-purpose computers. Howe ...
or desktop
calculator
An electronic calculator is typically a portable electronic device used to perform calculations, ranging from basic arithmetic to complex mathematics.
The first solid-state electronic calculator was created in the early 1960s. Pocket-sized ...
because its arithmetic instructions correspond to calculator operations, while its
instruction set
In computer science, an instruction set architecture (ISA), also called computer architecture, is an abstract model of a computer. A device that executes instructions described by that ISA, such as a central processing unit (CPU), is called an ' ...
(which allows for conditional jump) and structure qualifies it as a
stored program computer
A stored-program computer is a computer that stores program instructions in electronically or optically accessible memory. This contrasts with systems that stored the program instructions with plugboards or similar mechanisms.
The definition i ...
.
Design
The Programma 101 was designed by Olivetti engineer
Pier Giorgio Perotto
Pier Giorgio Perotto (Turin, December 24, 1930 – Genoa, January 23, 2002) was an Italian electrical engineer and inventor. Working for the manufacturer Olivetti, he led a design team that built the Programma 101, one of the world's first prog ...
in
Ivrea
Ivrea (; pms, Ivrèja ; ; lat, Eporedia) is a town and ''comune'' of the Metropolitan City of Turin in the Piedmont region of northwestern Italy. Situated on the road leading to the Aosta Valley (part of the medieval Via Francigena), it stradd ...
. The styling, attributed to
Marco Zanuso
Marco Zanuso (14 May 1916 – 11 July 2001) was a leading Italian Modernist architect and designer.
Early life
Marco Zanuso was born in Milan (Italy) 14 May 1916. He was one of a group of Italian designers from Milan shaping the internat ...
but in reality by
Mario Bellini
Mario Bellini (born February 1, 1935 in Milan) is an Italian architect, critic, and designer. He received a degree in architecture from Milan Polytechnic in 1959 and began working as an architect in the early 1960s. Like many other Italia ...
, was
ergonomical and innovative for the time. Some of the design was based on a 1961 Olivetti computer co-developed by
Federico Faggin
Federico Faggin (, ; born 1 December 1941) is an Italian physicist, engineer, inventor and entrepreneur. He is best known for designing the first commercial microprocessor, the Intel 4004. He led the 4004 (MCS-4) project and the design group du ...
that served as a model for the programmable calculator.
The computational hardware consisted of standard (for its time)
discrete device
An electronic component is any basic discrete device or physical entity in an electronic system used to affect electrons or their associated fields. Electronic components are mostly industrial products, available in a singular form and are not ...
s (transistors, diodes, resistors and capacitors mounted on
phenolic resin
Phenol formaldehyde resins (PF) or phenolic resins (also infrequently called phenoplasts) are synthetic polymers obtained by the reaction of phenol or substituted phenol with formaldehyde. Used as the basis for Bakelite, PFs were the first commerc ...
circuit card assemblies). The design predated
microprocessor
A microprocessor is a computer processor where the data processing logic and control is included on a single integrated circuit, or a small number of integrated circuits. The microprocessor contains the arithmetic, logic, and control circu ...
s, and no
integrated circuit
An integrated circuit or monolithic integrated circuit (also referred to as an IC, a chip, or a microchip) is a set of electronic circuits on one small flat piece (or "chip") of semiconductor material, usually silicon. Large numbers of tiny ...
s were used since they were in their infancy.
A total of 240 bytes of information were electrically stored in
magnetostrictive delay-line memory, which had a cycle time of 2.2
millisecond
A millisecond (from '' milli-'' and second; symbol: ms) is a unit of time in the International System of Units (SI) equal to one thousandth (0.001 or 10−3 or 1/1000) of a second and to 1000 microseconds.
A unit of 10 milliseconds may be called ...
s.
Ergonomics
The focus of the engineering team was to deliver a very simple product, something that anyone could use. To take care of the ergonomics and aesthetics of a product that didn't exist before, Roberto Olivetti called
Mario Bellini
Mario Bellini (born February 1, 1935 in Milan) is an Italian architect, critic, and designer. He received a degree in architecture from Milan Polytechnic in 1959 and began working as an architect in the early 1960s. Like many other Italia ...
, a young Italian architect:
One of the direct results of the Programma 101 team focus on human-centered objectives was the invention of a removable magnetic card to store programmed calculation, a revolutionary item for that time, allowing anyone to just insert it and execute any program in a few seconds.
The Programma 101's design would earn the Mario Bellini the
Compasso d'Oro Industrial Design Award.
Technical characteristics
* Size: 275 mm ( A ) x 465 mm ( L ) x 610 mm ( P )
*Weight: 35.5 kg
*Consumption: 0.35 kW
*Output device: 30 column printer on 9 cm paper
*Accuracy: 22 digits and up to 15 decimal places
*Operations: add, subtract, multiply, divide, square root and absolute value
*Total memory: 240 bytes in the ALU (estimated)
P 10*Keyboard: 36 keys.
*Archive:
Magnetic card reader
Operation
The Programma 101 can calculate the four
basic arithmetic
The operators in elementary arithmetic are addition, subtraction, multiplication, and division. The operators can be applied on both real numbers and imaginary numbers. Each kind of number is represented on a number line designated to the ty ...
functions (addition, subtraction, multiplication, and division), plus
square root
In mathematics, a square root of a number is a number such that ; in other words, a number whose ''square'' (the result of multiplying the number by itself, or ⋅ ) is . For example, 4 and −4 are square roots of 16, because .
E ...
,
absolute value
In mathematics, the absolute value or modulus of a real number x, is the non-negative value without regard to its sign. Namely, , x, =x if is a positive number, and , x, =-x if x is negative (in which case negating x makes -x positive), an ...
, and fractional part. It is equipped with memory registers with features such as clear, transfer, and exchange, plus printing and halt for input.
Programming is a kind of
assembly language
In computer programming, assembly language (or assembler language, or symbolic machine code), often referred to simply as Assembly and commonly abbreviated as ASM or asm, is any low-level programming language with a very strong correspondence be ...
, simpler than the assembly of the contemporary computers, as there are fewer options and allowed to use directly arithmetic functions. It directs the exchange between memory registers and calculation registers, and operations in the registers. There are 16 jump instructions and 16 conditional jump instructions. Thirty-two label statements were available as destinations for the jump instructions and/or the four start keys (V, W, Y, Z).
[
]
While not stated in the General Manual and only in some Programming Manual, it is possible to perform a "modified jump", which allows to go back to different part of the program from the same subroutine.
There are 10 memory registers: three for operations (M, A, R); two for storage (B, C); three for storage and/or program (assignable as needed: D, E, F); and two for program only (p1, p2). Each full
register
Register or registration may refer to:
Arts entertainment, and media Music
* Register (music), the relative "height" or range of a note, melody, part, instrument, etc.
* ''Register'', a 2017 album by Travis Miller
* Registration (organ), th ...
holds a 22-digit number with sign and
decimal point
A decimal separator is a symbol used to separate the integer part from the fractional part of a number written in decimal form (e.g., "." in 12.45). Different countries officially designate different symbols for use as the separator. The choi ...
or 24 instructions each consisting of a letter and a symbol. Five of the registers (B, C, D, E, F) can be subdivided into half-registers, each containing an 11-digit number with sign and decimal point. It uses a kind of
Modified Harvard architecture
The modified Harvard architecture is a variation of the Harvard computer architecture that, unlike the pure Harvard architecture, allows the contents of the instruction memory to be accessed as data. Most modern computers that are documented as ...
where data registers and instruction register are clearly separated, but it allows for some data to be written in the instruction registers under some conditions. That was a common feature in the '60s desktop computer/programmable calculator and only HP provided a true
Von Neumann architecture
The von Neumann architecture — also known as the von Neumann model or Princeton architecture — is a computer architecture based on a 1945 description by John von Neumann, and by others, in the ''First Draft of a Report on the EDVAC''. The ...
which allowed for
self-modifying code
In computer science, self-modifying code (SMC) is code that alters its own instructions while it is executing – usually to reduce the instruction path length and improve performance or simply to reduce otherwise repetitively similar code, ...
, similarly to the contemporary general-purpose mainframes and minicomputers.
The stored
program
Program, programme, programmer, or programming may refer to:
Business and management
* Program management, the process of managing several related projects
* Time management
* Program, a part of planning
Arts and entertainment Audio
* Progra ...
s can be recorded onto
plastic
Plastics are a wide range of synthetic or semi-synthetic materials that use polymers as a main ingredient. Their plasticity makes it possible for plastics to be moulded, extruded or pressed into solid objects of various shapes. This adaptab ...
cards approximately 5 cm × 20 cm that have a
magnetic
Magnetism is the class of physical attributes that are mediated by a magnetic field, which refers to the capacity to induce attractive and repulsive phenomena in other entities. Electric currents and the magnetic moments of elementary particle ...
coating on one side and an area for writing on the other. Each card can be recorded on two stripes, enabling it to store two programs. Five registers are stored on the card; two registers are dedicated to the program code, the other three registers (D, E, F) can be used for code and/or numbers. Instructions occupy one byte, and a
magnetic card
The term digital card can refer to a physical item, such as a memory card on a camera, or, increasingly since 2017, to the digital content hosted
as a virtual card or cloud card, as a digital virtual representation of a physical card. They share ...
can hold 120 instructions. The cards use a simple machine language.
The instructions or digits occupy 8 bits, codified in
binary-coded decimal
In computing and electronic systems, binary-coded decimal (BCD) is a class of binary encodings of decimal numbers where each digit is represented by a fixed number of bits, usually four or eight. Sometimes, special bit patterns are used for ...
. In instructions the left
nibble
In computing, a nibble (occasionally nybble, nyble, or nybl to match the spelling of byte) is a four-bit aggregation, or half an octet. It is also known as half-byte or tetrade. In a networking or telecommunication context, the nibble is oft ...
stores the affected register and the right nibble the instruction, while in digits the first nibble stores information about the number, such as the sign or the decimal place, and the last nibble stores the actual digit.
It prints programs and results onto a roll of paper tape, similar to calculator or cash register paper.
Instruction set
Sales history
The Programma 101 was launched at the
1964 New York World's Fair
The 1964–1965 New York World's Fair was a world's fair that held over 140 pavilions and 110 restaurants, representing 80 nations (hosted by 37), 24 US states, and over 45 corporations with the goal and the final result of building exhibits or ...
, attracting major interest. 40,000 units were sold; 90% of them in the
United States
The United States of America (U.S.A. or USA), commonly known as the United States (U.S. or US) or America, is a country primarily located in North America. It consists of 50 states, a federal district, five major unincorporated territorie ...
where the sale price was $3,200
(increasing to about $3,500 in 1968.
)
About 10
Programma 101 were sold to NASA and used to plan the
Apollo 11
Apollo 11 (July 16–24, 1969) was the American spaceflight that first landed humans on the Moon. Commander Neil Armstrong and lunar module pilot Buzz Aldrin landed the Apollo Lunar Module ''Eagle'' on July 20, 1969, at 20:17 UTC, an ...
landing on the Moon.
The P101 is mentioned as part of the
system
A system is a group of Interaction, interacting or interrelated elements that act according to a set of rules to form a unified whole. A system, surrounded and influenced by its environment (systems), environment, is described by its boundaries, ...
used by the
US Air Force
The United States Air Force (USAF) is the air service branch of the United States Armed Forces, and is one of the eight uniformed services of the United States. Originally created on 1 August 1907, as a part of the United States Army Signal ...
to compute coordinates for
ground-directed bombing
Ground-directed bombing (GDB) is a military tactic for airstrikes by ground-attack aircraft, strategic bombers, and other equipped air vehicles under command guidance from aviation ground support equipment and/or ground personnel (e.g., grou ...
of
B-52 Stratofortress
The Boeing B-52 Stratofortress is an American long-range, subsonic, jet-powered strategic bomber. The B-52 was designed and built by Boeing, which has continued to provide support and upgrades. It has been operated by the United States Air ...
targets during the
Vietnam War
The Vietnam War (also known by #Names, other names) was a conflict in Vietnam, Laos, and Cambodia from 1 November 1955 to the fall of Saigon on 30 April 1975. It was the second of the Indochina Wars and was officially fought between North Vie ...
.
Simulators
Many simulators for the Programma 101's function have developed over the years:
* 1976 - Translator to map Programma 101 code to BASIC was written by
Steven DeRose
Stephen or Steven is a common English first name. It is particularly significant to Christians, as it belonged to Saint Stephen ( grc-gre, Στέφανος ), an early disciple and deacon who, according to the Book of Acts, was stoned to death; h ...
at
The Prairie School, used to teach programming before students moved on to BASIC
* 1995 - Programma 101
simulator
A simulation is the imitation of the operation of a real-world process or system over time. Simulations require the use of models; the model represents the key characteristics or behaviors of the selected system or process, whereas the s ...
written by E.H. Dooijes of the
University of Amsterdam
The University of Amsterdam (abbreviated as UvA, nl, Universiteit van Amsterdam) is a public research university located in Amsterdam, Netherlands. The UvA is one of two large, publicly funded research universities in the city, the other being ...
for the local Computer Museum in
Turbo Pascal
Turbo Pascal is a software development system that includes a compiler and an integrated development environment (IDE) for the Pascal (programming language), Pascal programming language running on CP/M, CP/M-86, and DOS. It was originally develo ...
(only worked in batch mode)
* 2005 - Simulator written by Eng. Claudio Larini, which had some contact with Gastone Garziera, another of the P101 engineers
* 2016 -
simulator
A simulation is the imitation of the operation of a real-world process or system over time. Simulations require the use of models; the model represents the key characteristics or behaviors of the selected system or process, whereas the s ...
of the Programma 101 developed at the Department of Information Engineering and Electrical Engineering of
University of Cassino
The University of Cassino and Southern Lazio ( it, Università degli Studi di Cassino e del Lazio Meridionale) is an Italian public research university located in Cassino, Italy. It was established in 1979.
Organization
The University of Cassino ...
, supervision of Eng. Giovanni De Sandre
* The Tecnologicamente Museum in Ivrea has a Java simulator of the Programma 101 written by Giuliano Gaiti, one of Perotto's collaborators.
* The former Olivetti employee Marco Galeotti created a full
integrated development environment
An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools a ...
(IDE) for the Programma 101, which allows for a simpler programming and some debug functions.
References
External links
* .
* Olivetti
Programma 101 General Reference Manual hosted by th
Old Calculator Web Museum retrieved 2009-12-17.
Old Calculator Web Museum.
*
by Alfredo Logioia
Olivetti computers
Programmable calculators
Transistorized computers
Computer-related introductions in 1965
Italian inventions
{{Olivetti computers