Assembly is one of the fundamental pillars of programming and is considered as a middle level language. It is a misconception to call C a low level language since the only low level language is machine code(Binary). Assembly has various flavours based on the system you are using it on. in no particular order:
- x86_64
- arm
- MIPS
I will be following this excellent pdf document which goes into great depth about assembly It seems only fitting to follow a textual approach to such a process
To assemble the source code to machine code we must use an assembler in this instance ill be using YASM a popular assembler for Unix like systems.