Re: Documentation complète sur la compilation de programmes
On 01/04/2016 09:27 PM, enae wrote:
Je me posais les questions suivantes:
vu qu'un compilateur transforme du code lisible par un humain en code
machine, comment sait-il en quoi il doit transformer ce code lisible
par un humain?
Faire un compilateur est compliqué (et l'essentiel n'est pas la
construction de l'arbre syntaxique). Sur mon site http://gcc-melt.org/
la page http://gcc-melt.org/docum.html contient des références et des
transparents décrivant ça en détails (en anglais); le compilateur GCC
fait environ quinze millions de lignes de code (que personne ne comprend
en totalité) et il est développé par une communauté de centaines
d'ingénieurs (la plupart travaillant au moins à mi-temps sur GCC).
comment connait-on les spécifications du "code machine"? (je devine
que cela est certainement une suite de 0 et de 1, et très certainement
fortement dépendant du processeur et de son architecture)
comment le processeur sait-il ce qu'il a à faire en voyant ce code
machine?
Le spécifications d'un processeur sont de nos jours publiques. Chez
Intel, la totalité de la documentation fait plusieurs milliers de pages
(près de dix mille!). Et les ingénieurs d'Intel concoivent le processeur
pour obéir à sa spécification. C'est un métier difficile.
comment est chargé ce code machine dans le processeur ?
Sur un PC, par son BIOS ou son UEFI. Sur une tablette par son Firmware.
C'est du code machine "gravé en dur" dans une mémoire ROM ou Flash.
Cordialement
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***
Reply to: