Так дочитайте историю создания языка С, об этом полно вполне интересных статей, в том числе и на русском.
Сперва были только инструкции, которые вводили напрямую, потом через перфокарты/перфоленты, затем написали уже язык ассемблер, затем написали язык b, на котором написали C, затем уже на C перекомпилировали С и так далее.