Synopses & Reviews
Clements has a gift for conveying highly complex, technical information in an exceptionally clear and readable manner. Clements writing style is very student oriented, and stresses the basics of 68000 ASL while also covering the latest information on ASL later generation chips.
Features: provides a clear, detailed, and readable discussion of 68000 assembly language programming, and covers the most up-to-date information on the Motorola 68000 microprocessor family; covers advanced 68000 topics often omitted in other printed references, such as the use of LINK and UNLINK instructions; and contains a bound-in 68000 simulator software 3 1/2" disk that lets users test assembly language code on IBM-compatible computers.
Includes bibliographical references (p. 707-710) and index.
About the Author
Alan Clements studied Electronics at the University of Sussex. He was awarded a Ph.D. at Loughborough University in equalizers for digital data transmission in 1976. During the 1970s when literature on microcomputer design was comparatively rare, Dr. Clements wrote one of the first books in this area, The Principles of Computer Hardware. It was one of the first undergraduate texts to cover the whole spectrum of computer hardware at an introductory level, with topics ranging from Boolean algebra to peripherals that measure rotational velocity. In the 1980s Dr. Clements wrote a definitive text on microprocessor systems design which featured Motorola processors. Motorola honored Dr. Clements by endowing him with a personal chair at Teesside. Following his earlier successes Dr. Clements has become increasingly interested in the problems of teaching computer architecture and involved with education. In 2001 he became chair of the Computer Society's international student competition, CSIDC and in the same year received a National Teaching Fellowship in the UK, the UK's highest award for higher education. In 2009 he was elected Fellow of the IEEE for contributions to computer science education and became also became second Vice President of the IEEE Computer Society. Dr. Clements is the recipient of the 2002 Computer Science Engineering Undergraduate Teaching Award (IEEE CS) for teaching excellence reflected on textbooks with major impact on computer architecture education as well is the 2007 Taylor L. Booth award recipient for outstanding contributions to education in the field of computer architecture.
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 68000S 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 68000S 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 68020s New and Extended Addressing Modes / The 68020s Supervisor State / Cache Memory and the 68000 Family / The Coprocessor / Summary / Problems / APPENDICES / A. Glossary / B. The 68000s Instruction Set / Selected 68020 Instructions / The 68000 Cross-assembler and Simulator / BIBLIOGRAPHY / INDEX