Practical Computer Architecture with Python and ARM: An introductory guide for enthusiasts and students to learn how computers work and program their own - Clements (IEEE, 2003)