Skip to content
Surf Wiki
Save to docs
general/classes-of-computers

From Surf Wiki (app.surf) — the open knowledge base

Decimal computer

Computer operating on base-10 numbers


Computer operating on base-10 numbers

A decimal computer is a computer that represents and operates on numbers and addresses in decimal format instead of binary as is common in most modern computers. Some decimal computers had a variable word length, which enabled operations on relatively large numbers.

Decimal computers were common from the early machines through the 1960s and into the 1970s. Using decimal directly saved the need to convert from decimal to binary for input and output and offered a significant speed improvement over binary machines that performed these conversions using subroutines. This allowed otherwise low-end machines to offer practical performance for roles like accounting and bookkeeping, and many low- and mid-range systems of the era were decimal based.

The IBM System/360 line of binary computers, announced in 1964, included instructions that perform decimal arithmetic; other lines of binary computers with decimal arithmetic instructions followed. During the 1970s, microprocessors with instructions supporting decimal arithmetic became common in electronic calculators, cash registers and similar roles, especially in the 8-bit era.

The rapid improvements in general performance of binary machines eroded the value of decimal operations. One of the last major new designs to support it was the Motorola 68000, which shipped in 1980. More recently, IBM added decimal support to their POWER6 designs to allow them to directly support programs written for 1960s platforms like the System/360. With that exception, most modern processor designs have little or no decimal support.

Early computers

Early computers that were exclusively decimal include the ENIAC, IBM NORC, IBM 650, IBM 1620, IBM 7070, UNIVAC Solid State 80. In these machines, the basic unit of data was the decimal digit, encoded in one of several schemes, including binary-coded decimal (BCD), bi-quinary and two-out-of-five code. Except for the IBM 1620 and 1710, these machines used word addressing. When non-numeric characters were used in these machines, they were encoded as two decimal digits.

Other early computers were character oriented, providing instructions for performing arithmetic on character strings of decimal numerals, using BCD or excess-3 (XS-3){{citation for decimal digits. On these machines, the basic data element was an alphanumeric character, typically encoded in six bits. UNIVAC I and UNIVAC II used word addressing, with 12-character words. IBM examples include IBM 702, IBM 705, the IBM 1400 series, IBM 7010, and the IBM 7080.

Some early binary computers, such as the Honeywell 800{{cite book | section-url = https://bitsavers.org/pdf/honeywell/h800/H800_programmersRefMan.pdf#page=32 and the RCA 601,{{cite book also had decimal arithmetic instructions. Some others had special instructions, such as CVR and CAQ on the IBM 7090, that could be used to speed up decimal addition and the conversion of decimal to binary.{{cite book | access-date = September 16, 2025

Later computers

The IBM System/360 family of computers, introduced in 1964 to unify IBM's product lines, uses binary addressing, binary integer arithmetic, and binary floating-point; it also includes instructions for packed decimal integer arithmetic.{{cite book

Some other lines of binary computers added decimal arithmetic instructions. For example, the Honeywell 6000 series, based on the binary GE-600 series, offered, in some models, an Extended Instruction Set that supported packed decimal integer arithmetic and decimal floating-point arithmetic.

IBM's lines of midrange computers, starting with the System/3 in 1969, are binary computers with decimal integer instructions.

The VAX line of 32-bit binary computers from Digital Equipment Corporation, introduced in 1977, also includes packed decimal integer arithmetic instructions.

The Burroughs Medium Systems, beginning with the Burroughs B2500 and B3500 in 1966, provides only decimal arithmetic, including decimal addressing, making it a decimal architecture.

More modern computers

Support for BCD was common in early microprocessors, which were often used in roles like electronic calculators and cash registers where the math was all decimal. Examples of such support can be found in the Intel 8080, MOS 6502, Zilog Z80, Motorola 6800/6809 and most other designs of the era. In these designs, BCD was directly supported in the ALU, allowing it to perform operations on decimal data directly.

Intel BCD opcodes have remained in the x86 family to this day, although they are not supported in long mode. These instructions convert one-byte BCD numbers (packed and unpacked) to binary format before or after arithmetic operations.{{cite web |url-status=dead

The Motorola 68000 series offered both conversion utilities as well as the ability to directly add and subtract in BCD.{{cite web

The 2008 revision of the IEEE 754 floating-point standard adds three decimal types with two binary encodings, with 7-, 16-, and 34-digit decimal significands.

One of the few RISC instruction sets to directly support decimal is IBM's Power ISA, which added support for IEEE 754-2008 decimal floating-point starting with Power ISA 2.05. Decimal integer support had been part of their mainframe line, and as part of the broader effort to merge the iSeries and zSeries decimal arithmetic was added to the POWER line so that a single processor could support workloads from these older machines with full performance. The IBM POWER6 processor is the first Power ISA processor that implemented these types, using the densely packed decimal binary encoding rather than BCD. Starting with Power ISA 3.0, decimal integer arithmetic instructions were added.

z/Architecture, the 64-bit version of IBM's mainframe instruction set, added support for the same encodings of IEEE 754 decimal floating-point, starting with the IBM System z9. Starting with the z15 processor, vector instructions to perform decimal integer arithmetic were added.

References

|author-link = Douglas W. Jones |orig-year = 1999 |access-date=2016-01-03}}

References

  1. (April 1962). "IBM 1401 Data Processing System: Reference Manual". IBM.
  2. (1971). "Series 6000 Summary Description". Honeywell.
  3. (April 1970). "IBM System/3 Card and Disk System Components Reference Manual". IBM.
  4. Cowlishaw, Mike F.. (2015). ["General Decimal Arithmetic"](https://speleotrove.com/decimal/). IBM.
  5. "IBM z15 (8561) Technical Guide". IBM.
Info: Wikipedia Source

This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.

Want to explore this topic further?

Ask Mako anything about Decimal computer — get instant answers, deeper analysis, and related topics.

Research with Mako

Free with your Surf account

Content sourced from Wikipedia, available under CC BY-SA 4.0.

This content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.

Report