Preface
Chapter 1 Basic Structure of Computers
1.1 Functional Units
1.2 Basic Operational Concepts
1.3 Bus Structures
1.4 Distributed Computing
1.5 Concluding Remarks
Chapter 2 Addressing Methods and Machine Program Sequencing
2.1 Memory Locations, Addresses, and Encoding of Information
2.2 Main Memory Operations
2.3 Instruction Formats and Instruction Sequencing
2.4 Addressing Modes
2.5 The PDP-11 Addressing Modes and Instructions
2.6 Simple Input-Output Programming
2.7 Pushdown Stacks
2.8 Subroutines
2.9 Concluding Remarks
2.10 Problems
2.11 References
Chapter 3 Instruction Sets
3.1 The PDP-11
3.2 Limitations of Short Word-Length Machines
3.3 High-Level Language Considerations
3.4 The VAX-11
3.5 The IBM 370
3.6 The HP 3000
3.7 Concluding Remarks
3.8 Problems
Chapter 4 The Processing Unit
4.1 Some Fundamental Concepts 
4.2 Execution of a Complete Instruction 
4.3 Sequencing of Control Signals 
4.4 Concluding Remarks
4.5 Problems 
Chapter 5 Microprogrammed Control
5.1 Microinstructions
5.2 Grouping of Control Signals
5.3 Microprogram Sequencing
5.4 Microinstructions with Next-Address Field
5.5 Prefetching of Microinstructions
5.6 Emulation
5.7 Bit Slices
5.8 Concluding Remarks
5.9 Problems 
Chapter 6 Input-Output Organization 
6.1 Addressing of I/O Devices 
6.2 Data Transfer 
6.3 Synchronization 
6.4 Interrupt Handling 
6.5 I/O Interfaces 
6.6 Standard I/O Interfaces 
6.7 I/O Channels 
6.8 Concluding Remarks 
6.9 Problems 
6.10 References 
Chapter 7 Arithmetic 
7.1 Number Representations 
7.2 Addition of Positive Numbers 
7.3 Logic Design for Fast Adders 
7.4 Addition and Subtraction of Positive and Negative Numbe 
7.5 Arithmetic and Branching Conditions 
7.6 Multiplication of Positive Numbers 
7.7 Signed-Operand Multiplication 
7.8 Fast Multiplication 
7.9 Integer Division 
7.10 Floating-Point Numbers and Operations 
7.11 Concluding Remarks 
7.12 Problems 
7.13. References
Chapter 8 The Main Memory 
8.1 Some Basic Concepts
8.2 Semiconductor RAM Memories
8.3 Memory System Considerations
8.4 Semiconductor ROM Memories
8.5 Multiple- Module Memories and Interleaving
8.6 Cache Memories
8.7 Virtual Memories
8.8 Memory Management Requirements
8.9 The VAX-11 Virtual Memory System
8.10 Memory Management Hardware
8.11 Concluding Remarks
8.12 Problems
8.13 References 
Chapter 9 Computer Peripherals and Work Stations 
9.1 I/O Devices 
9.2 On-Line Storage 
9.3 Personal Computers 
9.4 Engincering Work Stations 
9.5 Concluding Remarks 
9.6 Problems 
9.7 References 
Chapter 10 Software 
10.1 Languages and Translators
10.2 Loaders
10.3 Linkers
10.4 Operating Systems
10.5 Concluding Remarks
10.6 Problems
10.7 References 
Chapter 11 Microprocessors 
11.1 Families of Microprocessor Chips
11.2 M6800 Microprocessor
11.3 M6809 Microprocessor
11.4 Input/Output in Microprocessor Systems
11.5 Motorola M68000 Microprocessor
11.6 Intel 8085 Microprocessor
11.7 Single-Chip Microcomputers
11.8 Applications of Microprocessors
11.9 Concluding Remarks
11.10 Problems
11.11 References
Chapter 12 Computer Communications 
12.1 Communication with a Remote Terminal 
12.2 Error Control 
12.3 Multiterminal Configurations 
12.4 Circuit and Message Switching 
12.5 Local Area Networks 
12.6 Concluding Remarks 
12.7 Problems 
12.8 References 
Appendixes 
A  Logic Circuits 
A.1 Basic Logic Functions 
A.2 Synthesis of Logic Functions Using AND, OR, and NOT Gates 
A.3 Minimization of Logic Expressions 
A.4 Synthesis with NAND and NOR Gates 
A.5 Practical Implementation of Logic Gates 
A.6 Flip-Flops 
A.7 Registers 
A.8 Shift Registers 
A.9 Counters 
A.10 Decoders 
A.11 Multiplexers 
A.12 Programmable Logic Arrays (PLAs) 
A.13 Concluding Remarks 
A.14 Problems 
A.15 References 
B  Instruction Set for PDP-11 Minicomputers 
C  Instruction Set for Motorola 68000 Microprocessor 
D  Character Codes and Number Conversion 
D.1 Character Codes 
D.2 Decimal to Binary Conversion 
Bibliography 
Index