Which of the following might be used to convert high-level language instructions into machine language ?

Which of the following might be used to convert high-level language instructions into machine language ?

A. an interpreter
B. system software
C. applications software
D. an operating environment