Bits, Bytes and Boolean CS 1 Introduction to Computers and Computer Technology Rick Graziani Spring 2015 BIT – BInary digiT • Bit (Binary Digit) = Basic unit of information, representing one of two • • • discrete states. The smallest unit of information within the computer. The only thing a computer understands. Abbreviation: b Bit has one of two values: – 0 (off) or 1 (on) – 0 (False) or 1 (True) OFF Rick Graziani graziani@cabrillo.edu ON 2 Bits The boxes illustrate a position where magnetism may be set and sensed; pluses (red) indicate magnetism of positive polarity (1 bit), interpreted as “present” and minuses (blue) (0 bit). 0 1 1 0 1 0 0 0 1 0 1 1 0 1 0 1 • Two patterns are known as the • state of the bit. For example, magnetic encoding of information on tapes, floppy disks, and hard disks are done with positive or negative polarity. Rick Graziani graziani@cabrillo.edu 3 Bits • Bits are really only symbols. • Used to display the one of two different, discrete states. • Bits are used as: – Storing data • Numbers • Text characters • Images • Sound • Etc. – Processing data Rick Graziani graziani@cabrillo.edu 4 Boolean Operations • • • • • Integrated Circuits (microchips) are used to store and manipulate (process) bits. This is done using Boolean operations (in honor of mathematician George Boole, 1815-1864). Boolean Operation: An operation that manipulates one or more true/false values Specific operations – AND – OR – XOR (exclusive or) – NOT Using Truth Tables we can uses different sets of logic operations to store, add, subtract, and more complicated operations with bit. Rick Graziani graziani@cabrillo.edu 5 Boolean Algebra and logical expressions (Addendum) • Boolean algebra (due to George Boole) - The mathematics of digital • • • logic – Useful in dealing with binary system of numbers. – Used in the analysis and synthesis of logical expressions. Logical expressions – Expressions constructed using logical-variables and operators. – Result is: True or False Boolean algebra – In mathematics a variable uses one of the two possible values: 1 or 0 May also be represented as: – Truth or Falsehood of a statement – On or Off states of a switch – High (5V) or low (0V) of a voltage level Rick Graziani graziani@cabrillo.edu 6 Used in electronics (Addendum) • Electrical circuits are designed to represent logical • • • expressions – Known as logic circuits. Used to make important logical decisions in household appliances, computers, communication devices, traffic signals and microprocessors. Three basic logic operations as listed below: – OR operation – AND operation – NOT operation A logic gate is an electronic circuit/device which makes the logical decisions based on these operations. Rick Graziani graziani@cabrillo.edu 7 Logic gates (Addendum) • • • Logic gates have: – one or more inputs – only one output The output is active only for certain input combinations. Logic gates are the building blocks of any digital circuit. Rick Graziani graziani@cabrillo.edu 8 Boolean Operations - AND TRUE TRUE AND = TRUE • Truth tables (simple ones) • AND operation – Both input values must be TRUE for output to be TRUE – Kermit is a frog AND Miss Piggy is an actress – Inputs to AND operation represent truth of falseness of the compound statement. Rick Graziani graziani@cabrillo.edu 9 Boolean Operations • Gate: • – A device that computes a Boolean operation – A device that produces the output of a Boolean operation when given the operation’s input values. Gates can be: – Gears – Relays – Optic devices – Electronic circuits (microchips) Rick Graziani graziani@cabrillo.edu 10 Boolean Operations – AND Gate 0 0 0 0 0 1 1 1 Rick Graziani graziani@cabrillo.edu Inputs Output 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 Truth Table 1 0 = FALSE 1 = TRUE AND operation • Both input values must be TRUE for output to be TRUE 11 Boolean Operations - OR TRUE OR True = TRUE • Truth tables (simple ones) • OR operation – Only one input values must be TRUE for output to be TRUE – In Rick likes to surf OR Rick likes to go dancing. – Taking both courses will also TRUE. Rick Graziani graziani@cabrillo.edu 12 Boolean Operations – OR Gate 0 0 0 0 1 1 1 1 0 1 1 Rick Graziani graziani@cabrillo.edu 1 Truth Table Inputs Output 0 0 0 0 1 1 1 0 1 1 1 1 0 = FALSE 1 = TRUE OR operation • At least one input value must be TRUE for output to be TRUE 13 Boolean Operations - XOR TRUE XOR False = TRUE • Truth tables (simple ones) • XOR operation – One and ONLY one input value can be TRUE for output to be TRUE – At noon Rick is going to surf the Hook XOR surf Liquor Stores (this is a surf spot) – Both cannot be true, as I cannot surf both spots at the same time. Rick Graziani graziani@cabrillo.edu 14 Boolean Operations – XOR Gate 0 0 0 0 1 1 1 1 0 1 1 Rick Graziani graziani@cabrillo.edu 0 Truth Table Inputs Output 0 0 0 0 1 1 1 0 1 1 1 0 0 = FALSE 1 = TRUE XOR operation • Only one input value is TRUE for output to be TRUE 15 Boolean Operations – NOT Gate 0 1 1 0 Truth Table Inputs Output 0 1 1 0 0 = FALSE 1 = TRUE NOT operation • Only one input • Opposite of input NOT FALSE = TRUE NOT TRUE = FALSE Rick Graziani graziani@cabrillo.edu 16 http://www.cs.kent.edu/~volkert/F1010051/notes/logsim.html Rick Graziani graziani@cabrillo.edu 17 Another way to write it… 0 = FALSE; 1 = TRUE Rick Graziani graziani@cabrillo.edu 18 Binary Math Rick Graziani graziani@cabrillo.edu 19 Base 10 (Decimal) Number System Digits (10): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Number of: 104 103 10,000’s 1,000’s 102 100’s 1 Rick Graziani graziani@cabrillo.edu 101 10’s 1 9 0 100 1’s 1 2 3 9 0 9 0 20 Base 10 (Decimal) Number System Digits (10): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Number of: 104 103 10,000’s 1,000’s 4 1 1 Rick Graziani graziani@cabrillo.edu 0 0 102 100’s 1 3 0 0 101 10’s 0 8 0 1 100 1’s 8 2 9 0 21 Rick’s Number System Rules • • • • All digits start with 0 A Base-n number system has n number of digits: – Decimal: Base-10 has 10 digits – Binary: Base-2 has 2 digits – Hexadecimal: Base-16 has 16 digits The first column is always the number of 1’s Each of the following columns is n times the previous column (n = Base-n) – Base 10: 10,000 1,000 100 10 1 – Base 2: 16 8 4 2 1 – Base 16: 65,536 4,096 256 16 1 Rick Graziani graziani@cabrillo.edu 22 Counting in Decimal (0,1,2,3,4,5,6,7,8,9) 1,000’s 100’s 10’s 1’s 0 1 2 3 ... 9 1 0 1 1 ... 1 8 1 9 2 0 2 1 2 2 Rick Graziani graziani@cabrillo.edu 1,000’s 100’s 10’s 1’s . . . 2 9 3 0 3 1 ... 9 9 1 0 0 1 0 1 ... 9 9 9 1 0 0 0 23 Counting in Binary (0, 1) 8’s 4’s Dec 1 1 0 1 1 1 0 1 2 3 4 5 6 7 0 0 0 8 1 1 1 2’s 1’s 0 1 1 0 1 1 0 0 0 1 Rick Graziani graziani@cabrillo.edu 8’s 4’s 2’s 1’s 1 0 0 1 9 1 0 1 0 10 1 0 1 1 11 1 1 0 0 12 1 1 0 1 13 1 1 1 0 14 1 1 1 1 15 Dec 24 Binary Math (more later) 0 +0 0 0 +1 1 111 + 1 1000 1 +1 10 …… Rick Graziani graziani@cabrillo.edu 10 +1 11 11 +1 100 00000000 + 0 00000000 100 + 1 101 -> 101 + 1 110 11111110 + 1 11111111 25 Base 2 (Binary) Number System Digits (2): 0, 1 Number of: 27 26 25 24 128’s 64’s 32’s 16’s Dec. 2 10 17 70 130 255 Rick Graziani graziani@cabrillo.edu 23 22 21 20 8’s 4’s 2’s 1’s 1 0 1 1 0 0 26 Base 2 (Binary) Number System Digits (2): 0, 1 Number of: 27 26 25 24 128’s 64’s 32’s 16’s Dec. 2 10 17 1 70 1 0 0 130 1 0 0 0 255 1 1 1 1 Rick Graziani graziani@cabrillo.edu 23 22 21 20 8’s 4’s 2’s 1’s 1 0 0 0 1 0 0 1 0 1 1 1 0 1 1 1 0 0 1 0 0 1 27 Converting between Decimal and Binary Digits (2): 0, 1 Number of: 27 26 25 24 128’s 64’s 32’s 16’s Dec. 1 0 0 1 0 0 0 0 0 1 0 0 0 172 192 Rick Graziani graziani@cabrillo.edu 23 22 21 20 8’s 4’s 2’s 1’s 0 1 0 0 1 0 0 0 1 0 0 0 0 0 0 0 28 Converting between Decimal and Binary Digits (2): 0, 1 Number of: 27 26 25 24 128’s 64’s 32’s 16’s Dec. 70 1 0 0 40 1 0 0 0 0 0 0 128 1 0 0 0 172 1 0 1 0 192 1 1 0 0 Rick Graziani graziani@cabrillo.edu 23 22 21 20 8’s 4’s 2’s 1’s 0 1 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 29 Computers do Binary 0 • • • 1 Bits have two values: OFF and ON The Binary number system (Base-2) can represent OFF and ON very well since it has two values, 0 and 1 – 0 = OFF – 1 = ON Understanding Binary to Decimal conversion is critical in computer science, computer networking, digital media, etc. Rick Graziani graziani@cabrillo.edu 30 Rick’s Program Rick Graziani graziani@cabrillo.edu 31 Rick’s Program Rick Graziani graziani@cabrillo.edu 32 Rick’s Program Rick Graziani graziani@cabrillo.edu 33 Decimal Math - Addition 10,000’s 1,000’s 1 + 1 10’s 1’s 1 1 6 5 1 0 1 6 5 9 5 ----------------------------- 3 Rick Graziani graziani@cabrillo.edu 100’s 3 1 0 5 34 Binary Math - Addition 1’s Dec 1 1 0 1 0 1 1 0 1 1 ----------------------------- 58 + 27 ----85 64’s 32’s 16’s 1 1 8’s 1 4’s 2’s 1 1 + 1 0 1 0 1 0 1 Double check using Decimal. Rick Graziani graziani@cabrillo.edu 35 Half Adder Gate – Adding two bits XOR Inputs: A, B S = Sum C = Carry AND A + Rick Graziani graziani@cabrillo.edu B = 2’s 1’s 36 Half Adder Gate – Adding two bits 0 0 Inputs: A, B S = Sum C = Carry XOR 0 0 AND A 0 + Rick Graziani graziani@cabrillo.edu B 0 = = C S 2’s 1’s 0 0 0 + 0 ---0 37 Half Adder Gate – Adding two bits 0 1 Inputs: A, B S = Sum C = Carry XOR 1 0 AND A 0 + Rick Graziani graziani@cabrillo.edu B 1 = = C S 2’s 1’s 0 1 0 + 1 ---1 38 Half Adder Gate – Adding two bits 1 0 Inputs: A, B S = Sum C = Carry XOR 1 0 AND A 1 + Rick Graziani graziani@cabrillo.edu B 0 = = C S 2’s 1’s 0 1 1 + 0 ---1 39 Half Adder Gate – Adding two bits 1 1 Inputs: A, B S = Sum C = Carry XOR 0 1 AND A 1 + Rick Graziani graziani@cabrillo.edu B 1 = = C S 2’s 1’s 1 0 1 + 1 ---1 0 40 Marble Adding Machine • http://www.youtube.com/watch?v=GcDshWmhF4A&NR=1 &feature=fvwp Rick Graziani graziani@cabrillo.edu 41 Flip-flops • • • • • • Flip-flop: A circuit built from gates that can store one bit, uses feedback. A means of storing bits such as RAM Modern computers use technologies with: – greater miniaturization – faster response times – additional circuitry DRAM (Dynamic RAM) SDRAM (Synchronous DRAM) PCs currently use DDR (double data rate) for RAM, DDR1, DDR2 and DDR3 – Type of SDRAM – Each type has types of DIMM (dual in-line memory module) slots (different number of pins) Rick Graziani graziani@cabrillo.edu 42 Example of Flip Flops storing bits (FYI) • • • S = Set R = Reset DRAM (Dynamic RAM) – Each bit of data is stored in a separate capacitor within an integrated circuit. – Since real capacitors leak charge, the information eventually fades unless the capacitor charge is refreshed periodically. Rick Graziani graziani@cabrillo.edu 43 Types of RAM • • • • Understanding RAM Types: DRAM, SDRAM, DIMM, SIMM & More – http://proprofs.com/mwiki/index.php?title=Understanding_RAM_Types:_DR AM_SDRAM_DIMM_SIMM_And_More RAM - From Wikipedia, the free encyclopedia – http://en.wikipedia.org/wiki/RAM DDR2 SDRAM - From Wikipedia, the free encyclopedia – http://en.wikipedia.org/wiki/DDR2_SDRAM Dynamic random access memory - From Wikipedia, the free encyclopedia – http://en.wikipedia.org/wiki/Dynamic_random_access_memory Rick Graziani graziani@cabrillo.edu 44 Bits, Bytes and Boolean CS 1 Introduction to Computers and Computer Technology Rick Graziani