Pourquoi un décod. d'instructions pour un prog. Déjà compilé?

Résolu
klaodio81 Messages postés 255 Date d'inscription   Statut Membre Dernière intervention   -  
klaodio81 Messages postés 255 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'aimerais savoir pourquoi y a dans un Cpu un décodeur d'instructions alors que le programme qu'il est sensé exécuté est déjà en langage machine !

Merci d'avance pour vos réponses.



Configuration: Android / Chrome 85.0.4183.127

1 réponse

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour,
la machine, dans ce contexte, c'est le CPU.
le langage machine, c'est le langage que le CPU est capable d'éxécuter.
le CPU est composé de plusieurs éléments, qui collaborent ensemble pour exécuter les instructions en langage machine.
0
klaodio81 Messages postés 255 Date d'inscription   Statut Membre Dernière intervention   20
 
:D hhhh t'as rien expliqué en fait.... Merci quand même !
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > klaodio81 Messages postés 255 Date d'inscription   Statut Membre Dernière intervention  
 
pose peut-être ta question autrement.
confondrais-tu décoder et compiler?
0
klaodio81 Messages postés 255 Date d'inscription   Statut Membre Dernière intervention   20 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Non je confonds rien, tu as juste mal compris la question ; on nous a enseigné que "un décodeur d'instructions decode les instructions chargées dans la RAM" , mais instructions déjà en langage machine car compilées (càd traduite d'un langage évolué en langage machine !)!!! Et cette contradiction je ne l'a comprends pas ; soit il y a deux langages machines, soit le décodeur d'instructions n'entre en scène seulement dans le cas où le programme n'a pas été compilé....
Voilà ?
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > klaodio81 Messages postés 255 Date d'inscription   Statut Membre Dernière intervention  
 
très bien, tu deviens plus clair quand tu mentionnes "deux langages machine" et que tu associes "décoder" à "changer de langage".

"décoder" signifie "déchiffrer. Interpréter, comprendre". cela ne signifie pas du tout "traduire".

tu supposes que "décoder", c'est passer d'un langage à un autre.
il n'y a qu'un langage machine, c'est le langage que le CPU (la machine) est capable d'exécuter.
décoder les instructions, cela ne signifie pas les traduire en un autre langage. cela signifie les analyser, et décider comment les exécuter.
le CPU est composé de plusieurs éléments, qui collaborent ensemble pour décoder et exécuter les instructions en langage machine.

quand tu lis le mot "arbre", ton cerveau le décode pour l'associer à un concept, pour lui donner un sens. pas pour le traduire dans un autre langage.

si je te donnes une instruction simple en français, par exemple "tourne la tête à gauche", ton cerveau va "décoder" cette instruction. pas pour la traduire en un autre langage, mais pour envoyer des signaux à tes muscles pour exécuter l'instruction.
0
klaodio81 Messages postés 255 Date d'inscription   Statut Membre Dernière intervention   20 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Yes ! Ça c'est de l'explication, merci bcp ;)
Mon problème donc c'est que j'ai confondu, effectivement, décoder et traduire...
0