Publisher: Morgan Kaufmann; 2nd edition (August 7, 2012)
Digital Design and Computer Architecture, 2nd Edition
Digital Design and Computer Architecture, 2nd Edition takes a unique and modern approach to digital design. Beginning with digital logic gates and progressing to the design of combinational and sequential circuits, Harris and Harris use these fundamental building blocks as the basis for what follows: the design of an actual MIPS processor. SystemVerilog and VHDL are integrated throughout the text in examples illustrating the methods and techniques for CAD-based circuit design. By the end of this book, readers will be able to build their own microprocessor and will have a top-to-bottom understanding of how it works. Harris and Harris have combined an engaging and humorous writing style with an updated and hands-on approach to digital design.
This second edition has been updated with new content on I/O systems in the context of general purpose processors found in a PC as well as microcontrollers found almost everywhere. The new edition provides practical examples of how to interface with peripherals using RS232, SPI, motor control, interrupts, wireless, and analog-to-digital conversion. High-level descriptions of I/O interfaces found in PCs include USB, SDRAM, WiFi, PCI Express, and others. In addition to expanded and updated material throughout, SystemVerilog is now featured in the programming and code examples (replacing Verilog), alongside VHDL. This new edition also provides additional exercises and a new appendix on C programming to strengthen the connection between programming and processor architecture. Download eBook Free »
Publisher: Morgan Kaufmann; 3rd edition (September 12, 2012)
Computer Animation, 3rd Edition
Includes companion site with contemporary animation examples drawn from research and entertainment, sample animations, and example code
Describes the key mathematical and algorithmic foundations of animation that provide you with a deep understanding and control of technique
Expanded and new coverage of key topics including: fluids and clouds, cloth and clothes, hair, and crowd animation
Explains the algorithms used for path following, hierarchical kinematic modelling, rigid body dynamics, flocking behaviour, particle systems, collision detection, and more
Driven by demand from the entertainment industry for better and more realistic animation, technology continues to evolve and improve. The algorithms and techniques behind this technology are the foundation of this comprehensive book, which is written to teach you the fundamentals of animation programming. In this third edition, the most current techniques are covered along with the theory and high-level computation that have earned the book a reputation as the best technically-oriented animation resource. Key topics such as fluids, hair, and crowd animation have been expanded, and extensive new coverage of clothes and cloth has been added. New material on simulation provides a more diverse look at this important area and more example animations and chapter projects and exercises are included. Additionally, spline coverage has been expanded and new video compression and formats (e.g., iTunes) are covered. Download eBook Free »
Publisher: Morgan Kaufmann; 2nd edition (February 21, 2011)
Engineering a Compiler, 2nd Edition
In-depth treatment of algorithms and techniques used in the front end of a modern compiler
Focus on code optimization and code generation, the primary areas of recent research and development
Improvements in presentation including conceptual overviews for each chapter, summaries and review questions for sections, and prominent placement of definitions for new terms
Examples drawn from several different programming languages
Finally, they must understand the techniques of scanning, parsing, and semantic elaboration well enough to build or modify a front end. Our goal for the second edition of Engineering a Compiler, 2nd Edition has been to create a text and a course that exposes students to the critical issues in modern compilers and provides them with the background to tackle those problems. We have retained, from the first edition, the basic balance of material. Front ends are commodity components; they can be purchased from a reliable vendor or adapted from one of the many open-source systems. At the same time, optimizers and code generators are custom-crafted for particular processors and, sometimes, for individual models, because performance relies so heavily on specific low-level details of the generated code. These facts affect the way that we build compilers today; they should also affect the way that we teach compiler construction. Download eBook Free »
Publisher: Morgan Kaufmann; 1st edition (January 21, 2011)
An Introduction to Parallel Programming
Author Peter Pacheco uses a tutorial approach to show students how to develop effective parallel programs with MPI, Pthreads, and OpenMP. The first undergraduate text to directly address compiling and running parallel programs on the new multi-core and cluster architecture,An Introduction to Parallel Programming explains how to design, debug, and evaluate the performance of distributed and shared-memory programs. User-friendly exercises teach students how to compile, run and modify example programs.
Takes a tutorial approach, starting with small programming examples and building progressively to more challenging examples
Focuses on designing, debugging and evaluating the performance of distributed and shared-memory programs
Explains how to develop parallel programs using MPI, Pthreads, and OpenMP programming models
Author Peter Pacheco uses a tutorial approach to show students how to develop effective parallel programs with MPI, Pthreads, and OpenMP. The first undergraduate text to directly address compiling and running parallel programs on the new multi-core and cluster architecture,An Introduction to Parallel Programming explains how to design, debug, and evaluate the performance of distributed and shared-memory programs. User-friendly exercises teach students how to compile, run and modify example programs. Download eBook Free »
Learn how to dynamically adjust your living environment with detailed step-by-step examples
Discover how you can utilize the combined power of the Raspberry Pi and Arduino for your own projects
Revolutionize the way you interact with your home on a daily basis
Raspberry Pi Home Automation with Arduino
Assuming no prior knowledge, our detailed practical examples will guide you through building hardware and software solutions using the Raspberry Pi and Arduino. You will learn how you can use thermistors and relays to keep cool and stay in the shade whilst also utilizing electrical motors and photoresistors. These meticulously designed tutorials will form the basis of automating your entire home and getting you started with dozens of potential projects.
Low-cost and high-performing, with a massively diverse range of uses and applications, the Raspberry Pi is set to revolutionize the way we think about computing and programming. By combining the Raspberry Pi with an Arduino board you’ll be able to revolutionize the way you interact with your home and become part of a rapidly growing group of hobbyists and enthusiasts. Download eBook Free »
Arduino Adventures: Escape from Gemini Station provides a fun introduction to the Arduino microcontroller by putting you (the reader) into the action of a science fiction adventure story. You’ll find yourself following along as Cade and Elle explore Gemini Station an orbiting museum dedicated to preserving and sharing technology throughout the centuries.
Trouble ensues. The station is evacuated, including Cade and Elle’s class that was visiting the station on a field trip. Cade and Elle don’t make it aboard their shuttle and are trapped on the station along with a friendly artificial intelligence named Andrew who wants to help them get off the damaged station. Using some old hardware, a laptop, and some toolboxes full of electronics parts, you will follow along and build eight gizmos with Cade and Elle that will help them escape from Gemini Station.
The hardware is Arduino. Each new challenge opens a new area of Arduino and basic electronics knowledge. You’ll be taken incrementally from a simple task such as turning on a light through to a complex combination of microcontroller, electronic components, and software programming. By the end of the book you’ll be well on your way towards being able to create and implement any sort of electronically controlled device you can imagine, using the stunningly popular Arduino microcontroller. Download eBook Free »