Le 04/01/2016 21:27, enae a écrit :
> 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?
> comment est chargé ce code machine dans le processeur ? (j'aurai
> tendance à penser à grub, mais, à la mise sous tension du processeur,
> à t+1 qu'est-ce qui fait le processeur commence à faire une tâche?)
>

http://www.commentcamarche.net/contents/763-processeur
est plus simple à comprendre que le Wikipedia
<https://fr.wikipedia.org/wiki/Processeur>

Grosso modo, on repart bien de l’algèbre de Bool qui détermine la façon
de mener des opérations arithmétiques sur des valeurs codées en base 2.
Ces opérations sont "câblées" en dur dans des circuits électroniques
(des transistors à la base).
Ces circuits sont assemblés dans un même composant (un processeur) afin
de fournir des opérations plus complexes : des instructions.
Jusqu'à ce que, sous l'impulsion de cycles d'horloges réguliers, on
fournisse au processeur ainsi constitué,  des opérandes et des
opérations dans des espaces mémoire internes (des registres), qui
déroule alors son microprogramme constitué d'un jeu d’instructions fixes
(car figé dans l’électronique).
10    ADD    REG1, REG2            # Ajoute le contenu du registre 1 au
registre 2

C'est bien évidemment un peu plus compliqué que cela, et la technologie
évoluant, des architectures nouvelles ont amélioré/complexifié cette
vision simpliste : CISC, RISC, parallélisme, processeur analogique,
gestion mémoire indexée, virtuelle, etc.

==
Écrire un compilateur (en pseudo-code), revient alors :
- écrire un compilateur selon un jeu d'instruction universelle
(pseudo-code) : lire, écrire, additionner, multiplier ...
- à coder/porter le jeu d’instruction pseudo-code dans le jeu
d’instruction (langage machine) du processeur

Var1 + Var2 ==> Load Var1,REG1     Load Var2,REG2      ADD  REG1, REG2

- à finaliser le compilateur / pseudo-code selon les dernières
spécificités du processeur
 

Bon je m'arrête là, je suis déjà trop compliqué sans doute ;-)
Pierre

-- 
Pro. Signature

Pierre Touzeau

-----------------------------------------------------------
Chargé de mission      Préfecture de region Basse-Normandie
SGAR, rue Daniel HUET 14038 CAEN CEDEX      +33 231 306 306
pierre.touz...@basse-normandie.pref.gouv.fr +33 608 968 574
-----------------------------------------------------------

Répondre à