low level programming language which programs for a specific cpu.  uses binary.
original low level language, rows of switches flipped on or off by operator
rarely written in machine code (binary) as it is harder to understand