Digital Circuit Design with an Introduction to CPLDs and FPGAs

This chapter begins with an introduction to arithmetic operations in binary, octal, and hexadecimal numbers. The tens-complement and nines-complements in the decimal system and the twos-complement and ones-complements in the binary system are discussed.
In this section we will discuss binary addition. We will defer binary subtraction until we introduce the two s and one s complements in a later section of this chapter. Binary multiplication and binary division is discussed in Chapter 9 in conjunction with shift registers.
The addition of numbers in any numbering system is accomplished much the same manner as decimal addition, that is, the addition starts in the least significant position (right most position), and any carries are added in other positions to the left as it is done with the decimal system.
The binary number system employs the numbers 0 and 1 only; therefore, the possible combinations of binary addition are:
We observe that in a binary addition the largest digit in any position is 1, just as in the decimal addition the largest digit is 9. Furthermore, the above combinations indicate that if the number of ones to be added in any column is odd, the sum digit for that column will be 1, and if the number of ones to be added in any column is even, then the sum digit for that column will be zero. Also, a carry occurs whenever there are two or more ones to be added in any column.