This presentation gives an overview of ARM architecture and introduction on how to write bare metal programs for embedded system. This article specifically deals with programming of ARM7 chips, but the same analogy can be used for other architectures.