Microprocessors and Microcomputers: Hardware and Software / Edition 6 available in Hardcover, Paperback
![Microprocessors and Microcomputers: Hardware and Software / Edition 6](http://img.images-bn.com/static/redesign/srcs/images/grey-box.png?v11.9.4)
Microprocessors and Microcomputers: Hardware and Software / Edition 6
![Microprocessors and Microcomputers: Hardware and Software / Edition 6](http://img.images-bn.com/static/redesign/srcs/images/grey-box.png?v11.9.4)
Microprocessors and Microcomputers: Hardware and Software / Edition 6
Buy New
$262.60Buy Used
$194.08-
SHIP THIS ITEM— This Item is Not Available
-
PICK UP IN STORECheck Availability at Nearby Stores
Available within 2 business hours
This Item is Not Available
-
SHIP THIS ITEM
Temporarily Out of Stock Online
Please check back later for updated availability.
This Item is Not Available
Overview
Product Details
ISBN-13: | 2900130609044 |
---|---|
Publisher: | Pearson |
Publication date: | 03/08/2002 |
Edition description: | REV |
Pages: | 612 |
Product dimensions: | 6.00(w) x 1.25(h) x 9.00(d) |
Table of Contents
1. | Number Systems and Codes | 1 |
1.1 | Digital Number Systems | 2 |
1.2 | Codes | 11 |
1.3 | Binary Arithmetic | 15 |
1.4 | Addition Using Signed Numbers | 19 |
1.5 | Subtraction in the 2's-Complement System | 21 |
1.6 | Multiplication of Binary Numbers | 22 |
1.7 | Binary Division | 23 |
1.8 | Hexadecimal Arithmetic | 23 |
1.9 | Floating-Point Numbers | 26 |
1.10 | Motorola 68HC11 Floating-Point Format | 30 |
Glossary | 31 | |
Questions and Problems | 32 | |
2. | Digital Circuits | 35 |
2.1 | Parallel and Serial Transmission | 36 |
2.2 | Logic Gates | 37 |
2.3 | Tri-State (Three-State) Logic | 39 |
2.4 | Flip-Flops | 40 |
2.5 | Clock Signals | 42 |
2.6 | Clocked Flip-Flops | 43 |
2.7 | Synchronous and Asynchronous FF Inputs | 45 |
2.8 | Setup and Hold Times | 46 |
2.9 | FF Registers | 47 |
2.10 | IC Registers | 50 |
2.11 | Data Busing | 52 |
2.12 | Data Bus Operation | 54 |
2.13 | Decoders | 62 |
2.14 | Encoders | 64 |
2.15 | Multiplexers (Data Selectors) | 65 |
2.16 | Arithmetic Circuits | 66 |
2.17 | Troubleshooting Digital Systems | 67 |
2.18 | Internal Digital IC Faults | 68 |
2.19 | External Faults | 70 |
2.20 | Common Test Equipment Used in the Troubleshooting of Digital Systems | 72 |
Glossary | 75 | |
Questions and Problems | 78 | |
3. | Memory Devices | 81 |
3.1 | Memory Terminology | 83 |
3.2 | General Memory Operation | 86 |
3.3 | Read-Only Memories | 87 |
3.4 | ROM Architecture | 89 |
3.5 | ROM Timing | 92 |
3.6 | Types of ROM | 93 |
3.7 | Flash Memory | 101 |
3.8 | ROM Applications | 105 |
3.9 | Semiconductor RAMs | 107 |
3.10 | RAM Architecture | 108 |
3.11 | Static RAM | 111 |
3.12 | Dynamic RAM | 115 |
3.13 | Dynamic RAM Structure and Operation | 115 |
3.14 | DRAM Read/Write Cycles | 121 |
3.15 | DRAM Refreshing | 123 |
3.16 | Expanding Word Size and Capacity | 124 |
Glossary | 132 | |
Questions and Problems | 134 | |
4. | Introduction to Computers | 139 |
4.1 | What Can Computers Do? | 140 |
4.2 | How Do Computers Think? | 143 |
4.3 | How Many Kinds of Computers Are There? | 145 |
4.4 | Basic Computer Structure | 146 |
4.5 | Microprocessors | 150 |
4.6 | Computer Words | 150 |
4.7 | Binary Data Words | 150 |
4.8 | Coded Data Words | 152 |
4.9 | Instruction Words | 153 |
4.10 | The 68HC11 MPU--A Simplified Version | 159 |
4.11 | Executing a Program | 162 |
4.12 | Jump and Branch Instructions | 167 |
4.13 | Hardware, Software, and Firmware | 169 |
4.14 | Programming Languages--Machine Language | 170 |
4.15 | Assembly Language | 171 |
4.16 | High-Level Languages | 174 |
4.17 | Flowcharts | 176 |
Glossary | 178 | |
Questions and Problems | 181 | |
5. | Microcomputer Structure and Operation | 187 |
5.1 | Microcomputer Elements | 188 |
5.2 | Why [mu]Ps and [mu]Cs? | 189 |
5.3 | Microcomputer Architecture | 191 |
5.4 | Read and Write Timing | 197 |
5.5 | Bus Activity During Program Execution | 202 |
5.6 | MPU Address Space Allocation | 205 |
5.7 | Memory Modules | 211 |
5.8 | Address Decoding | 211 |
5.9 | Complete Microcomputer Decoding Example | 212 |
5.10 | Buffering the MPU Buses | 223 |
5.11 | Memory-Mapped and Isolated I/O | 225 |
5.12 | Troubleshooting Case Study | 226 |
Glossary | 229 | |
Questions and Problems | 230 | |
6. | The Microprocessor: Heart of the Microcomputer | 237 |
6.1 | 68HC11 MPU--More Complete Version | 238 |
6.2 | Timing and Control Section | 240 |
6.3 | Register Section | 243 |
6.4 | Arithmetic/Logic Unit | 255 |
6.5 | Microprocessors--Categorized by ALU Size | 262 |
6.6 | Microprocessors--Two Directions | 262 |
Glossary | 264 | |
Questions and Problems | 266 | |
7. | Programming the 68HC11 MPU | 271 |
7.1 | 68HC11 MPU Programming Model | 272 |
7.2 | 68HC11 MPU Address Modes | 276 |
7.3 | The 68HC11 MPU Instruction Set | 286 |
7.4 | Instruction Descriptions | 289 |
7.5 | Program Listing Format | 291 |
7.6 | Instruction Classifications | 292 |
7.7 | CCR Instructions | 293 |
7.8 | Register-to-Memory Transfer Instructions | 293 |
7.9 | Register-to-Register Transfer Instructions | 295 |
7.10 | Arithmetic Instructions | 297 |
7.11 | Logical Instructions | 307 |
7.12 | Shift and Rotate Instructions | 311 |
7.13 | Data-Altering Instructions | 316 |
7.14 | Jump Instructions | 320 |
7.15 | Conditional Branching | 321 |
7.16 | 68HC11 Conditional Branch Instructions | 326 |
7.17 | Compare Instructions | 332 |
7.18 | BIT and TST Instructions | 336 |
7.19 | Subroutines | 337 |
7.20 | Interrupt Handling Instructions | 341 |
7.21 | Applications Using Indexed Addressing | 341 |
7.22 | The No-Operation (NOP) and STOP Instructions | 347 |
7.23 | Program-Controlled Timing Intervals (Delays) | 348 |
7.24 | Time-Delay Subroutines | 354 |
7.25 | The Timer System of the 68HC11 MCU | 357 |
7.26 | The Software Development Process | 362 |
Glossary | 366 | |
Questions and Problems | 367 | |
8. | Input/Output Modes | 382 |
8.1 | Some Basic Terms | 383 |
8.2 | Some Examples of I/O | 384 |
8.3 | Input/Output Alternatives | 385 |
8.4 | MPU-Initiated--Unconditional I/O Transfer | 386 |
8.5 | MPU-Initiated--Conditional (Polled) I/O Transfer | 390 |
8.6 | The 68HC11 MCU Block Diagram | 396 |
8.7 | Port E of the 68HC11 MCU--A/D Converter | 397 |
8.8 | Device-Initiated I/O Transfer--Interrupts | 403 |
8.9 | Return Address | 405 |
8.10 | Disabling the Interrupt | 407 |
8.11 | Types of Interrupt Inputs | 407 |
8.12 | Address of an ISR--Interrupt Vectors | 412 |
8.13 | Interrupting an ISR | 413 |
8.14 | Multiple Interrupts | 415 |
8.15 | Port A of the 68HC11 MCU | 420 |
8.16 | Direct Memory Access (DMA) I/O Transfer | 433 |
8.17 | Troubleshooting Case Study | 437 |
Glossary | 439 | |
Questions and Problems | 442 | |
9. | Input/Output Interfacing | 449 |
9.1 | Practical Interface Considerations | 450 |
9.2 | Asynchronous Serial Data Communication | 456 |
9.3 | Parallel/Serial Interface--The UART | 460 |
9.4 | Motorola 6850 UART (ACIA) | 464 |
9.5 | Interfacing the 6850 to the 68HC11 MPU | 469 |
9.6 | Port D of the 68HC11 MCU--Serial Communications Interface (SCI) | 476 |
9.7 | Synchronous Serial Data Communication | 484 |
9.8 | EIA RS-232-C Standard | 486 |
9.9 | Introduction to Modems | 488 |
9.10 | Parallel I/O Interface Chips | 492 |
9.11 | Keyboard Input Devices | 498 |
9.12 | Video Display Terminals (VDTs) | 506 |
9.13 | Troubleshooting Case Study | 512 |
Glossary | 515 | |
Questions and Problems | 517 | |
Appendix A | ||
Complete 68HC11 MCU Instruction Set | 525 | |
Opcode Vs. Instruction Cross Reference | 584 | |
Opcode Map Pages | 592 | |
Appendix B | The 68HC11 MCU Block Diagram | 594 |
Appendix C | The 68HC11 MCU Register and Control Bit Assignments | 596 |
Answers to Selected Problems | 599 | |
Index | 604 |
Preface
This book was written to provide a comprehensible introduction to microprocessors and microcomputers for a broad range of readers. It can serve as a textbook in electronic technology, computer technology, and computer science programs from the vocational school to four-year college level. It can also be used by computer hobbyists as well as practicing technicians and engineers. A significant portion of the text requires a basic knowledge of digital principles and circuits. For this reason, a comprehensive review of this material is presented in the first three chapters to help those readers who have only a minimal background or who have been away from the field for a while. It is, however, worth noting that in several sections of Chapter 8, the topic of A/D conversion is addressed. For a better understanding of the text in these sections, elementary knowledge of Analog-to-Digital Converters (ADCs) is required.
The major philosophy that has been followed in this book is that the principles and techniques of microprocessors and microprocessor-based systems are the most important concepts to understand, and it is not necessary to survey the whole field of available microprocessors and microprocessor applications. We believe that the best pedagogical approach is to use a currently popular, powerful, yet easy-to-understand microprocessor chip as the vehicle for teaching these concepts. We also believe that since 8-bit microprocessors are simple and easy to understand, this makes them an appropriate choice for an introductory textbook. As such, we have chosen to use the 68HC11 microprocessor as that vehicle. The 68HC11 is one of the most powerful and flexible 8-bit microprocessors in general use, and it contains all of the elements and features that need to be part of an introduction to microprocessors and microprocessor applications. Everything the reader learns and understands using this representative device can be readily transferred to other microprocessors and applications, including the more complex 16-bit and 32-bit devices.
This sixth edition retains all of the valuable learning aids of the previous editions, including (1) extensive use of clearly explained illustrative examples to provide immediate reinforcement; (2) clear, uncluttered diagrams to enhance the understanding of the written material; (3) liberal use of flowcharts; (4) extensive coverage of material on troubleshooting digital systems, internal and external IC faults, and test equipment used to troubleshoot digital systems; (5) several Troubleshooting Case Studies covering 1/O interfacing circuits and RAM decoding logic in a 68HC 11-based circuit; (6) glossaries of important terms at the end of each chapter for easy review of chapter contents; (7) over 470 end-of-chapter questions and problems of varied complexity; (8) a comprehensive index with certain page numbers in boldface type to indicate end-of-chapter glossary definitions; and (9) an extensive appendix containing a detailed description of each of the 68HC 11's available instructions as well as a complete Op-Code vs. Instruction Cross Reference.
The major enhancements to this edition are the inclusion of material on floating point numbers and the use of additional pictures, illustrations, and exercises its the explanation of certain concepts. This includes the following:
- Chapter 1. Addition of material on floating-point numbers and Motorola 68HC11 Floating-Point Format.
- Chapters 7-9. Use of the industry standard of one instruction per line when writing assembly language programs.
- Chapter 7. Inclusion of illustrative aids and step-by-step analysis to explain several addressing modes of the 68HC 11 microcontroller.
- All Chapters. Significant increase in the number of end-of-chapter questions, problems, and troubleshooting exercises.
- Expansion of Appendix A to include the reference list and the Opcode Maps for all of the 68HC 11 MCU Instruction Types.
In preparing this sixth edition, the very helpful comments and suggestions of several users and reviewers were considered and acted upon. The authors particularly wish to acknowledge Rickey McFadden, Paris Junior College, Paris, TX; Vincent Kassab, Erie Community College North Campus, Williamsville, NY; Fereydoun Jalali, Fort Valley State University, Fort Valley, GA; and Gabor Karsai, Vanderbilt University, Nashville, TN, who assisted in this capacity.
Ronald J. Tocci
Frank J. Ambrosio
Monroe Community College