This book is a comprehensive, introductory text/reference for electrical and computerengineers and students with little experience with a high-level programming language. It systematically teaches the programming of a microcontroller in assembly language, as well as C and C++. This books also covers the principles of good programming practice through top-down design and the use of data structures. It is suitable as an introductorytext for a first course on microcomputers that demonstrates what a small computer cando.* Shows how a computer executes instructions;* Shows how a high-level programming language converts to assembler language;* Shows how a microcontroller is interfaced to the outside world;* Hundreds of examples, experiments, "brain-teasers" and motivators;* More than 20 exercises at the end of each chapter;*Complete solutions manual available for Instructors;* CD includes example code from book as well as the MetroWerks CodeWarriorO C++ compiler.