ARM Assembly for Embedded Applications is a text for a sophomore-level course in computer science, computer engineering, or electrical engineering that teaches students how to write functions in ARM assembly called by a C program. The C/Assembly interface (i.e., function call, parameter passing, return values, register conventions) is presented early so that students can write simple functions in assembly as soon as possible. The text then covers the details of arithmetic, bit manipulation, making decisions, loops, integer arithmetic, real arithmetic floating-point and fixed-point representations, inline coding and I/O programming.What's new: This 4th edition adds more than 30 pages of new material, including a complete revision of Chapter 12 to focus on composite data types with applications for rational and complex arithmetic. The text now uses the GNU ARM Embedded Toolchain for program development on Windows, Linux or OS X operating systems, and is supported by a textbook website that provides numerous resources including PowerPoint lecture slides, programming assignments and a run-time library.
Prior to joining Santa Clara University (SCU) in 1975, Lewis worked for six years at General Electric's Aerospace Division where he designed a fault-tolerant clocking system for one of the first triple-redundant automatic landing systems for commercial aircraft. He has consulted for a number of Bay Area companies, including the Singer-Link Company, where his design of new algorithms and a corresponding modular array of VLSI circuits became the basis of a new product line of real-time computer graphics systems. Lewis' efforts led to the creation of SCU's Computer Engineering department in 1988, serving as its chair for the first 18 years. Lewis is the 2010 recipient of SCU's Brutacao Family Foundation Award for Curriculum Innovation, and author of three books, Fundamentals of Embedded Software: Where C and Assembly Meet, which has been published in four languages and received national recognition in the 2003 Alpha Sigma Nu book competition, Fundamentals of Embedded Software with the ARM(R) Cortex-M3, which has been published in two languages, and ARM Assembly for Embedded Applications.