A programming language that can be compiled into assembly language and then assembled into machine language.