Carry (arithmetic)
In elementary arithmetic a carry is a digit that is transferred from one column of digits to another column of more significant digits during a calculation algorithm. When used in subtraction the operation is called a borrow. It is a central part of traditional mathematics, but is often omitted from curricula based on reform mathematics, which do not emphasize any specific method to find a correct answer.
Manual arithmetic
A typical example of carry is in the following pencil-and-paper addition:
¹ 27 + 59 ---- 86
7 + 9 = 16, and the digit 1 is the carry.
The opposite is a borrow, as in
−1 47 − 19 ---- 28
Here, 7 − 9 = −2, so try (10 − 9) + 7 = 8, and the 10 is got by taking ("borrowing") 1 from the next digit to the left. There are two ways in which this is commonly taught:
- The ten is moved from the next digit left, leaving in this example 3 − 1 in the tens column. According to this method, the term "borrow" is a misnomer, since the ten is never paid back.
- The ten is copied from the next digit left, and then 'paid back' by adding it to the subtrahend in the column from which it was 'borrowed', giving in this example 4 − (1 + 1) in the tens column.
Mathematics education
Template:Globalize/USA Traditionally, carry is taught in the addition of multi-digit numbers in the 2nd or late first year of elementary school. However since the late 20th century, many widely adopted curricula developed in the United States such as TERC omitted instruction of the traditional carry method in favor of invented arithmetic methods, and methods using coloring, manipulatives, and charts. Such omissions were criticized by such groups as Mathematically Correct, and some states and districts have since abandoned this experiment, though it remains widely used.
Computing
When speaking of a digital circuit like an adder, the word carry is used in a similar sense. In most computers, the carry from the most significant bit of an arithmetic operation (or bit shifted out from a shift operation) is placed in a special carry bit which can be used as a carry-in for multiple precision arithmetic or tested and used to control execution of a computer program.
See also
- Carry flag, the equivalent in a computer