Numbers and Computers
معرفی کتاب «Numbers and Computers» نوشتهٔ Ronald T. Kneusel (auth.)، منتشرشده توسط نشر Springer International Publishing : Imprint: Springer در سال 2015. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است. «Numbers and Computers» در دستهٔ بدون دستهبندی قرار دارد.
"This is a book about numbers and how those numbers are represented in and operated on by computers. It is crucial that developers understand this area because the numerical operations allowed by computers, and the limitations of those operations, especially in the area of floating point math, affect virtually everything people try to do with computers. This book aims to fill this gap by exploring, in sufficient but not overwhelming detail, just what it is that computers do with numbers. Divided into two parts, the first deals with standard representations of integers and floating point numbers, while the second details several other number representations. Each chapter ends with exercises to review the key points. Topics covered include interval arithmetic, fixed-point numbers, floating point numbers, big integers and rational arithmetic. This book is for anyone who develops software including software engineerings, scientists, computer science students, engineering students and anyone who programs for fun." -- Publisher's website Preface 8 Who Should Read This Book 8 How to Use This Book 9 Acknowledgments 9 Contents 10 Part I Standard Representations 13 1 Number Systems 14 1.1 Representing Numbers 14 1.2 The Big Three (and One Old Guy) 19 1.3 Converting Between Number Bases 21 1.4 Chapter Summary 27 Exercises 27 References 27 2 Integers 29 2.1 Bits, Nibbles, Bytes, and Words 29 2.2 Unsigned Integers 31 2.2.1 Representation 32 2.2.2 Storage in Memory: Endianness 32 2.3 Operations on Unsigned Integers 35 2.3.1 Bitwise Logical Operations 35 2.3.2 Testing, Setting, Clearing, and Toggling Bits 40 2.3.3 Shifts and Rotates 43 2.3.4 Comparisons 47 2.3.5 Arithmetic 51 2.3.6 Square Roots 62 2.4 What About Negative Integers? 63 2.4.1 Sign-Magnitude 64 2.4.2 One's Complement 64 2.4.3 Two's Complement 65 2.5 Operations on Signed Integers 66 2.5.1 Comparison 66 2.5.2 Arithmetic 67 2.6 Binary-Coded Decimal 76 2.6.1 Introduction 76 2.6.2 Arithmetic with BCD 78 2.6.3 Conversion Routines 79 2.7 Chapter Summary 82 Exercises 83 References 84 3 Floating Point 85 3.1 Floating-Point Numbers 85 3.2 An Exceedingly Brief History of Floating-Point Numbers 88 3.3 Comparing Floating-Point Representations 90 3.4 IEEE 754 Floating-Point Representations 93 3.5 Rounding Floating-Point Numbers (IEEE 754) 99 3.6 Comparing Floating-Point Numbers (IEEE 754) 103 3.7 Basic Arithmetic (IEEE 754) 105 3.8 Handling Exceptions (IEEE 754) 108 3.9 Floating-Point Hardware (IEEE 754) 111 3.10 The Elephant in the Living Room (Pitfalls of Floating Point) 113 3.11 Chapter Summary 119 Exercises 119 References 121 Part II Other Representations 122 4 Big Integers and Rational Arithmetic 123 4.1 What is a Big Integer? 123 4.2 Representing Big Integers 124 4.3 Arithmetic with Big Integers 130 4.4 Alternative Multiplication and Division Routines 142 4.5 Implementations 151 4.6 Rational Arithmetic with Big Integers 154 4.7 When to Use Big Integers and Rational Arithmetic 160 4.8 Chapter Summary 162 Exercises 163 References 164 5 Fixed-Point Numbers 165 5.1 Representation (Q Notation) 165 5.2 Arithmetic with Fixed-Point Numbers 170 5.3 Trigonometric and Other Functions 175 5.4 When to Use Fixed-Point Numbers 185 5.5 Chapter Summary 185 Exercises 186 References 187 6 Decimal Floating Point 188 6.1 What Is Decimal Floating-Point? 188 6.2 The IEEE 754-2008 Decimal Floating-Point Format 189 6.3 Decimal Floating-Point in Software 196 6.4 Thoughts on Decimal Floating-Point 205 6.5 Chapter Summary 206 Exercises 206 References 206 7 Interval Arithmetic 207 7.1 Defining Intervals 207 7.2 Basic Operations 209 7.3 Functions and Intervals 223 7.4 Implementations 228 7.5 Thoughts on Interval Arithmetic 232 7.6 Chapter Summary 233 Exercises 233 References 233 Index 235 This is a book about numbers and how those numbers are represented in and operated on by computers. It is crucial that developers understand this area because the numerical operations allowed by computers, and the limitations of those operations, especially in the area of floating point math, affect virtually everything people try to do with computers. This book aims to fill this gap by exploring, in sufficient but not overwhelming detail, just what it is that computers do with numbers. Divided into two parts, the first deals with standard representations of integers and floating point numbers, while the second examines several other number representations.Details are explained thoroughly, with clarity and specificity.Each chapter ends with a summary, recommendations, carefully selected references, and exercises to review the key points. Topics covered include interval arithmetic, fixed-point numbers, big integers and rational arithmetic. This new edition has three new Pitfalls of Floating-Point Numbers (and How to Avoid Them), Arbitrary Precision Floating Point, and Other Number Systems. This book is for anyone who develops software including software engineers, scientists, computer science students, engineering students and anyone who programs for fun. Front Matter....Pages i-xi Front Matter....Pages 1-1 Number Systems....Pages 3-17 Integers....Pages 19-74 Floating Point....Pages 75-111 Front Matter....Pages 113-113 Big Integers and Rational Arithmetic....Pages 115-156 Fixed-Point Numbers....Pages 157-179 Decimal Floating Point....Pages 181-199 Interval Arithmetic....Pages 201-228 Back Matter....Pages 229-231
دانلود کتاب Numbers and Computers