As we know the CPUs only understand the 0s and 1s but it also becomes tedious for humans to program in 0s and 1s. Despite the hexadecimal systems made it easier but still its cumbersome for humans to program in the form of hexadecimal systems. Therefore, assembly languages were developed which provided mnemonics and features that made it a lot easier to program.
In Computer science language mnemonics are termed as codes or abbreviations.
Program consisting of 0s and 1s is referred to as machine language. Therefore, assembly language must be translated into machine language which is in the form of 0s and 1s because CPU only understands 0s and 1s.
This can be done with the help of assemblers. Assembly language is basically considered as a low-level language while C, C++ is referred to as high-level language because it is not concerned with the internal structure of CPU.