Table of Contents
1. DATA REPRESENTATION AND COMPUTER ARITHMETIC Characters, Words, and Bytes / Number Bases / Binary Arithmetic / Floating Point Numbers / Logical Operations on Binary Values / Summary / Problems 2. INTRODUCTION TO COMPUTER ARCHITECTURE AND ASSEMBLY LANGUAGE From Problem to Program / The CPU and its Memory / Introduction to the Assembler / Summary / Problems 3. INTRODUCTION TO THE 68000 Simplified Model of the 68000 / A Basic Instruction Set / Register Usage / Addressing Modes / Running and Debugging 68000 Programs / Summary / Problems 4. THE 68000''S ADDRESSING MODES Variable Length Operands / Addresses and Address Registers / Address Register Indirect Addressing with Displacement / An Application of Address Register Indirect Registering / Address Register Indirect Addressing with Post-incrementing and Pre-decrementing / Address Register Indirect Addressing with Index / Program Counter Relative Addressing / Permitted Addressing Modes / Summary / Problems 5. THE 68000''S INSTRUCTION SET Data Movement and Arithmetic Operations / Logical, Shift, and Bit Operations / Program Control and the 68000 / Miscellaneous Instructions / Summary / Problems 6. INTRODUCTION TO ASSEMBLY LANGUAGE PROGRAMMING The Design Process / Structured Programming / Pseudocode (PDL) / Examples of Pseudocode Design / Pseudocode Design: Using PDL to Design a Command Line Interpreter (CLI) / Summary / Problems 7. SUBROUTINES AND PARAMETERS Basic Principles of Subroutines / Parameter Passing / The Stack and Local Variables / Recursion / Summary / Problems 8. ASSEMBLERS Overview of the Assembler / Assemblers and Modularity / The Macro Assembler / Conditional Assembly and Structured Control / Summary / Problems 9. PERIPHERAL PROGRAMMING Input/Output Strategies / The 68230 Parallel Interface/Timer / The Serial Interface / The 68681 DUART / Summary / Problems 10. 68000 INTERRUPTS AND EXCEPTIONS Overview of the 68000 Family Exception Handling Facilities / Interrupts and Exceptions / Privileged States, Virtual Machines, and the 68000 / Exceptions and the 68000 Family / Hardware Initiated Exceptions / Software Initiated Exceptions / Summary / Problems 11. PROGRAMMING EXERCISES Task-Switching Kernel / A Bootstrap Monitor / Problems 12. THE 68020 AND 68030 MICROPROCESSORS Basic Differences Between the 68000 and 68020 / Enhanced 68000 Instructions / New 68020 Instructions / The 68020's New and Extended Addressing Modes / The 68020's Supervisor State / Cache Memory and the 68000 Family / The Coprocessor / Summary / Problems / APPENDICES / A. Glossary / B. The 68000's Instruction Set / Selected 68020 Instructions / The 68000 Cross-assembler and Simulator / BIBLIOGRAPHY / INDEX