[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: