ABSTRACT
This chapter provides a general introduction to embedded systems and its building
blocks. In particular, basic concepts related to microcontrollers, microprocessors, dif-
ferent types of memories, and the software tools required to work with microcontrollers
are introduced. Different attributes that are the basis for microprocessor architecture
classification are also discussed. We adopt a top-down approach in explaining these
concepts.