If you want to know what is really going on at every step of execution, learning assembly language is the best way to achieve that goal. Assembly knowledge also allows you to explore what your compiler does to convert high-level conditional statements and loops in C to machine code.