Все языки программирования переводятся в машинный код, который затем выполняется аппаратным интерпретатором.
Это не обязательно так. За исключением JIT-компиляции, интерпретаторы обычно не переводят данный язык в машинный код.
Однако что переводит код переводчиков, такой как код компилятора и код интерпретатора?
Если вы напишите свой интерпретатор или компилятор в C (например), он будет переведен в машинный код компилятором C, как и любая другая программа C. Компиляторы и интерпретаторы не являются особенными в этом отношении.