Instructions (informatique)
Code source, vue d’artiste. Les instructions que l’ordinateur peut comprendre ne sont pas celles du langage humain, loin s’en faut. Un microprocesseur sait juste exécuter un nombre limité d’instructions bien définies par son architecture interne.
Par exemple, des instructions typiques exécutables par un ordinateur sont «copier le contenu de la cellule mémoire 1118 et le placer dans la cellule 485» ou encore «ajouter le contenu de la cellule 441 à celui de la cellule 756 et placer la somme dans la cellule mémoire 879». Dans un microprocesseur, la plupart des instructions se composent de deux zones : l’une indiquant quoi faire, qu’on nomme le code des opérations, et l’autre indiquant où le faire, qu’on nomme habituellement opérande.
Au sein de l’ordinateur, les instructions correspondent toujours à des codes, le code pour une copie étant par exemple 001. L’ensemble d’instructions qu’un ordinateur est capable d’exécuter se nomme son langage machine, soit une succession de chiffres binaires simples, car un microprocesseur ne peut traiter que des zéros et des uns, ce qui correspond physiquement à : 0, le courant électrique ne passe pas, 1, le courant électrique passe : rien de plus, rien de moins !
En résumé, le transistor est une porte qui est soit ouverte, soit fermée, et tout l’univers de la programmation informatique doit passer par là !
Toutefois, actuellement les programmeurs utilisent peu ce type de langage machine trop restreint ; ils préfèrent un langage de haut niveau, qui est ensuite transformé en langage binaire par un programme spécial nommé interpréteur ou compilateur. Les résultats ainsi obtenus sont des programmes compréhensibles par l’ordinateur dans son langage natif, et écrit par des hommes dans un langage informatique évolué, plus facile à appréhender par eux, même s’il demeure complexe.
Pourtant, certains langages de programmation, comme l’assembleur, sont dit « langage de bas niveau », car les instructions qu’ils utilisent sont proches du langage machine. Les programmes écrits dans ces langages sont difficiles à réaliser, et sont dépendants de la plate-forme pour laquelle ils ont été développés. L’assembleur est encore utilisé pour des usages spécifiques, car très proche de la structure matérielle du microprocesseur, il peut être très performant.
En comparaison, le langage C, et tous ses dérivés (mais aussi d’autres langages concurrents évolués) sont beaucoup plus simples à maîtriser, ce qui permet aux programmeurs d’être plus productifs, ce explique la raison de leur succès.