Halloween SALE - 25% OFF All Certificates & Diplomas Limited-time Offer - ends Friday, 29th October 2021

Claim My 25% Off

Diploma in C Programming and Assembly Language

Learn all you need to know about C programming and assembly language in this free online course.

Publisher: NPTEL
This free online course takes you through the basic and in-depth concepts related to C programming and assembly language. By the end of the course, you will be familiar and of course well informed on how function calls are translated to assembly; parameters are passed to a function, local variables are stored on stack and also how these local variables go out of scope after function calls.
Diploma in C Programming and Assembly Language
  • Duration

    6-10 Hours
  • Students

  • Accreditation






View course modules


The course is about C programming and assembly language. It begins by introducing you to the concept of the 8086 processor architecture (x86 processor), commonly used assembly instructions and use of stack and related instructions. You will learn about the role of a microprocessor and the tasks that can be done by a microprocessor. You will also learn about stack, stack pointer, ALU instructions and some examples of the different types of compilers like GCC compiler, Turbo C compiler, MS Visual C compiler.

The course then explains some ideas on converting C programs to assembly language in an optimized and unoptimized manner. It explains that to optimize an assembly code, so many redundant operations have to be gotten rid of. Also, unless a compiler is used in a particular optimized mode, it may not be possible to always get the most optimized and quickest instruction set in the assembly level. In addition, you will also learn how to make use of the PUSH and POP operations to swap two variables in C.

Finally, the course explains the compilation steps in C programming, how high level function calls are translated into low level assembly instructions using the concepts of prologue and epilogue, and also how variables are passed and assessed in C. You will also learn how  certain C functions are optimized  by exploiting hardware loops, compare the impact of recursion vs loops and finally understand why security of local variables is important.

Start Course Now