Skip to main content

Qu'est-ce qu'un compilateur?

Un compilateur est un type spécial de programme informatique qui traduit un fichier texte lisible par l'homme en un formulaire que l'ordinateur peut plus facilement comprendre.À son niveau le plus élémentaire, un ordinateur ne peut comprendre que deux choses, un 1 et un 0. À ce niveau, un humain fonctionnera très lentement et trouver les informations contenues dans la longue chaîne de 1 et 0s incompréhensible.Un compilateur est un programme informatique qui comble cet écart.

Au début, les compilateurs étaient des programmes très simples qui ne pouvaient traduire les symboles que dans les bits , les 1 et 0, l'ordinateur a compris.Les programmes étaient également très simples, composés d'une série d'étapes qui ont été à l'origine traduites à la main en données que l'ordinateur pouvait comprendre.Il s'agissait d'une tâche très longue, donc des parties de cette tâche étaient automatisées ou programmées, et le premier compilateur a été écrit.Ce programme a assemblé ou compilé les étapes nécessaires pour exécuter le programme étape par étape.

Ces compilateurs simples ont été utilisés pour écrire un compilateur plus sophistiqué.Avec la version plus récente, plus de règles pourraient être ajoutées au programme du compilateur pour permettre une structure de langage plus naturel pour que le programmeur humain puisse fonctionner.Cela a rendu les programmes d'écriture plus faciles et a permis à plus de personnes de commencer à écrire des programmes.Alors que plus de gens ont commencé à écrire des programmes, plus d'idées sur les programmes d'écriture ont été proposées et utilisées pour faire des compilateurs plus sophistiqués.De cette façon, les programmes de compilateur continuent d'évoluer, d'améliorer et de devenir plus faciles à utiliser.

Les programmes de compilateur peuvent également être spécialisés.Certaines structures linguistiques sont mieux adaptées à une tâche particulière que d'autres, de sorte que des compilateurs spécifiques ont été développés pour des tâches ou des langues spécifiques.Certains compilateurs sont à plusieurs degrés ou Pass multiples .Une première passe pourrait prendre un langage très naturel et le rapprocher d'un langage compréhensible par ordinateur.Un deuxième ou même une troisième passe pourrait le porter à l'étape finale, le fichier exécutable.

La sortie intermédiaire dans un compilateur à plusieurs étages est généralement appelée pseudo-code , car elle n'est pas utilisable par l'ordinateur.Le pseudo-code est très structuré, comme un programme informatique, pas un flux libre et verbeux comme un langage plus naturel.La sortie finale s'appelle le fichier exécutable , car c'est ce qui est réellement exécuté ou exécuté par l'ordinateur.La division de la tâche comme celle-ci a facilité l'écriture de compilateurs plus sophistiqués, car chaque sous-tâche est différente.Cela a également facilité l'ordinateur de souligner où il avait du mal à comprendre ce qu'il était demandé de faire.

Les erreurs qui limitent le compilateur dans la compréhension d'un programme sont appelées erreurs de syntaxe .Erreurs dans la façon dont les fonctions du programme sont appelées erreurs logiques .Les erreurs logiques sont beaucoup plus difficiles à repérer et à corriger.Les erreurs de syntaxe sont comme des erreurs d'orthographe, tandis que les erreurs logiques sont un peu plus comme des erreurs grammaticales.

Des programmes de compilateur croisé ont également été développés.Un compilateur croisé permet un ensemble de fichiers texte d'instructions qui est écrite pour un ordinateur conçu par un fabricant spécifique à compiler et à exécuter pour un autre ordinateur par un autre fabricant.Par exemple, un programme qui a été écrit pour s'exécuter sur un ordinateur Intel peut parfois être compilé en croix pour exécuter un ordinateur développé par Motorola.Cela ne fonctionne souvent pas très bien.Au niveau auquel les programmes informatiques fonctionnent, le matériel informatique peut être très différent, même s'ils peuvent vous ressembler.

La compilation croisée est différente de l'idée d'un ordinateur un autre ordinateur.Si un ordinateur émule un ordinateur différent, il prétend être cet autre ordinateur.L'émulation est souvent plus lente que la compilation croisée, puisque deux programmes fonctionnent en même temps, le programme qui prétend être l'autre ordinateur et le programme qui s'exécute.Cependant, pour que la compilation croisée fonctionne, vous avez besoin à la fois de l'originalTexte en langage naturel qui décrit le programme et un ordinateur suffisamment similaire à l'ordinateur d'origine sur lequel le programme peut fonctionner pour s'exécuter sur un autre ordinateur.Ce n'est pas toujours possible, donc les deux techniques sont utilisées.