290 likes | 454 Views
CSCE 211: Digital Logic Design. Chin-Tser Huang huangct@cse.sc.edu University of South Carolina. Chapter 1: Introduction. Digital Systems. They are everywhere! They are usually binary: operating on two-valued signals
E N D
CSCE 211:Digital Logic Design Chin-Tser Huang huangct@cse.sc.edu University of South Carolina
Digital Systems • They are everywhere! • They are usually binary: operating on two-valued signals • Take an arbitrary number of inputs and produce an arbitrary number of outputs • Some systems require a timing signal called clock
Examples • A system with three inputs, A, B, and C, and one output Z, such that Z = 1 if and only if two of the inputs are 1 • A system with eight inputs, representing two 4-bit binary numbers, and one 5-bit output, representing the sum
Examples • A system with one input, A, plus a clock, and one output, Z, which is 1 iff the input was one at the last three consecutive clock times • A traffic controller on two streets: the light is green on each street for a fixed period of time, then goes to yellow for another fixed period and finally to red. The only input to this system is the clock
Truth Table • Describe the behavior of a digital system in tabular form
A Brief Review of Number Systems • Integers are usually written using a positional number system N = an-1rn-1+ an-2rn-2+ … + a2r2+ a1r + a0 where 0 ai < r
Conversion between Number Systems • How to convert from binary to decimal? Evaluate the power series • Example: 1010112 = ?
Conversion between Number Systems • How to convert from decimal to binary? Two algorithms • Repeatedly subtract from the number the largest power of 2 less than that number and put a 1 in corresponding position • Repeatedly divide the number by 2 and put the remainder from right to left
Hexadecimal • Radix r = 16 • Why use hexadecimal? Shorthand notation for binary • Grouping 4 bits in binary to get 1 digit in hexadecimal
Overflow • Overflow occurs when the result of an arithmetic operation is out of range and indicates an error • For example, in a computer with n-bit words, if the addition of two n-bit integers produces an (n+1)-bit result, we call it overflow
Signed Numbers • Signed-magnitude: human friendly, but causes complexity of arithmetic • Two’s complement: store –a as the binary equivalent of 2n –a in an n-bit system
Two’s Complement • An easier way to get two’s complement representation for a negative number • Find binary equivalent of the magnitude • Complement each bit (change 0’s to 1’s, and change 1’s to 0’s) • Add 1
Addition using Two’s Complement • It’s simple! • Do the binary addition as usual • If there is a carry out of the most significant bit, just ignore it • But watch out for overflow! • Overflow occurs when the sum is out of range, which indicates an error
Binary Subtraction • Subtraction can be accomplished by • Taking the two’s complement of second operand • Adding the first operand and the two’s complement of second operand
Overflow in Binary Subtraction • For unsigned numbers, overflow occurs when the second number is larger than the first number, and is indicated by a carry out of 0 • For signed numbers, overflow may occur if we subtract a negative number from a positive one or subtract a positive number from negative one
Binary Coded Decimal (BCD) • Most computers operate on binary numbers • However, for computers to interface with humans, the mode of communication is generally decimal • Convert from decimal to binary on input • Convert from binary to decimal on output • But the decimal output still needs to be coded into binary, digit by digit
Other Codes • ASCII: used to transmit alphanumeric information • Gray code: consecutive numbers differ in only one bit • Particularly useful in coding the position of a continuous device and error detection