Binary Numbers.

Slides:



Advertisements
Similar presentations
Abdullah Said Alkalbani University of Buraimi
Advertisements

5.1 Rules for Exponents Review of Bases and Exponents Zero Exponents
Register Transfer and Microoperations Part2
Adders Used to perform addition, subtraction, multiplication, and division (sometimes) Half-adder adds rightmost (least significant) bit Full-adder.
1 C Programming. 2 Operators 3 Operators in C An operator is a symbol that tells the computer to perform certain mathematical or logical manipulation.
Principles & Applications
Chapter 2 Fractions.
Binary Numbers.
Binary Numbers.
8 October 2013Birkbeck College, U. London1 Introduction to Computer Systems Lecturer: Steve Maybank Department of Computer Science and Information Systems.
15 October 2013Birkbeck College, U. London1 Introduction to Computer Systems Lecturer: Steve Maybank Department of Computer Science and Information Systems.
1 Floating Point Representation and Arithmetic (see Patterson Chapter 4)
A Simple ALU Binary Logic.
B261 Systems Architecture
Monika Gope Lecturer IICT, KUET
Princess Sumaya University
Logic Circuits Basic Building Blocks Dr John Cowell
Chapter 4 Gates and Circuits Nell Dale • John Lewis.
Chapter 3 Digital Logic Structures
Chapter 4 Gates and Circuits.
ENGIN112 L7: More Logic Functions September 17, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 7 More Logic Functions: NAND, NOR,
Discrete Mathematical Structures: Theory and Applications
Karnaugh Map Adjacent Squares
Digital Systems Introduction Binary Quantities and Variables
Digital Logical Structures
Logic Gates. Transistors as Switches ¡V BB voltage controls whether the transistor conducts in a common base configuration. ¡Logic circuits can be built.
Department of Computer and Information Science, School of Science, IUPUI CSCI 240 Digital Logic.
Chapter 3 Logic Gates.
Gates and Circuits Nell Dale & John Lewis (adaptation by Erin Chambers and Michael Goldwasser)
Lecture 6 More Logic Functions: NAND, NOR, XOR and XNOR
Logic Gates Flip-Flops Registers Adders
(CSC 102) Discrete Structures Lecture 5.
CS105 Introduction to Computer Concepts GATES and CIRCUITS
Chapter 4 Gates and Circuits.
Karnaugh Map Adjacent Squares
01 Introduction to Digital Logic
Number Systems (1)  Positional Notation N = (a n-1 a n-2... a 1 a 0. a -1 a a -m ) r (1.1) where. = radix point r = radix or base n = number of.
Arithmetic circuits  Binary addition  Binary Subtraction  Unsigned binary numbers  Sign-magnitude numbers  2 ’ S Complement representation  2 ’
Chapter 4 Gates and Circuits.
Binary Values and Number Systems
Topics Adders Half Adder Full Adder Subtracter Half Subtracter
UNIVERSITY OF MASSACHUSETTS Dept
Number Systems Digital Logic By: Safwan Mawlood
CS1022 Computer Programming & Principles
Nat 4/5 Computing Science Lesson 1: Binary
Binary Lesson 3 Hexadecimal. Counting to 15 Base Base Base 16 Base Base Base 16 Two Ten (Hex) Two Ten (Hex)
Binary Lesson 3 Hexadecimal. Counting to 15 Base Base Base 16 Base Base Base 16 Two Ten (Hex) Two Ten (Hex)
Princess Sumaya University
Combinational Circuits
Digital Logic & Design Lecture No. 3. Number System Conversion Conversion between binary and octal can be carried out by inspection.  Each octal digit.
Datorteknik IntegerAddSub bild 1 Integer arithmetic Depends what you mean by "integer" Assume at 3-bit string. –Then we define zero = 000 one = 001 Use.
Number Systems Decimal Binary Denary Octal Hexadecimal Click the mouse or Press the space bar to Continue.
Combinatorial networks- II
The Logic of Compound Statements
1 Survey of Computer Science CSCI 110, Spring 2011 Lecture 16 Digital Circuits, binary Numbers.
(2.1) Fundamentals  Terms for magnitudes – logarithms and logarithmic graphs  Digital representations – Binary numbers – Text – Analog information 
Computers Organization & Assembly Language
Binary Numbers.
5 - Digital Logic with Boolean Algebra
CO5023 Introduction to Digital Circuits. What do we know so far? How to represent numbers (integers and floating point) in binary How to convert between.
Department of Preparatory Year, Umm Al Qura University CSCI 240 Digital Logic.
1 Ethics of Computing MONT 113G, Spring 2012 Session 4 Binary Addition.
Digital Logic. Boolean Algebra to Logic Gates Logic circuits are built from components called logic gates. The logic gates correspond to Boolean operations.
Fundamentals & Ethics of Information Systems IS 201
University of Gujrat Department of Computer Science
Number Systems Decimal (base 10) { }
CMSC250 Fall 2018 Circuits 1 1.
Presentation transcript:

Binary Numbers

Outcome Familiar with the binary system Binary to Decimal and decimal to binary Arithmetic and logic operation in binary system Logic gates Half Adder and Full Adder Hexadecimal system

Reading Goldsmiths Study guide: mathematics for computing http://www.math.grin.edu/~rebelsky/Courses/152/97F/Readings/student-binary http://en.wikipedia.org/wiki/Binary_numeral_system http://www.cut-the-knot.org/do_you_know/BinaryHistory.shtml http://www.binarymath.info/

The Decimal Number System (con’t) The decimal number system is also known as base 10. The values of the positions are calculated by taking 10 to some power. Why is the base 10 for decimal numbers? Because we use 10 digits, the digits 0 through 9.

The Binary Number System – base 2 The decimal number system is a positional number system with a base 10. Example: 5623 5623 = 5000 + 600 + 20 + 3 = 5 x 103 + 6 x102 + 2 x 101 + 3 x 100 5000 600 20 3 5 x 103 6 x102 2 x 101 3 x 100

The Binary Number System The binary number system is also known as base 2. The values of the positions are calculated by taking 2 to some power. Why is the base 2 for binary numbers? Because we use 2 digits, the digits 0 and 1.

The Decimal Number System - base 10 The decimal number system is a positional number system with a base 10. Example: 1011 10112 = 1000 + 000 + 10 + 1 = 1 x 23 + 0 x22 + 1 x 21 + 1 x 20 = 1110 1000 000 10 1 1 x 23 0x22 1 x 21 1x 20

Why Bits (Binary Digits)? Computers are built using digital circuits Inputs and outputs can have only two values True (high voltage) or false (low voltage) Represented as 1 and 0 Can represent many kinds of information Boolean (true or false) Numbers (23, 79, …) Characters (‘a’, ‘z’, …) ASCII, UNICODE Pixels Sound Can manipulate in many ways Read and write Logical operations Arithmetic …

Base 10 and Base 2 Base 10 Base 2 Each digit represents a power of 10 5417310 = 5 x 104 + 4 x 103 + 1 x 102 + 7 x 101 + 3 x 100 Base 2 Each bit represents a power of 2 101012= 1 x 24 + 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 2110

Converting from Binary to Decimal 1 0 0 1 1 0 1 1 X 20 = 1 26 25 24 23 22 21 20 0 X 21 = 0 1 X 22 = 4 20 = 1 1 X 23 = 8 21 = 2 0 X 24 = 0 22 = 4 0 X 25 = 0 23 = 8 1 X 26 = 64 24 = 16 7710 25 = 32 26 = 64

Converting from Binary to Decimal (con’t) Practice conversions: Binary Decimal 110010 100111 1010101

Converting From Decimal to Binary (con’t) Make a list of the binary place values up to the number being converted. Perform successive divisions by 2, placing the remainder of 0 or 1 in each of the positions from right to left. Continue until the quotient is zero. Example: 4210 25 24 23 22 21 20 32 16 8 4 2 1 1 0 1 0 1 0 42/2 = 21 and R = 0 21/2 = 10 and R = 1 10/2 = 5 and R = 0 5/2 = 2 and R = 1 2/2 = 1 and R = 0 1/2 = 0 and R = 1 4210 = 1010102

Example 1710 We repeatedly divide the decimal number by 2 and keep remainders 17/2 = 8 and R = 1 8/2 = 4 and R = 0 4/2 = 2 and R = 0 2/2 = 1 and R = 0 1/2 = 0 and R = 1 The binary number representing 17 is 10001

Converting From Decimal to Binary (con’t) Practice conversions: Decimal Binary 59 82 175

Fractional Numbers Decimal 456.7810 = 4 x 102 + 5 x 101 + 6 x 100 + 7 x 10-1+8 x 10-2 Binary 1011.112 = 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20 + 1 x 2-1 + 1 x 2-2 = 8 + 0 + 2 + 1 + 1/2 + ¼ = 11 + 0.5 + 0.25 = 11.7510

Binary Fractional to decimal nNumbers (cont) Example1 1011.112 = 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20 + 1 x 2-1 + 1 x 2-2 = 8 + 0 + 2 + 1 + 1/2 + ¼ = 11 + 0.5 + 0.25 = 11.7510 Example 2: 111.112 = 1 x 22 + 1 x 21 + 1 x 20 + 1 x 2-1 + 1 x 2-2 = 4 + 2 + 1 + 1/2 + ¼ = 7.7510 Example3: 11.0112 = 1 x 21 + 1 x 20 + 0x 2-1 + 1 x 2-2 + 1 x 2-3 = 2 +1 +0 + ¼ +1/8 = 3.37510

Fractional numbers 4 2 1 Examples: 7.7510 = (?)2 Conversion of the integer part: same as before – repeated division by 2 7 / 2 = 3 (Q), 1 (R)  3 / 2 = 1 (Q), 1 (R)  1 / 2 = 0 (Q), 1 (R) 710 = 1112 Conversion of the fractional part: perform a repeated multiplication by 2 and extract the integer part of the result 0.75 x 2 =1.50  extract 1 0.5 x 2 = 1.0  extract 1 0.7510 = 0.112 0.0  stop  Combine the results from integer and fractional part, 7.7510 = 111.112 How about choose some of Examples: try 5.625 write in the same order 4 2 1 1/2 1/4 1/8 =0.5 =0.25 =0.125

Fractional Numbers (cont.) Exercise 3: Convert (0.8125)10 to its binary form Solution: 0.8125 x 2 = 1.625  extract 1 0.625 x 2 = 1.25  extract 1 0.25 x 2 = 0.5  extract 0 0.5 x 2 = 1.0  extract 1 0.0  stop  (0.8125)10 = (0.1101)2

Representing fraction with error Example: Convert (0.6)10 to its binary form 0.6 x 2 = 1.2  extract 1 0.2 x 2 = 0.4  extract 0 0.4 x 2 = 0.8  extract 0 0.8 x 2 = 1.6  extract 1 0.6 x 2 =  (0.6)10 = (0.1001 1001 1001 …)2

Fractional Numbers (cont.) Errors One source of error in the computations is due to back and forth conversions between decimal and binary formats Example: (0.6)10 + (0.6)10 = 1.210 Since (0.6)10 = (0.1001 1001 1001 …)2 Lets assume a 8-bit representation: (0.6)10 = (0 .1001 1001)2 , therefore 0.6 0.10011001 + 0.6  + 0.10011001 1.00110010 Lets reconvert to decimal system: (1.00110010)b= 1 x 20 + 0 x 2-1 + 0 x 2-2 + 1 x 2-3 + 1 x 2-4 + 0 x 2-5 + 0 x 2-6 + 1 x 2-7 + 0 x 2-8 = 1 + 1/8 + 1/16 + 1/128 = 1.1953125  Error = 1.2 – 1.1953125 = 0.0046875

Bits, Bytes, and Words A bit is a single binary digit (a 1 or 0). A byte is 8 bits A word is 32 bits or 4 bytes Long word = 8 bytes = 64 bits Quad word = 16 bytes = 128 bits Programming languages use these standard number of bits when organizing data storage and access.

Adding Two Integers: Base 10 From right to left, we add each pair of digits We write the sum, and add the carry to the next column 0 1 1 + 0 0 1 Sum Carry 1 9 8 + 2 6 4 Sum Carry 4 6 1 2 1 1 1 1

Example 10011110 1101111 + + 111 1101 -------------------- ------------------- = 101 0 0 101 = 1111100

Binary subtraction

Binary subtraction (Cont)

Binary subtraction (Cont)

Exercise 10010101 - 11011 =? 10000001 - 111 = ?

Binary Multiplication 1 0 0 0 two = 8ten multiplicand 1 0 0 1 two = 9ten multiplier ____________ 1 0 0 0 0 0 0 0 partial products 0 0 0 0 1 0 0 1 0 0 0two = 72ten Spring 2007, Jan. 17 ELEC 2200 (Agrawal)

Binary Division 1 3 Quotient 1 1 / 1 4 7 Divisor / Dividend 1 1 3 7 Partial remainder 3 3 4 Remainder 0 0 0 0 1 1 0 1 1 0 1 1 / 1 0 0 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 0 1 1 1 1 1 0 0 Spring 2007, Jan. 17 ELEC 2200 (Agrawal)

Bitwise Operators: Shift Left/Right Shift left (<<): Multiply by powers of 2 Shift some # of bits to the left, filling the blanks with 0 Shift right (>>): Divide by powers of 2 Shift some # of bits to the right For unsigned integer, fill in blanks with 0 What about signed integers? Varies across machines… Can vary from one machine to another! 1 53 53<<2 53 1 1 1 53>>2 1 1 1

Boolean Algebra to Logic Gates Logic circuits are built from components called logic gates. The logic gates correspond to Boolean operations +, *, ’. Binary operations have two inputs, unary has one OR + AND * NOT ’

AND A Logic Gate: A*B Truth Table: B A B A*B 1 A B Series Circuit: A*B

OR A B A+B 1 A Logic Gate: A+B Truth Table: B A Parallel Circuit: B 1 A Parallel Circuit: B A+B

NOT Logic Gate: (also called an inverter) A A’ or A Truth Table: a A 1

n-input Gates Because + and * are binary operations, they can be cascaded together to OR or AND multiple inputs. A A B A+B+C ABC B C A A B A+B+C ABC B C C

NAND and NOR Gates NAND and NOR gates can greatly simplify circuit diagrams. As we will see, can you use these gates wherever you could use AND, OR, and NOT. A B AB 1 NAND A B AB 1 NOR

XOR and XNOR Gates XOR is used to choose between two mutually exclusive inputs. Unlike OR, XOR is true only when one input or the other is true, not both. A B AB 1 XOR A B A B 1 XNOR

Binary Sums and Carries a b Sum a b Carry 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 0 1 1 0 1 1 1 XOR AND 0100 0101 69 + 0110 0111 103 1010 1100 172

Design Hardware Bit by Bit Adding two bits: a b half_sum carry_out 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 Half-adder circuit a b half_sum carry_out XOR AND Spring 2007, Jan. 17 ELEC 2200 (Agrawal)

Half Adder (1-bit) A B A B S(um) C(arry) 1 S Half Adder C

Half Adder (1-bit) A B S(um) C(arry) 1 A B Sum Carry

Full Adder A B Cin A B S(um) Cout 1 S Full Adder Carry In (Cin) Cout

Full Adder H.A. H.A. A B Cin Cout S

Full Adder Cout S Half Adder C A B Cin

4-bit Ripple Adder using Full Adder Cin Cout S S3 A3 B3 Carry Full Adder A B Cin Cout S S2 A2 B2 Full Adder A B Cin Cout S S1 A1 B1 A0 B0 Full Adder A B Cin Cout S A B Cin Cout S H.A. Full Adder S0 A B S C Half Adder

Working with Large Numbers 0 1 0 1 0 0 0 0 1 0 1 0 0 1 1 1 = ? Humans can’t work well with binary numbers; there are too many digits to deal with. Memory addresses and other data can be quite large. Therefore, we sometimes use the hexadecimal number system.

The Hexadecimal Number System The hexadecimal number system is also known as base 16. The values of the positions are calculated by taking 16 to some power. Why is the base 16 for hexadecimal numbers ? Because we use 16 symbols, the digits 0 and 1 and the letters A through F.

The Hexadecimal Number System (con’t) Binary Decimal Hexadecimal Binary Decimal Hexadecimal 0 0 0 1010 10 A 1 1 1 1011 11 B 10 2 2 1100 12 C 11 3 3 1101 13 D 100 4 4 1110 14 E 101 5 5 1111 15 F 110 6 6 111 7 7 1000 8 8 1001 9 9

The Hexadecimal Number System (con’t) Example of a hexadecimal number and the values of the positions: 3 C 8 B 0 5 1 166 165 164 163 162 161 160

Example of Equivalent Numbers Binary: 1 0 1 0 0 0 0 1 0 1 0 0 1 1 12 Decimal: 2064710 Hexadecimal: 50A716 Notice how the number of digits gets smaller as the base increases.

Summary Convert binary to decimal Decimal to binary Binary operation Logic gates Use of logic gates to perform binary operations Half adder Full adder The need of Hexadecimal Hexadecimal

Next lecture (Data representation) Put this all together negative and positive integer representation unsigned notation Signed notation Excess notation Tow’s complement notation Floating point representation Single and double precision Character, colour and sound representation