in computer science, a low-level programming language is a programming language that involves knowledge of both computer hardware and the coding used to make the computer hardware do actions. the advantage of low-level programming languages compared to high-level programming languages is that they can directly communicate with the computer hardware to do actions. there is less need for an interpreter to convert programming languages into code that the computer understands. low-level programming languages require knowledge of the hardware to make the most of what the hardware can do. the term "low-level" usually refers to assembly language.