Hi!
Wenn es Dir wirklich um den „Anfang von allem“ geht: Die ersten Compiler wurden tatsächlich in Assembler geschrieben, das sind ja praktisch schon die Maschinensprachebefehle, die der Prozessor direkt versteht.
Wenn Dich das „wie“ interessiert: Für eine neue Sprache benötigt man in aller Regel 2 Komponenten. Eine lexikalische Prüfung, die bestimmen kann, ob der gegebene Quellcode überhaupt den Regeln der Sprache entspricht (Syntax) und eine, welche dann die Sprachelemente mit der eigentlichen Funktionalität verknüpft (z.B. eine Zuweisung realisiert, egal, ob die entsprechende Syntax dafür bspw. ‚=‘ oder ‚:=‘ lautet).
Die zwei Standardprogramme dafür waren (sind? Hab’ schon länger keinen Compiler mehr gebastelt…) klassischerweise lex und yacc (deren Implementierungen meines Wissens nach in Standard C erfolgt).
Wenn’s Dich interessiert, auf Wikipedia sind kurze Artikel dazu.
Gruß,
Martin
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]