Introduction to Computer Organization


Book Description

This hands-on tutorial is a broad examination of how a modern computer works. Classroom tested for over a decade, it gives readers a firm understanding of how computers do what they do, covering essentials like data storage, logic gates and transistors, data types, the CPU, assembly, and machine code. Introduction to Computer Organization gives programmers a practical understanding of what happens in a computer when you execute your code. You may never have to write x86-64 assembly language or design hardware yourself, but knowing how the hardware and software works will give you greater control and confidence over your coding decisions. We start with high level fundamental concepts like memory organization, binary logic, and data types and then explore how they are implemented at the assembly language level. The goal isn’t to make you an assembly programmer, but to help you comprehend what happens behind the scenes between running your program and seeing “Hello World” displayed on the screen. Classroom-tested for over a decade, this book will demystify topics like: How to translate a high-level language code into assembly language How the operating system manages hardware resources with exceptions and interrupts How data is encoded in memory How hardware switches handle decimal data How program code gets transformed into machine code the computer understands How pieces of hardware like the CPU, input/output, and memory interact to make the entire system work Author Robert Plantz takes a practical approach to the material, providing examples and exercises on every page, without sacrificing technical details. Learning how to think like a computer will help you write better programs, in any language, even if you never look at another line of assembly code again.




Fundamentals of Computer Organization and Design


Book Description

A new advanced textbook/reference providing a comprehensive survey of hardware and software architectural principles and methods of computer systems organization and design. The book is suitable for a first course in computer organization. The style is similar to that of the author's book on assembly language in that it strongly supports self-study by students. This organization facilitates compressed presentation of material. Emphasis is also placed on related concepts to practical designs/chips. Topics: material presentation suitable for self- study; concepts related to practical designs and implementations; extensive examples and figures; details provided on several digital logic simulation packages; free MASM download instructions provided; and end-of-chapter exercises.




Computer Organization and Design RISC-V Edition


Book Description

The new RISC-V Edition of Computer Organization and Design features the RISC-V open source instruction set architecture, the first open source architecture designed to be used in modern computing environments such as cloud computing, mobile devices, and other embedded systems. With the post-PC era now upon us, Computer Organization and Design moves forward to explore this generational change with examples, exercises, and material highlighting the emergence of mobile computing and the Cloud. Updated content featuring tablet computers, Cloud infrastructure, and the x86 (cloud computing) and ARM (mobile computing devices) architectures is included. An online companion Web site provides advanced content for further study, appendices, glossary, references, and recommended reading. - Features RISC-V, the first such architecture designed to be used in modern computing environments, such as cloud computing, mobile devices, and other embedded systems - Includes relevant examples, exercises, and material highlighting the emergence of mobile computing and the cloud







Introduction to Computer Architecture and Organization


Book Description

An introduction to the nature of computer architecture and organization. Presents interesting problems with elegant solutions, with emphasis on the abstract elements of the problems common to all computer design. Addresses the several schools of thought on what constitutes a ``good'' computer architecture, focusing on the current RISC versus non-RISC approaches. Also discusses the downward drift of design sophistication to smaller machines, such as pipelines, caches, and overlapped I/O. Includes many examples of specific machines and the design philosophy behind them.




Computer Organization and Design Fundamentals


Book Description

Computer Organization and Design Fundamentals takes the reader from the basic design principles of the modern digital computer to a top-level examination of its architecture. This book can serve either as a textbook to an introductory course on computer hardware or as the basic text for the aspiring geek who wants to learn about digital design. The material is presented in four parts. The first part describes how computers represent and manipulate numbers. The second part presents the tools used at all levels of binary design. The third part introduces the reader to computer system theory with topics such as memory, caches, hard drives, pipelining, and interrupts. The last part applies these theories through an introduction to the Intel 80x86 architecture and assembly language. The material is presented using practical terms and examples with an aim toward providing anyone who works with computer systems the ability to use them more effectively through a better understanding of their design.




Essentials of Computer Organization and Architecture


Book Description

Updated and revised, The Essentials of Computer Organization and Architecture, Third Edition is a comprehensive resource that addresses all of the necessary organization and architecture topics, yet is appropriate for the one-term course.




Fundamentals of Computer Organization and Architecture


Book Description

This is the first book in the two-volume set offering comprehensive coverage of the field of computer organization and architecture. This book provides complete coverage of the subjects pertaining to introductory courses in computer organization and architecture, including: * Instruction set architecture and design * Assembly language programming * Computer arithmetic * Processing unit design * Memory system design * Input-output design and organization * Pipelining design techniques * Reduced Instruction Set Computers (RISCs) The authors, who share over 15 years of undergraduate and graduate level instruction in computer architecture, provide real world applications, examples of machines, case studies and practical experiences in each chapter.




How Computers Really Work


Book Description

An approachable, hands-on guide to understanding how computers work, from low-level circuits to high-level code. How Computers Really Work is a hands-on guide to the computing ecosystem: everything from circuits to memory and clock signals, machine code, programming languages, operating systems, and the internet. But you won't just read about these concepts, you'll test your knowledge with exercises, and practice what you learn with 41 optional hands-on projects. Build digital circuits, craft a guessing game, convert decimal numbers to binary, examine virtual memory usage, run your own web server, and more. Explore concepts like how to: Think like a software engineer as you use data to describe a real world concept Use Ohm's and Kirchhoff's laws to analyze an electrical circuit Think like a computer as you practice binary addition and execute a program in your mind, step-by-step The book's projects will have you translate your learning into action, as you: Learn how to use a multimeter to measure resistance, current, and voltage Build a half adder to see how logical operations in hardware can be combined to perform useful functions Write a program in assembly language, then examine the resulting machine code Learn to use a debugger, disassemble code, and hack a program to change its behavior without changing the source code Use a port scanner to see which internet ports your computer has open Run your own server and get a solid crash course on how the web works And since a picture is worth a thousand bytes, chapters are filled with detailed diagrams and illustrations to help clarify technical complexities. Requirements: The projects require a variety of hardware - electronics projects need a breadboard, power supply, and various circuit components; software projects are performed on a Raspberry Pi. Appendix B contains a complete list. Even if you skip the projects, the book's major concepts are clearly presented in the main text.