In programming, assembly language refers to a human-readable format for machine code. Assemblers convert assembly language to machine code.
Most modern compilers actually output assembly language, then run an assembler to generate machine code.
Instruction set architectures
What’s the difference between ISAs and assembly languages? ISAs are specifications for a given processor’s capabilities – like data types, number of registers. Assembly languages are used to program these processors. Multiple ASM languages can be theoretically used for the same processor (provided they use the same opcodes).
We usually put the variables/arrays after the program in memory. Any exceptions/interrupts should be put before.