Introduction to Programming Part 3

Slides:



Advertisements
Similar presentations
Computer Engineering FloatingPoint page 1 Floating Point Number system corresponding to the decimal notation 1,837 * 10 significand exponent A great number.
Advertisements

Floating Point Numbers
Signed Numbers.
Floating Point Numbers
Floating Point Numbers.  Floating point numbers are real numbers.  In Java, this just means any numbers that aren’t integers (whole numbers)  For example…
Binary Representation and Computer Arithmetic
01- Intro-Java-part1 1 Introduction to Java, and DrJava Barb Ericson Georgia Institute of Technology June 2008.
Simple Data Type Representation and conversion of numbers
Abstraction – Number Systems and Data Representation.
Binary Real Numbers. Introduction Computers must be able to represent real numbers (numbers w/ fractions) Two different ways:  Fixed-point  Floating-point.
2-1 Chapter 2 - Data Representation Principles of Computer Architecture by M. Murdocca and V. Heuring © 1999 M. Murdocca and V. Heuring Chapter Contents.
NUMBER REPRESENTATION CHAPTER 3 – part 3. ONE’S COMPLEMENT REPRESENTATION CHAPTER 3 – part 3.
Georgia Institute of Technology Introduction to Java, and DrJava Barb Ericson Georgia Institute of Technology Aug 2005.
ITEC 1011 Introduction to Information Technologies 4. Floating Point Numbers Chapt. 5.
CSPP58001 Floating Point Numbers. CSPP58001 Floating vs. fixed point Floating point refers to a binary decimal representation where there is not a fixed.
Floating Point in Binary 1.Place Value Chart:
Floating Point Numbers
Georgia Institute of Technology Introduction to Programming Part 3 Barb Ericson Georgia Institute of Technology May 2006.
Learning Objectives 3.3.1f - Describe the nature and uses of floating point form 3.3.1h - Convert a real number to floating point form Learn how to normalise.
Software Design and Development Storing Data Computing Science.
© 2010 Pearson Prentice Hall. All rights reserved Scientific Notation § 9.5.
Floating Point Numbers Dr. Mohsen NASRI College of Computer and Information Sciences, Majmaah University, Al Majmaah
Chapter 9 Computer Arithmetic
William Stallings Computer Organization and Architecture 8th Edition
Lesson Objectives Aims You should know about: Binary numbers ‘n’ that.
Floating Point Numbers
Nat 4/5 Computing Science Lesson 1: Binary
Floating Point Representations
Department of Computer Science Georgia State University
Fundamentals of Computer Science
Computer Science 210 Computer Organization
A brief comparison of integer and double representation
Introduction To Computer Science
Integer Real Numbers Character Boolean Memory Address CPU Data Types
Chapter 3 Data Storage.
Numbers in a Computer Unsigned integers Signed magnitude
Floating Point Number system corresponding to the decimal notation
Data Representation Integers
Introduction to Programming Part 3
A Level Computing Component 2
William Stallings Computer Organization and Architecture 7th Edition
Data Structures Mohammed Thajeel To the second year students
Data Representation Data Types Complements Fixed Point Representation
Fundamentals of Programming I Number Systems
Computer Science 210 Computer Organization
Scientific Notation CP Chemistry.
Introduction to Java, and DrJava part 1
ECEG-3202 Computer Architecture and Organization
Introduction to Binary
Unit 18: Computational Thinking
Number Representation
Binary “There are 10 types of people in the world: Those who understand binary, and those who don't.”
Chapter 3 DataStorage Foundations of Computer Science ã Cengage Learning.
Computer Organization
Starter Using the fingers on only one hand, what is the highest number you can count to? Rules: You must start at 1 You must count sequentially (i.e.
CPS120: Introduction to Computer Science
Introduction to Java, and DrJava
Representation of real numbers
Abstraction – Number Systems and Data Representation
COMS 161 Introduction to Computing
Introduction to Java, and DrJava
Introduction to Java, and DrJava part 1
Data Binary Arithmetic.
Chapter3 Fixed Point Representation
Numbers with fractions Could be done in pure binary
OBJECTIVES After reading this chapter, the reader should be able to :
靜夜思 床前明月光, 疑是地上霜。 舉頭望明月, 低頭思故鄉。 ~ 李白 李商隱.
1.6) Storing Integer: 1.7) storing fraction:
Two’s Complement & Binary Arithmetic
Presentation transcript:

Introduction to Programming Part 3 Barb Ericson Georgia Institute of Technology May 2006 Georgia Institute of Technology

Georgia Institute of Technology Learning Goals Understand at a conceptual level Binary Numbers How to add binary numbers 2’s compliment notation How to subtract a number from another How to represent floating point numbers in binary How many patterns do you have with n number of bits? Why does it matter? Georgia Institute of Technology

Georgia Institute of Technology Binary Numbers We usually work with decimal numbers with digits from 0 to 9 and powers of 10 7313 = (7 * 1000 + 3 * 100 + 1 * 10 + 3 * 1) Or (7 * 103 + 3 * 102 + 1 * 101 + 3 * 100) The binary number system uses digits 0 and 1 and powers of 2 0101 = (0 * 8 + 1 * 4 + 0 * 2 + 1 * 1) Or (0 * 23 + 1 * 22 + 0 * 21 + 1 *20) = 5 See http://computer.howstuffworks.com/bytes1.htm for more information on number systems and binary numbers. Georgia Institute of Technology

Georgia Institute of Technology Binary Addition To add two decimal numbers you add the digits and if the total is greater than ten you carry the one into the next column To add two binary numbers 0 + 0 = 0 0 + 1 and 1 + 0 = 1 1 + 1 = 0 with a carry of 1 into the next column to the left 00 10 111 01 01 001 ---- --- ------ 01 11 1000 00111001010 01010101101 ------------------- 10001110111 Georgia Institute of Technology

2’s Compliment Notation Computers actually only know how to add So, how do they handle subtraction? Computers subtract by adding a negative number How do you represent a negative number in memory? Positive numbers in 2’s compliment are just the same as a binary number For negative numbers reverse 0s and 1s and then add 1 All negative numbers have a one for the leftmost bit See http://gs.fanshawec.ca/tlc/math270/1_7_Two's_Comp_Arith.htm and http://courses.cs.vt.edu/~csonline/NumberSystems/Lessons/SubtractionWithTwosComplement/Lesson.html for information on 2’s compliment Georgia Institute of Technology

Georgia Institute of Technology 2’s Compliment Example To subtract 3 from 7 First represent both as a binary number 7 is 0000 0111 (1 + 2 + 4) 3 is 0000 0011 (1 + 2) Reverse the 0s and 1s and then add 1 to get -3 0000 0011 reversed is 1111 1100 add 1 0000 0001 The result is 1111 1101 In 2’s Compliment positive number are represented as regular binary numbers. Negative numbers will always have the leftmost bit as 1. Positive numbers will always have the leftmost bit as 0. Georgia Institute of Technology

Add the Negative Number To subtract 3 from 7 Add -3 to 7 7 is 0000 0111 -3 is 1111 1101 The result is 1 0000 0100 Through away the leftmost 1 The answer is 0000 0100 which is 4 Georgia Institute of Technology

Georgia Institute of Technology Patterns Exercise How many different patterns of on and off bits are there in 3 bits? How many in 4 bits? How many in 8 bits? 000 is one pattern 001 is another pattern 010 is another pattern Georgia Institute of Technology

Does the number of patterns matter? Some garage door openers in the 70s used 8 bits to set the code to use to open the door Giving 256 different patterns Which is enough that you won’t open your neighbors door But small enough that someone could try each one The picture shows a garage door opener from the 90s with 12 bits. Georgia Institute of Technology

Georgia Institute of Technology Remote Entry Systems With 8 bits for a code you have a 1/256 chance of a random code working You don’t want someone opening your car in a place with lots of cars (like a mall) There are also radio scanners that can capture your code So you want the code to change each time Modern remote entry systems use a 40 bit rolling code See http://auto.howstuffworks.com/remote-entry2.htm for more information on remote entry systems. Georgia Institute of Technology

Decimal Number Storage How do you think a computer stores: 3205.406? It uses an IEEE 754 format Converts the number into a value between 0 and 1 raised to a power of 2 Stores 3 things A bit for the sign A number between 0 and 1 (the mantissa) The power of 2 (the exponent) Georgia Institute of Technology

Number of Bits Exercise How many bits would you need to represent 64 values? How many bits would you need to represent 256 values? How many bits would you need to represent 1024 values? How many bits would you need to represent 4096 values? How many bits would you need to represent 1 million values? Go to www.dell.com or www.gateway.com as two places to order computers. Georgia Institute of Technology

Georgia Institute of Technology Summary Numbers are stored using binary numbers Integers are stored in 2’s compliment Decimal numbers are stored in an IEEE format Computers only know how to add They subtract by turning one number into a negative Using 2’s compliment The number of values you can store in n bits is 2n 3 bits gives 23 which is 2 * 2 * 2 or 8 4 bits gives 24 which is 2 * 2 * 2 * 2 or 16 8 bits gives 28 which is 256 values Georgia Institute of Technology