1. Translates and executes high level code line by line during execution
2. If an error is detected, it is reported and the interpreted program will stop execution
3. If no error, the source code line is transformed into an intermediate code
4. The interpreter program employs this intermediate code to perform the necessary operation