Computers are, fundamentally, number manipulators. Therefore, developers, engineers, and scientists must understand how computers represent and operate on numbers. The revised and updated third edition of this unique textbook/reference details the variety of number formats used by computers, thereby helping to ground readers in what can and cannot be represented accurately, especially by floating-point numbers. The book's first part details standard representations of integers and floating-point numbers. The second explores other number representations, including the wide variety recently developed to support artificial intelligence (AI) and its demand for efficiency in representation to accommodate the ever-expanding scope of neural network models. Chapters describe each format, with examples in code (Python and C) and exercises. This new edition includes three new chapters on posits, AI number formats, and a collaborative experiment with an AI to generate novel number formats. Topics and features: Explores how computers use numbers to complete operations Adds new chapters on posits and AI number formats Includes exercises and examples that are code snippets in C or Python Implements and tests new AI-designed number formats (as designed by GPT-4) Provides thorough grounding on what can and cannot be represented accurately A textbook eminently suitable for undergraduates in computer science, the work also will appeal to software developers, engineers, scientists, AI experts, and anyone who programs for fun.
Dr. Ronald T. Kneusel, a senior data scientist with L3Harris (Melbourne, FL, USA), is also the author of the Springer book, Random Numbers and Computers.