Arithmetic and Logic in Computer Systems


Book Description

Arithmetic and Logic in Computer Systems provides a useful guide to a fundamental subject of computer science and engineering. Algorithms for performing operations like addition, subtraction, multiplication, and division in digital computer systems are presented, with the goal of explaining the concepts behind the algorithms, rather than addressing any direct applications. Alternative methods are examined, and explanations are supplied of the fundamental materials and reasoning behind theories and examples. No other current books deal with this subject, and the author is a leading authority in the field of computer arithmetic. The text introduces the Conventional Radix Number System and the Signed-Digit Number System, as well as Residue Number System and Logarithmic Number System. This book serves as an essential, up-to-date guide for students of electrical engineering and computer and mathematical sciences, as well as practicing engineers and computer scientists involved in the design, application, and development of computer arithmetic units.




The Elements of Computing Systems


Book Description

This title gives students an integrated and rigorous picture of applied computer science, as it comes to play in the construction of a simple yet powerful computer system.




Advanced Binary for Programming & Computer Science


Book Description

This book explains how the binary works and how it is used by computers to represent information including positive and negative integers, characters and real numbers. It explains the logical and bitwise operations used to manipulate information and perform arithmetic. We also briefly look at how computers store this information in memory and secondary storage, and how it can be transmitted between computers. Topics covered include: INTRODUCING NUMBER BASES AND BINARY CONVERTING FROM BINARY TO DENARY AND VICE-VERSA How to Convert a Binary Number to Denary How to Convert a Denary Number to Binary HOW COMPUTERS GROUP BINARY DIGITS A Closer Look at Bytes A Closer Look at Words * Word alignment, word alignment and packing, byte ordering and endianness Addresses BOOLEAN OPERATIONS AND LOGIC GATES Fundamentals of Boolean Algebra * NOT, AND, OR, XOR, NAND, NOR, NXOR Combining Logic Gates * NOT, AND, OR, XOR, NOR using NAND logic Logical Versus Bitwise Operations Using Bitwise Operations to Set, Clear, Flip or Test Bits * Setting bits, inverting bits, clearing bits, testing bits ADDING AND SUBTRACTING IN BINARY Adding Binary Integers * The column addition method of adding denary numbers and adding binary numbers, implementing binary addition using logic gates Subtracting Binary Integers * The column subtraction methods of subtracting denary numbers and subtracting binary numbers, implementing binary subtraction using logic gates SHIFT OPERATIONS Left Shift Right Shift Circular Shifts MULTIPLICATION AND DIVISION IN BINARY Multiplication * Multiplying by a power of 2, column multiplication, Russian peasant multiplication algorithm, multiplication in hardware Division * Dividing by a power of 2, denary long division, binary long division, algorithm for binary long division, division in hardware REPRESENTING CHARACTERS AND STRINGS OF CHARACTERS Representing Individual Characters * ASCII, extended ASCIIs, BCDIC and other early character encodings, EBCDIC, Unicode Representing Strings of Characters * Terminated strings, length-prefixed strings, other string representations REPRESENTING TEXT AND GRAPHICS ON SCREEN Text Mode Displays Bitmap Displays PARITY CHECKING What is a Parity Bit Even and Odd Parity Advantages, Disadvantages and Limitations of Using Parity Checking Parity's Use in RAID Storage Devices Unused Parity Bits SIGNED INTEGERS Offset Binary Signed Magnitude Representation One's Complement Two's Complement Other Representations of Signed Numbers * Base -2, signed-digit representation REAL NUMBERS Fixed Point Representation Floating Point Representation Rational Data Type Logarithmic Number Systems DENARY ENCODINGS AND DECIMAL DATA TYPES Why Use Denary Representations of Real Numbers? Binary Encodings of Denary * Serial decimal, two-out-of-five, bi-quinary, character-based encodings of denary, binary-Coded Decimal (BCD), Chen-Ho Encoding, Densely Packed Decimal (DPD) and excess-3 Decimal Data Types * Which numbers can be exactly represented in fixed and floating point? * How inexact? * Issues with inexact representation * Decimal representation DATA STRUCTURES Structs Arrays Linked Lists and More Complex Structures * Limitations of arrays, introducing linked lists, singly and doubly linked lists, more complex data structures TYPES OF COMPUTER MEMORY Magnetic-Core Memory and Core Rope Memory RAM * DRAM and SRAM ROM * Mask-programmed ROM, PROM, EPROM, EEPROM, Flash memory SECONDARY STORAGE Sequential Storage * Punched tape, magnetic tape Random Access Storage * Magnetic disk, optical disk, solid state drives, flash memory and cloud Storage MEASURING MEMORY AND STORAGE DIGITAL COMMUNICATIONS Serial Communication Parallel Communication MEASURING TRANSFER RATES Baud




Computer Systems: An Embedded Approach


Book Description

Incorporate embedded computing technology in projects and devices of all sizesThis comprehensive engineering textbook lays out foundational computer architecture principles and teaches, step by step, how to apply those concepts in cutting-edge embedded applications. The book includes everything you need to know about embedded computing—from fundamentals and processor internals to networking and connectivity.Computer Systems: An Embedded Approach begins by thoroughly explaining constituent hardware components, including processors, storage devices, and accelerators. From there, the book shows how operating systems work and how they provide a layer of services between hardware and software. You will get coverage of foundational networking, pervasive computing concepts, and the Internet of Things (IoT). The book concludes with a look to the future of embedded computing systems.•This single resource takes readers right up to being ready to learn programming•Covers code aspects from the IEEE, POSIX, and OSI models •Written by a recognized academic and experienced author




Digital Arithmetic


Book Description

The authoritative reference on the theory and design practice of computer arithmetic.




Foundations of Logic and Mathematics


Book Description

This modern introduction to the foundations of logic and mathematics not only takes theory into account, but also treats in some detail applications that have a substantial impact on everyday life (loans and mortgages, bar codes, public-key cryptography). A first college-level introduction to logic, proofs, sets, number theory, and graph theory, and an excellent self-study reference and resource for instructors.




Logic for Computer Scientists


Book Description

This book introduces the notions and methods of formal logic from a computer science standpoint, covering propositional logic, predicate logic, and foundations of logic programming. The classic text is replete with illustrative examples and exercises. It presents applications and themes of computer science research such as resolution, automated deduction, and logic programming in a rigorous but readable way. The style and scope of the work, rounded out by the inclusion of exercises, make this an excellent textbook for an advanced undergraduate course in logic for computer scientists.




Computer Arithmetic


Book Description

The subject of this book is the analysis and design of digital devices that implement computer arithmetic. The book's presentation of high-level detail, descriptions, formalisms and design principles means that it can support many research activities in this field, with an emphasis on bridging the gap between algorithm optimization and hardware implementation. The author provides a unified view linking the domains of digital design and arithmetic algorithms, based on original formalisms and hardware description languages. A feature of the book is the large number of examples and the implementation details provided. While the author does not avoid high-level details, providing for example gate-level designs for all matrix/combinational arithmetic structures. The book is suitable for researchers and students engaged with hardware design in computer science and engineering. A feature of the book is the large number of examples and the implementation details provided. While the author does not avoid high-level details, providing for example gate-level designs for all matrix/combinational arithmetic structures. The book is suitable for researchers and students engaged with hardware design in computer science and engineering.




Synthesis of Arithmetic Circuits


Book Description

A new approach to the study of arithmetic circuits In Synthesis of Arithmetic Circuits: FPGA, ASIC and Embedded Systems, the authors take a novel approach of presenting methods and examples for the synthesis of arithmetic circuits that better reflects the needs of today's computer system designers and engineers. Unlike other publications that limit discussion to arithmetic units for general-purpose computers, this text features a practical focus on embedded systems. Following an introductory chapter, the publication is divided into two parts. The first part, Mathematical Aspects and Algorithms, includes mathematical background, number representation, addition and subtraction, multiplication, division, other arithmetic operations, and operations in finite fields. The second part, Synthesis of Arithmetic Circuits, includes hardware platforms, general principles of synthesis, adders and subtractors, multipliers, dividers, and other arithmetic primitives. In addition, the publication distinguishes itself with: * A separate treatment of algorithms and circuits-a more useful presentation for both software and hardware implementations * Complete executable and synthesizable VHDL models available on the book's companion Web site, allowing readers to generate synthesizable descriptions * Proposed FPGA implementation examples, namely synthesizable low-level VHDL models for the Spartan II and Virtex families * Two chapters dedicated to finite field operations This publication is a must-have resource for students in computer science and embedded system designers, engineers, and researchers in the field of hardware and software computer system design and development. An Instructor Support FTP site is available from the Wiley editorial department.




Discrete Mathematics Using a Computer


Book Description

Computer science abounds with applications of discrete mathematics, yet s- dents of computer science often study discrete mathematics in the context of purely mathematical applications. They have to ?gure out for themselves how to apply the ideas of discrete mathematics to computing problems. It is not easy. Most students fail to experience broad success in this enterprise, which is not surprising, since many of the most important advances in science and engineeringhavebeen, precisely, applicationsofmathematicstospeci?cscience and engineering problems. Tobesure,mostdiscretemathtextbooksincorporatesomeaspectsapplying discrete math to computing, but it usually takes the form of asking students to write programs to compute the number of three-ball combinations there are in a set of ten balls or, at best, to implement a graph algorithm. Few texts ask students to use mathematical logic to analyze properties of digital circuits or computer programs or to apply the set theoretic model of functions to understand higher-order operations. A major aim of this text is to integrate, tightly, the study of discrete mathematics with the study of central problems of computer science.