The set of instructions, encoded as strings of binary bits, interpreted directly by a computer's central processing unit. Each different type of central processing unit has its own machine language. For a given machine language, each unique combination of 1's and 0's in an instruction has a unique interpretation, including such operations as arithmetical operations, incrementing a counter, saving data to memory, testing if data has a certain value, and so on. Computer programs are rarely written directly in machine language; instead, higher-level programming languages are used. See more at programming language.