User:Dimawik/Computer arithmetic

From Wikipedia, the free encyclopedia

Computer arithmetic is a subfield of the computer architecture[1] that deals with both the hardware implementation of arithmetic operations in a computer and software algorithms supporting the arithmetic, with an emphasis on speeding up the numeric calculations.[2] The term also designates the corresponding branch of the computer engineering.[3]

The field of computer arithmetic covers hardware implementation of adders (including counters) and subtractors, multipliers, dividers, square rooters and evaluators for other arithmetic functions. The software side of the computer arithmetic involves design and analysis of arithmetic algorithms.[3] Bitwise operations like NOT, AND, OR, XOR, bit shifts also belong to "computer arithmetic".[4]

Number representation[edit]

Integer numbers[edit]

While multiple number representations were historically considered and used (including binary coded decimal tribit,[3] and residue number system[5]),[6] modern computer almost exclusively use the binary representation.[citation needed] For the signed integers the two's complement approach is typical (for example, 4-bit integers have a range from -8 (1000) to +7 (0111).[3]

Real numbers[edit]

The real numbers are treated as a combination of a whole (a.k.a. integral part) and a fractional part) expressed as a single sequence of bits. The position of a radix point separating the parts is implied (fixed). For example, a signed "1+3" integer uses 4 bits, three of which represent the fractional part (with the accuracy of 18 and range from -1 coded as binary 1.000 to +0.875 coded as 0.111).[7]

Evolution of instruction set[edit]

References[edit]

  1. ^ Parhami 2010, p. xix.
  2. ^ Parhami 2010, p. 4.
  3. ^ a b c d Parhami 2002.
  4. ^ Sklavos 2010, p. 53.
  5. ^ Garner 1959.
  6. ^ Glaser 1981.
  7. ^ Parthami 2002.

Sources[edit]

  • Parhami, B. (2002). "Number Representation and Computer Arithmetic" (PDF). Encyclopedia of Information Systems. Vol. 3. Academic Press. pp. 317–333.
  • Parhami, Behrooz (2010). Computer Arithmetic (PDF) (2nd ed.). New York: Oxford University Press, USA. ISBN 978-0-19-532848-6.
  • Glaser, Anton (1981). History of Binary and Other Nondecimal Numeration (PDF). Los Angeles, CA: Tomash. ISBN 0-938228-00-5.
  • Sklavos, Nicolas (2010-04-08). "On the Hardware Implementation Cost of Crypto-Processors Architectures". Information Security Journal: A Global Perspective. 19 (2): 53–60. doi:10.1080/19393551003649016. ISSN 1939-3555.

Further reading[edit]

*