uses short words (mnemonics) for instructions instead of binary numbers  low level language
classified as a low-level language because it is machine specific, typically reads a program written in an assembly language, which has two parts: the op code and the operand
a combination of hexadecimal numbers and expressions, such as mov, add,and sub, so writing programs in this language is easier than in machine language.