It converts or translates a high level language into a machine code or large. It has two phases which includes: translator phase and executor phase. The translator phase converts the whole program into machine language and the execution phase executes the translated code.
It is like the compiler but the difference is that the translation phase and execution phase are not different. The interpreter will convert one statement into machine code, execute them, convert another, and execute it, and so on until the end of the program.