Why C instead ASM

ASM is a specific language also referred as low level programming language. It is a mnemonics to a machine codes. It usually takes long time to develop embedded programs in ASM language. Today even modern 8 bit microcontrollers are powerful and complex as they were long time ago. The program memory of tiny chips are reaching megabytes, they pack lots of peripherals and interfaces. Hardware code is becoming more complex, functionality grows up. This is one of the main reasons of using higher level programming languages like C. By using C language you do not have to go into details how processor works at hardware level. You don’t have to think about hardware logic how bytes are shifted between registers. It is better to leave t Another advantage of C language against ASM is portability. If you work with embedded system architecture and decide to move to other, and your previous program were written in ASM, then you are stuck to rewriting this code from scratch. Using C written programs you can re-compile code for different microcontrollers without significant modifications of code. This way your new project code upgrade becomes easy task. C or other high level programming language makes…