mith College Computer Science Fixed & Floating Point Formats CSC231 Fall 2017 Week #15 Dominique Thiébaut


 Lorin Strickland
 10 months ago
 Views:
Transcription
1 mith College Computer Science Fixed & Floating Point CSC231 Fall 2017 Week #15 Formats Dominique Thiébaut
2 Trick Question for ( double d = 0; d!= 0.3; d += 0.1 ) System.out.println( d );
3 We stopped here last time
4 Normalization (in decimal) y = (normal = standard form) y = x 10 2 y = x 10 11
5 Normalization (in binary) y = ( d) y = x 2 3 y = x 10 11
6 Normalization (in binary) y = decimal y = x 2 3
7 Normalization (in binary) y = decimal y = x 2 3 y = x binary
8 x sign mantissa exponent
9 But, remember, all* numbers have a leading 1, so, we can pack the bits even more efficiently! *really?
10 implied bit! x sign mantissa exponent
11 IEEE Format S Exponent (8) Mantissa (23) 24 bits stored in 23 bits!
12 y = y = y = bbbbbbbb
13 y = x bbbbbbbb Why not ?
14 How is the exponent coded?
15 bbbbbbbb bias of 127
16 bbbbbbbb
17 y = x * 2^3 Ah! 3 represented by 130 = =
18 Verification in IEEE FP
19 Exercises How is 1.0 coded as a 32bit floating point number? What about 0.5? 1.5? 1.5? what floatingpoint value is stored in the 32bit number below?
20 1.0 = = = = = =  (stored exp = 131 > real exp = 4) = x 2^4 = x 16 = 31
21 what about 0.1?
22 0.1 decimal, in 32bit precision, IEEE Format:
23 0.1 decimal, in 32bit precision, IEEE Format: Value in doubleprecision:
24 NEVER NEVER COMPARE FLOATS OR DOUBLEs FOR EQUALITY! NEVER!
25 for ( double d = 0; d!= 0.3; d += 0.1 ) System.out.println( d );
26 bbbbbbbb
27 Zero Why is it special? 0.0 =
28 bbbbbbbb {if mantissa is 0: number = 0.0
29 Very Small Numbers Smallest numbers have stored exponent of 0. In this case, the implied 1 is omitted, and the exponent is 126 (not 127!)
30 bbbbbbbb {if mantissa is 0: number = 0.0 if mantissa is!0: no hidden 1
31 Very Small Numbers Example: (2126 ) x ( ) binary + (2126 ) x ( ) =
32 bbbbbbbb?
33 Very large exponents stored exponent = if the mantissa is = 0 ==> +/
34 Very large exponents stored exponent = if the mantissa is = 0 ==> +/
35 Very large exponents stored exponent = if the mantissa is = 0 ==> +/ if the mantissa is!= 0 ==> NaN
36 Very large exponents stored exponent = if the mantissa is = 0 ==> +/ if the mantissa is!= 0 ==> NaN = NotaNumber
37 Very large exponents stored exponent = if the mantissa is = 0 ==> +/ if the mantissa is!= 0 ==> NaN
38 = = = NaN
39 Operations that create NaNs ( The divisions 0/0 and ± /± The multiplications 0 ± and ± 0 The additions + ( ), ( ) + and equivalent subtractions The square root of a negative number. The logarithm of a negative number The inverse sine or cosine of a number that is less than 1 or greater than +1
40 // import java.util.*; import static java.lang.double.nan; import static java.lang.double.positive_infinity; import static java.lang.double.negative_infinity; Generating NaNs public class GenerateNaN { public static void main(string args[]) { double[] allnans = { 0D / 0D, POSITIVE_INFINITY / POSITIVE_INFINITY, POSITIVE_INFINITY / NEGATIVE_INFINITY, NEGATIVE_INFINITY / POSITIVE_INFINITY, NEGATIVE_INFINITY / NEGATIVE_INFINITY, 0 * POSITIVE_INFINITY, 0 * NEGATIVE_INFINITY, Math.pow(1, POSITIVE_INFINITY), POSITIVE_INFINITY + NEGATIVE_INFINITY, NEGATIVE_INFINITY + POSITIVE_INFINITY, POSITIVE_INFINITY  POSITIVE_INFINITY, NEGATIVE_INFINITY  NEGATIVE_INFINITY, Math.sqrt(1), Math.log(1), Math.asin(2), Math.acos(+2), }; System.out.println(Arrays.toString(allNaNs)); System.out.println(NaN == NaN); System.out.println(Double.isNaN(NaN)); } } [NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN] false true
41 NaN is sticky!
42 Range of FloatingPoint Numbers
43 Range of FloatingPoint Numbers Remember that!
44 Resolution of a FloatingPoint Format Check out table here:
45
46 What does it have to do with Art?
47 Rosetta Landing on Comet 10year trajectory
48 We stopped here last time
49 Why not using 2 s Complement for the Exponent? = = = =
50 Exercises Does this converter support NaN, and? Are there several different representations of +? What is the largest float representable with the 32bit format? What is the smallest normalized float (i.e. a float which has an implied leading 1. bit)?
51 How do we add 2 FP numbers?
52 1.111 x x x x 2 8 after expansion x x x 2 8 locate largest number shift mantissa of smaller compute sum x 2 8 = x 2 8 round & truncate normalize = x 2 9
53 fp1 = s1 m1 e1 fp2 = s2 m2 e2 fp1 + fp2 =? denormalize both numbers (restore hidden 1) assume fp1 has largest exponent e1: make e2 equal to e1 and shift decimal point in m2 > m2 compute sum m1 + m2 truncate & round result renormalize result (after checking for special cases)
54 What are the "dangers" of adding 2 FP numbers?
55 Algorithm for adding a Series of FP numbers?
56 How do we Multiply 2 FP Numbers?
57 1.111 x 2 5 x x x 2 5 x x x = x 2 1 after expansion multiply mantissas normalize round & truncate = x 2 1 normalize = 14 add exponents =
58 fp1 = s1 m1 e1 fp2 = s2 m2 e2 fp1 x fp2 =? Test for multiplication by special numbers (0, NaN, ) denormalize both numbers (restore hidden 1) compute product of m1 x m2 compute sum e1 + e2 truncate & round m1 x m2 adjust e1+e2 and normalize.
59 How do we compare two FP numbers?
60 Check sign bits first, the compare as unsigned integers! No unpacking necessary!
61 Programming FP Operations in Assembly
62 Pentium EAX EBX ECX EDX ALU
63 EAX EBX ECX EDX ALU Cannot do FP computation
64
65
66 SP0 SP1 SP2 SP3 SP4 SP5 FLOATING POINT UNIT SP6 SP7
67 Operation: ( )/9.0 SP0 SP1 SP2 SP3 SP4 SP5 FLOATING POINT UNIT SP6 SP7
68 SP0 7 Operation: (7+10)/9 fpush 7 SP1 SP2 SP3 SP4 SP5 SP6 SP7 FLOATING POINT UNIT
69 SP0 SP Operation: (7+10)/9 fpush 7 fpush 10 SP2 SP3 SP4 SP5 SP6 SP7 FLOATING POINT UNIT
70 Operation: (7+10)/9 SP0 SP1 10 fpush 7 fpush 10 fadd SP2 7 SP3 SP4 SP5 FLOATING POINT UNIT SP6 SP7
71 SP0 SP1 17 Operation: (7+10)/9 fpush 7 fpush 10 fadd SP2 SP3 SP4 SP5 SP6 SP7 FLOATING POINT UNIT
72 SP0 SP1 SP Operation: (7+10)/9 fpush 7 fpush 10 fadd fpush 9 SP3 SP4 SP5 SP6 SP7 FLOATING POINT UNIT
73 Operation: (7+10)/9 SP0 fpush 7 SP1 SP fpush 10 fadd fpush 9 fdiv SP3 SP4 SP5 FLOATING POINT UNIT SP6 SP7
74 SP0 SP1 SP2 SP Operation: (7+10)/9 fpush 7 fpush 10 fadd fpush 9 fdiv SP4 SP5 SP6 SP7 FLOATING POINT UNIT
75 The Pentium computes FP expressions using RPN!
76 The Pentium computes FP expressions using RPN! Reverse Polish Notation
77 Nasm Example: z = x+y SECTION.data x dd 1.5 y dd 2.5 z dd 0 ; compute z = x + y SECTION.text fld fld fadd fstp dword [x] dword [y] dword [z]
78 Printing floats in C #include "stdio.h" int main() { float z = e10; printf( "z = %e\n\n", z ); return 0; }
79 Printing floats in C #include "stdio.h" int main() { float z = e10; printf( "z = %e\n\n", z ); return 0; } gcc o printfloat printfloat.c./printfloat z = e+10
80 More code examples here: CSC231_An_Introduction_to_Fixed_and_Floating Point_Numbers#Assembly_Language_Programs
81 THE END!
Floatingpoint Arithmetic. where you sum up the integer to the left of the decimal point and the fraction to the right.
Floatingpoint Arithmetic Reading: pp. 312328 FloatingPoint Representation Nonscientific floating point numbers: A noninteger can be represented as: 2 4 2 3 2 2 2 1 2 0.21 22 23 24 where you sum
More informationName: CMSC 313 Fall 2001 Computer Organization & Assembly Language Programming Exam 1. Question Points I. /34 II. /30 III.
CMSC 313 Fall 2001 Computer Organization & Assembly Language Programming Exam 1 Name: Question Points I. /34 II. /30 III. /36 TOTAL: /100 Instructions: 1. This is a closedbook, closednotes exam. 2. You
More informationmith College Computer Science CSC231  Assembly Week #3 Dominique Thiébaut
mith College Computer Science CSC231  Assembly Week #3 Dominique Thiébaut dthiebaut@smith.edu memory mov add registers hexdump listings number systems Let's Review Last Week's Material section.data
More information15213 Recitation 2: Floating Point
15213 Recitation 2: Floating Point 1 Introduction This handout will introduce and test your knowledge of the floating point representation of real numbers, as defined by the IEEE standard. This information
More informationFloating Point. The World is Not Just Integers. Programming languages support numbers with fraction
1 Floating Point The World is Not Just Integers Programming languages support numbers with fraction Called floatingpoint numbers Examples: 3.14159265 (π) 2.71828 (e) 0.000000001 or 1.0 10 9 (seconds in
More informationFloating Point Arithmetic
Floating Point Arithmetic CS 365 FloatingPoint What can be represented in N bits? Unsigned 0 to 2 N 2s Complement 2 N1 to 2 N11 But, what about? very large numbers? 9,349,398,989,787,762,244,859,087,678
More informationC NUMERIC FORMATS. Overview. IEEE SinglePrecision Floatingpoint Data Format. Figure C0. Table C0. Listing C0.
C NUMERIC FORMATS Figure C. Table C. Listing C. Overview The DSP supports the 32bit singleprecision floatingpoint data format defined in the IEEE Standard 754/854. In addition, the DSP supports an
More informationFloating Point Numbers
Floating Point Numbers Summer 8 Fractional numbers Fractional numbers fixed point Floating point numbers the IEEE 7 floating point standard Floating point operations Rounding modes CMPE Summer 8 Slides
More informationCS101 Introduction to computing Floating Point Numbers
CS101 Introduction to computing Floating Point Numbers A. Sahu and S. V.Rao Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1 Outline Need to floating point number Number representation
More informationModule 2: Computer Arithmetic
Module 2: Computer Arithmetic 1 B O O K : C O M P U T E R O R G A N I Z A T I O N A N D D E S I G N, 3 E D, D A V I D L. P A T T E R S O N A N D J O H N L. H A N N E S S Y, M O R G A N K A U F M A N N
More informationData Representation Floating Point
Data Representation Floating Point CSCI 2400 / ECE 3217: Computer Architecture Instructor: David Ferry Slides adapted from Bryant & O Hallaron s slides via Jason Fritts Today: Floating Point Background:
More informationInf2C  Computer Systems Lecture 2 Data Representation
Inf2C  Computer Systems Lecture 2 Data Representation Boris Grot School of Informatics University of Edinburgh Last lecture Moore s law Types of computer systems Computer components Computer system stack
More informationComputer Architecture and Assembly Language. Practical Session 5
Computer Architecture and Assembly Language Practical Session 5 Addressing Mode  "memory address calculation mode" An addressing mode specifies how to calculate the effective memory address of an operand.
More informationFloating point. Today! IEEE Floating Point Standard! Rounding! Floating Point Operations! Mathematical properties. Next time. !
Floating point Today! IEEE Floating Point Standard! Rounding! Floating Point Operations! Mathematical properties Next time! The machine model Chris Riesbeck, Fall 2011 Checkpoint IEEE Floating point Floating
More informationIT 1204 Section 2.0. Data Representation and Arithmetic. 2009, University of Colombo School of Computing 1
IT 1204 Section 2.0 Data Representation and Arithmetic 2009, University of Colombo School of Computing 1 What is Analog and Digital The interpretation of an analog signal would correspond to a signal whose
More information4 Operations On Data 4.1. Foundations of Computer Science Cengage Learning
4 Operations On Data 4.1 Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: List the three categories of operations performed on data.
More informationNumber Systems and Computer Arithmetic
Number Systems and Computer Arithmetic Counting to four billion two fingers at a time What do all those bits mean now? bits (011011011100010...01) instruction Rformat Iformat... integer data number text
More informationChapter 2 Float Point Arithmetic. Real Numbers in Decimal Notation. Real Numbers in Decimal Notation
Chapter 2 Float Point Arithmetic Topics IEEE Floating Point Standard Fractional Binary Numbers Rounding Floating Point Operations Mathematical properties Real Numbers in Decimal Notation Representation
More informationFloating point. Today. IEEE Floating Point Standard Rounding Floating Point Operations Mathematical properties Next time.
Floating point Today IEEE Floating Point Standard Rounding Floating Point Operations Mathematical properties Next time The machine model Fabián E. Bustamante, Spring 2010 IEEE Floating point Floating point
More informationFloating Point Numbers. Lecture 9 CAP
Floating Point Numbers Lecture 9 CAP 3103 06162014 Review of Numbers Computers are made to deal with numbers What can we represent in N bits? 2 N things, and no more! They could be Unsigned integers:
More informationFloating Point Puzzles The course that gives CMU its Zip! Floating Point Jan 22, IEEE Floating Point. Fractional Binary Numbers.
class04.ppt 15213 The course that gives CMU its Zip! Topics Floating Point Jan 22, 2004 IEEE Floating Point Standard Rounding Floating Point Operations Mathematical properties Floating Point Puzzles For
More informationFigure 81. x87 FPU Execution Environment
Sign 79 78 64 63 R7 Exponent R6 R5 R4 R3 R2 R1 R0 Data Registers Significand 0 15 Control Register 0 47 Last Instruction Pointer 0 Status Register Last Data (Operand) Pointer Tag Register 10 Opcode 0 Figure
More informationComputer Arithmetic Ch 8
Computer Arithmetic Ch 8 ALU Integer Representation Integer Arithmetic FloatingPoint Representation FloatingPoint Arithmetic 1 Arithmetic Logical Unit (ALU) (2) Does all work in CPU (aritmeettislooginen
More informationSystems I. Floating Point. Topics IEEE Floating Point Standard Rounding Floating Point Operations Mathematical properties
Systems I Floating Point Topics IEEE Floating Point Standard Rounding Floating Point Operations Mathematical properties IEEE Floating Point IEEE Standard 754 Established in 1985 as uniform standard for
More informationComputer arithmetics: integers, binary floatingpoint, and decimal floatingpoint
n!= 0 && n == n z+1 == z Computer arithmetics: integers, binary floatingpoint, and decimal floatingpoint v+ww!= v x+1 < x Peter Sestoft 20100216 y!= y p == n && 1/p!= 1/n 1 Computer arithmetics Computer
More information3.5 Floating Point: Overview
3.5 Floating Point: Overview Floating point (FP) numbers Scientific notation Decimal scientific notation Binary scientific notation IEEE 754 FP Standard Floating point representation inside a computer
More informationGPU Floating Point Features
CSE 591: GPU Programming Floating Point Considerations Klaus Mueller Computer Science Department Stony Brook University Objective To understand the fundamentals of floatingpoint representation To know
More informationNumber Systems. Binary Numbers. Appendix. Decimal notation represents numbers as powers of 10, for example
Appendix F Number Systems Binary Numbers Decimal notation represents numbers as powers of 10, for example 1729 1 103 7 102 2 101 9 100 decimal = + + + There is no particular reason for the choice of 10,
More informationComputer Systems Programming. Practice Midterm. Name:
Computer Systems Programming Practice Midterm Name: 1. (4 pts) (K&R Ch 14) What is the output of the following C code? main() { int i = 6; int j = 35; printf( %d %d\n,i++, ++j); i = i >
More informationSystem Programming CISC 360. Floating Point September 16, 2008
System Programming CISC 360 Floating Point September 16, 2008 Topics IEEE Floating Point Standard Rounding Floating Point Operations Mathematical properties Powerpoint Lecture Notes for Computer Systems:
More informationCS429: Computer Organization and Architecture
CS429: Computer Organization and Architecture Dr. Bill Young Department of Computer Sciences University of Texas at Austin Last updated: September 18, 2017 at 12:48 CS429 Slideset 4: 1 Topics of this Slideset
More informationCSC201, SECTION 002, Fall 2000: Homework Assignment #2
1 of 7 11/8/2003 7:34 PM CSC201, SECTION 002, Fall 2000: Homework Assignment #2 DUE DATE Monday, October 2, at the start of class. INSTRUCTIONS FOR PREPARATION Neat, in order, answers easy to find. Staple
More informationDescription Hex M E V smallest value > largest denormalized negative infinity number with hex representation 3BB0 
CSE2421 HOMEWORK #2 DUE DATE: MONDAY 11/5 11:59pm PROBLEM 2.84 Given a floatingpoint format with a kbit exponent and an nbit fraction, write formulas for the exponent E, significand M, the fraction
More informationFloatingPoint Arithmetic
FloatingPoint Arithmetic if ((A + A)  A == A) { SelfDestruct() } Reading: Study Chapter 3. L12 Multiplication 1 Approximating Real Numbers on Computers Thus far, we ve entirely ignored one of the most
More information1.2 Roundoff Errors and Computer Arithmetic
1.2 Roundoff Errors and Computer Arithmetic 1 In a computer model, a memory storage unit word is used to store a number. A word has only a finite number of bits. These facts imply: 1. Only a small set
More information4 Operations On Data 4.1. Foundations of Computer Science Cengage Learning
4 Operations On Data 4.1 Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: List the three categories of operations performed on data.
More informationClasses of Real Numbers 1/2. The Real Line
Classes of Real Numbers All real numbers can be represented by a line: 1/2 π 1 0 1 2 3 4 real numbers The Real Line { integers rational numbers nonintegral fractions irrational numbers Rational numbers
More informationCharacters, Strings, and Floats
Characters, Strings, and Floats CS 350: Computer Organization & Assembler Language Programming 9/6: pp.8,9; 9/28: Activity Q.6 A. Why? We need to represent textual characters in addition to numbers. Floatingpoint
More informationChapter 3 Arithmetic for Computers (Part 2)
Department of Electr rical Eng ineering, Chapter 3 Arithmetic for Computers (Part 2) 王振傑 (ChenChieh Wang) ccwang@mail.ee.ncku.edu.tw ncku edu Depar rtment of Electr rical Eng ineering, FengChia Unive
More informationOn a 64bit CPU. Size/Range vary by CPU model and Word size.
On a 64bit CPU. Size/Range vary by CPU model and Word size. unsigned short x; //range 0 to 65553 signed short x; //range ± 32767 short x; //assumed signed There are (usually) no unsigned floats or doubles.
More informationCS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.
CS 265 Computer Architecture Wei Lu, Ph.D., P.Eng. 1 Part 1: Data Representation Our goal: revisit and reestablish fundamental of mathematics for the computer architecture course Overview: what are bits
More information8/30/2016. In Binary, We Have A Binary Point. ECE 120: Introduction to Computing. FixedPoint Representations Support Fractions
University of Illinois at UrbanaChampaign Dept. of Electrical and Computer Engineering ECE 120: Introduction to Computing Fixed and FloatingPoint Representations In Binary, We Have A Binary Point Let
More informationComputer Systems C S Cynthia Lee
Computer Systems C S 1 0 7 Cynthia Lee 2 Today s Topics LECTURE: Floating point! Real Numbers and Approximation MATH TIME! Some preliminary observations on approximation We know that some noninteger numbers
More information10.1. Unit 10. Signed Representation Systems Binary Arithmetic
0. Unit 0 Signed Representation Systems Binary Arithmetic 0.2 BINARY REPRESENTATION SYSTEMS REVIEW 0.3 Interpreting Binary Strings Given a string of s and 0 s, you need to know the representation system
More informationThe UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Comp 4 Computer Organization Fall 26 Solutions for Problem Set #7 Problem. Bits of FloatingPoint Represent the following in singleprecision IEEE floating
More informationCourse Schedule. CS 221 Computer Architecture. Week 3: Plan. I. Hexadecimals and Character Representations. Hexadecimal Representation
Course Schedule CS 221 Computer Architecture Week 3: Information Representation (2) Fall 2001 W1 Sep 11 Sep 14 Introduction W2 Sep 18 Sep 21 Information Representation (1) (Chapter 3) W3 Sep 25 Sep
More informationComputer arithmetics: integers, binary floatingpoint, and decimal floatingpoint
z+1 == z Computer arithmetics: integers, binary floatingpoint, and decimal floatingpoint Peter Sestoft 20130218** x+1 < x p == n && 1/p!= 1/n 1 Computer arithmetics Computer numbers are cleverly designed,
More informationCO Computer Architecture and Programming Languages CAPL. Lecture 13 & 14
CO20320241 Computer Architecture and Programming Languages CAPL Lecture 13 & 14 Dr. Kinga Lipskoch Fall 2017 Frame Pointer (1) The stack is also used to store variables that are local to function, but
More information1. NUMBER SYSTEMS USED IN COMPUTING: THE BINARY NUMBER SYSTEM
1. NUMBER SYSTEMS USED IN COMPUTING: THE BINARY NUMBER SYSTEM 1.1 Introduction Given that digital logic and memory devices are based on two electrical states (on and off), it is natural to use a number
More informationCS101 Lecture 04: Binary Arithmetic
CS101 Lecture 04: Binary Arithmetic Binary Number Addition Two s complement encoding Briefly: real number representation Aaron Stevens (azs@bu.edu) 25 January 2013 What You ll Learn Today Counting in binary
More informationIEEE754 floatingpoint
IEEE754 floatingpoint Real and floatingpoint numbers Real numbers R form a continuum  Rational numbers are a subset of the reals  Some numbers are irrational, e.g. π Floatingpoint numbers are an
More informationAssembly level Programming. 198:211 Computer Architecture. (recall) Von Neumann Architecture. Simplified hardware view. Lecture 10 Fall 2012
19:211 Computer Architecture Lecture 10 Fall 20 Topics:Chapter 3 Assembly Language 3.2 Register Transfer 3. ALU 3.5 Assembly level Programming We are now familiar with high level programming languages
More informationCS321. Introduction to Numerical Methods
CS31 Introduction to Numerical Methods Lecture 1 Number Representations and Errors Professor Jun Zhang Department of Computer Science University of Kentucky Lexington, KY 40506 0633 August 5, 017 Number
More informationWhat Every Programmer Should Know About FloatingPoint Arithmetic
What Every Programmer Should Know About FloatingPoint Arithmetic Last updated: October 15, 2015 Contents 1 Why don t my numbers add up? 3 2 Basic Answers 3 2.1 Why don t my numbers, like 0.1 + 0.2 add
More informationThe Sign consists of a single bit. If this bit is '1', then the number is negative. If this bit is '0', then the number is positive.
IEEE 754 Standard  Overview Frozen Content Modified by on 13Sep2017 Before discussing the actual WB_FPU  Wishbone Floating Point Unit peripheral in detail, it is worth spending some time to look at
More information2 Computation with FloatingPoint Numbers
2 Computation with FloatingPoint Numbers 2.1 FloatingPoint Representation The notion of real numbers in mathematics is convenient for hand computations and formula manipulations. However, real numbers
More informationCSCI 402: Computer Architectures. Arithmetic for Computers (4) Fengguang Song Department of Computer & Information Science IUPUI.
CSCI 402: Computer Architectures Arithmetic for Computers (4) Fengguang Song Department of Computer & Information Science IUPUI Homework 4 Assigned on Feb 22, Thursday Due Time: 11:59pm, March 5 on Monday
More informationCO Computer Architecture and Programming Languages CAPL. Lecture 15
CO20320241 Computer Architecture and Programming Languages CAPL Lecture 15 Dr. Kinga Lipskoch Fall 2017 How to Compute a Binary Float Decimal fraction: 8.703125 Integral part: 8 1000 Fraction part: 0.703125
More informationWe can study computer architectures by starting with the basic building blocks. Adders, decoders, multiplexors, flipflops, registers,...
COMPUTER ARCHITECTURE II: MICROPROCESSOR PROGRAMMING We can study computer architectures by starting with the basic building blocks Transistors and logic gates To build more complex circuits Adders, decoders,
More informationA complement number system is used to represent positive and negative integers. A complement number system is based on a fixed length representation
Complement Number Systems A complement number system is used to represent positive and negative integers A complement number system is based on a fixed length representation of numbers Pretend that integers
More informationFloating Point Considerations
Chapter 6 Floating Point Considerations In the early days of computing, floating point arithmetic capability was found only in mainframes and supercomputers. Although many microprocessors designed in the
More informationLecture 5. Computer Arithmetic. Ch 9 [Stal10] Integer arithmetic Floatingpoint arithmetic
Lecture 5 Computer Arithmetic Ch 9 [Stal10] Integer arithmetic Floatingpoint arithmetic ALU ALU = Arithmetic Logic Unit (aritmeettislooginen yksikkö) Actually performs operations on data Integer and
More informationScientific Computing. Error Analysis
ECE257 Numerical Methods and Scientific Computing Error Analysis Today s s class: Introduction to error analysis Approximations RoundOff Errors Introduction Error is the difference between the exact solution
More informationSection 1.4 Mathematics on the Computer: Floating Point Arithmetic
Section 1.4 Mathematics on the Computer: Floating Point Arithmetic Key terms Floating point arithmetic IEE Standard Mantissa Exponent Roundoff error Pitfalls of floating point arithmetic Structuring computations
More informationSolving Equations with Inverse Operations
Solving Equations with Inverse Operations Math 97 Supplement LEARNING OBJECTIVES 1. Solve equations by using inverse operations, including squares, square roots, cubes, and cube roots. The Definition of
More informationSigned umbers. Sign/Magnitude otation
Signed umbers So far we have discussed unsigned number representations. In particular, we have looked at the binary number system and shorthand methods in representing binary codes. With m binary digits,
More informationBasic Pentium Instructions. October 18
Basic Pentium Instructions October 18 CSC201 Section 002 Fall, 2000 The EFLAGS Register Bit 11 = Overflow Flag Bit 7 = Sign Flag Bit 6 = Zero Flag Bit 0 = Carry Flag "Sets the flags" means sets OF, ZF,
More informationCSC 8400: Computer Systems. MachineLevel Representation of Programs
CSC 8400: Computer Systems MachineLevel Representation of Programs Towards the Hardware Highlevel language (Java) Highlevel language (C) assembly language machine language (IA32) 1 Compilation Stages
More informationData Representation and Introduction to Visualization
Data Representation and Introduction to Visualization Massimo Ricotti ricotti@astro.umd.edu University of Maryland Data Representation and Introduction to Visualization p.1/18 VISUALIZATION Visualization
More informationMore Programming Constructs  Introduction
More Programming Constructs  Introduction We can now examine some additional programming concepts and constructs Chapter 5 focuses on: internal data representation conversions between one data type and
More informationThe Perils of Floating Point
The Perils of Floating Point by Bruce M. Bush Copyright (c) 1996 Lahey Computer Systems, Inc. Permission to copy is granted with acknowledgement of the source. Many great engineering and scientific advances
More informationCoprocessor Math Processor. Richa Upadhyay Prabhu. NMIMS s MPSTME February 9, 2016
8087 Math Processor Richa Upadhyay Prabhu NMIMS s MPSTME richa.upadhyay@nmims.edu February 9, 2016 Introduction Need of Math Processor: In application where fast calculation is required Also where there
More informationCMSC 313 Lecture 03 Multiplebyte data bigendian vs littleendian sign extension Multiplication and division Floating point formats Character Codes
Multiplebyte data CMSC 313 Lecture 03 bigendian vs littleendian sign extension Multiplication and division Floating point formats Character Codes UMBC, CMSC313, Richard Chang 45 Chapter
More informationComputer Architecture and Assembly Language. Practical Session 3
Computer Architecture and Assembly Language Practical Session 3 Advanced Instructions division DIV r/m  unsigned integer division IDIV r/m  signed integer division Dividend Divisor Quotient Remainder
More informationECE 2020B Fundamentals of Digital Design Spring problems, 6 pages Exam Two 26 February 2014
Instructions: This is a closed book, closed note exam. Calculators are not permitted. If you have a question, raise your hand and I will come to you. Please work the exam in pencil and do not separate
More informationCS , Fall 2001 Exam 1
Andrew login ID: Full Name: CS 15213, Fall 2001 Exam 1 October 9, 2001 Instructions: Make sure that your exam is not missing any sheets, then write your full name and Andrew login ID on the front. Write
More informationSummary: Direct Code Generation
Summary: Direct Code Generation 1 Direct Code Generation Code generation involves the generation of the target representation (object code) from the annotated parse tree (or Abstract Syntactic Tree, AST)
More informationDigital Arithmetic. Digital Arithmetic: Operations and Circuits Dr. Farahmand
Digital Arithmetic Digital Arithmetic: Operations and Circuits Dr. Farahmand Binary Arithmetic Digital circuits are frequently used for arithmetic operations Fundamental arithmetic operations on binary
More informationFundamentals of Programming Session 2
Fundamentals of Programming Session 2 Instructor: Reza EntezariMaleki Email: entezari@ce.sharif.edu 1 Fall 2013 Sharif University of Technology Outlines Programming Language Binary numbers Addition Subtraction
More informationFP_IEEE_DENORM_GET_ Procedure
FP_IEEE_DENORM_GET_ Procedure FP_IEEE_DENORM_GET_ Procedure The FP_IEEE_DENORM_GET_ procedure reads the IEEE floatingpoint denormalization mode. fp_ieee_denorm FP_IEEE_DENORM_GET_ (void); DeNorm The denormalization
More informationl l l l l l l Base 2; each digit is 0 or 1 l Each bit in place i has value 2 i l Binary representation is used in computers
198:211 Computer Architecture Topics: Lecture 8 (W5) Fall 2012 Data representation 2.1 and 2.2 of the book Floating point 2.4 of the book Computer Architecture What do computers do? Manipulate stored information
More informationAssembly basics CS 2XA3. Term I, 2017/18
Assembly basics CS 2XA3 Term I, 2017/18 Outline What is Assembly Language? Assemblers NASM Program structure I/O First program Compiling Linking What is Assembly Language? In a high level language (HLL),
More informationCalculations with Sig Figs
Calculations with Sig Figs When you make calculations using data with a specific level of uncertainty, it is important that you also report your answer with the appropriate level of uncertainty (i.e.,
More informationFloating Point. What can be represented in N bits? 0 to 2N1. 9,349,398,989,787,762,244,859,087, x 1067
MIPS Floating Point Operations Cptr280 Dr Curtis Nelson Floating Point What can be represented in N bits? Unsigned 2 s Complement 0 to 2N12N1 to 2N11 But, what about Very large numbers? 9,349,398,989,787,762,244,859,087,678
More informationANSI C Programming Simple Programs
ANSI C Programming Simple Programs /* This program computes the distance between two points */ #include #include #include main() { /* Declare and initialize variables */ double
More informationFloatingPoint Numbers in Digital Computers
POLYTECHNIC UNIVERSITY Department of Computer and Information Science FloatingPoint Numbers in Digital Computers K. Ming Leung Abstract: We explain how floatingpoint numbers are represented and stored
More informationMidterm Exam Answers Instructor: Randy Shepherd CSCIUA.0201 Spring 2017
Section 1: Multiple choice (select any that apply)  20 points 01. Representing 10 using the 4 byte unsigned integer encoding and using 4 byte two s complements encoding yields the same bit pattern. (a)
More informationC212 Early Evaluation Exam Mon Feb Name: Please provide brief (common sense) justifications with your answers below.
C212 Early Evaluation Exam Mon Feb 10 2014 Name: Please provide brief (common sense) justifications with your answers below. 1. What is the type (and value) of this expression: 5 * (7 + 4 / 2) 2. What
More informationJava provides a rich set of operators to manipulate variables. We can divide all the Java operators into the following groups:
Basic Operators Java provides a rich set of operators to manipulate variables. We can divide all the Java operators into the following groups: Arithmetic Operators Relational Operators Bitwise Operators
More informationBinary representation of integer numbers Operations on bits
Outline Binary representation of integer numbers Operations on bits The Bitwise AND Operator The Bitwise InclusiveOR Operator The Bitwise ExclusiveOR Operator The Ones Complement Operator The Left Shift
More informationLAB 1 Binary Numbers/ Introduction to C. Rajesh Rajamani. ME 4231 Department of Mechanical Engineering University Of Minnesota
LAB 1 Binary Numbers/ Introduction to C Rajesh Rajamani ME 431 Department of Mechanical Engineering University Of Minnesota OVERVIEW What is feedback control? Binary and Hexadecimal Numbers Working with
More informationCS , Spring 2004 Exam 1
Andrew login ID: Full Name: CS 15213, Spring 2004 Exam 1 February 26, 2004 Instructions: Make sure that your exam is not missing any sheets (there should be 15), then write your full name and Andrew login
More information15213/18243, Spring 2011 Exam 1
Andrew login ID: Full Name: Section: 15213/18243, Spring 2011 Exam 1 Thursday, March 3, 2011 (v1) Instructions: Make sure that your exam is not missing any sheets, then write your Andrew login ID, full
More information1010 2?= ?= CS 64 Lecture 2 Data Representation. Decimal Numbers: Base 10. Reading: FLD Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
CS 64 Lecture 2 Data Representation Reading: FLD 1.21.4 Decimal Numbers: Base 10 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Example: 3271 = (3x10 3 ) + (2x10 2 ) + (7x10 1 ) + (1x10 0 ) 1010 10?= 1010 2?= 1
More informationIEEE Floating Point Numbers Overview
COMP 40: Machine Structure and Assembly Language Programming (Fall 2015) IEEE Floating Point Numbers Overview Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah
More informationArithmetic Operations
Arithmetic Operations Arithmetic Operations addition subtraction multiplication division Each of these operations on the integer representations: unsigned two's complement 1 Addition One bit of binary
More informationLogiCORE IP FloatingPoint Operator v6.2
LogiCORE IP FloatingPoint Operator v6.2 Product Guide Table of Contents SECTION I: SUMMARY IP Facts Chapter 1: Overview Unsupported Features..............................................................
More informationEECS 213 Fall 2007 Midterm Exam
Full Name: EECS 213 Fall 2007 Midterm Exam Instructions: Make sure that your exam is not missing any sheets, then write your full name on the front. Write your answers in the space provided below the problem.
More informationCOMPUTER HARDWARE. Instruction Set Architecture
COMPUTER HARDWARE Instruction Set Architecture Overview Computer architecture Operand addressing Addressing architecture Addressing modes Elementary instructions Data transfer instructions Data manipulation
More informationNumeric Variable Storage Pattern
Numeric Variable Storage Pattern Sreekanth Middela Srinivas Vanam Rahul Baddula Percept Pharma Services, Bridgewater, NJ ABSTRACT This paper presents the Storage pattern of Numeric Variables within the
More information