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
contains the instructions and variables that have specific names instead of being just binary numbers
gives instructions to cpu as fundamental operations written as alphabetic codes