Maison  >  Article  >  Qu'est-ce que le langage machine

Qu'est-ce que le langage machine

WBOY
WBOYoriginal
2022-07-20 10:51:2830802parcourir

Le langage machine est un système d'instructions ; le langage machine est un langage de programmation ou un code d'instruction qui peut être directement reconnu par la machine sans traduction. Chaque code d'opération a un circuit correspondant pour le compléter à l'intérieur de l'ordinateur, ou sans traduction. un langage de programmation ou un code d'instruction directement compris et accepté par la machine. Le langage machine est un langage formel utilisé pour définir des programmes informatiques et pour émettre des instructions à l'ordinateur.

Qu'est-ce que le langage machine

L'environnement d'exploitation de ce tutoriel : système Windows 10, ordinateur DELL G3.

Le langage machine est un système de jeux d'instructions

Le langage machine est un langage de programmation ou un code d'instruction qui peut être directement reconnu par la machine sans traduction. Chaque code d'opération possède un circuit correspondant à l'intérieur de l'ordinateur pour le compléter, ou s'y réfère. Après traduction, il peut s'agir d'un langage de programmation ou d'un code instruction directement compris et accepté par la machine. Le langage machine utilise des adresses absolues et des opcodes absolus. Différents ordinateurs ont leurs propres langages machine, c'est-à-dire leurs systèmes d'instructions. Du point de vue de l'utilisation, le langage machine est le langage de niveau le plus bas.

Brève introduction

Le langage de programmation est un langage formel utilisé pour définir des programmes informatiques et est utilisé pour émettre des instructions à l'ordinateur. Il existe de nombreux langages informatiques et un grand nombre de nouveaux langages de programmation sont créés chaque année. Selon les niveaux, les langages de programmation peuvent être divisés en trois catégories : le langage machine, le langage assembleur et le langage de haut niveau. Le langage machine consiste en un ensemble d’instructions machine qui peuvent être directement exécutées par la machine. Les programmes écrits en langage machine présentent des problèmes difficiles à lire et à mémoriser. Essentiellement, le langage assembleur fonctionne directement sur le matériel. En raison de l’utilisation de mnémoniques, il est plus pratique à écrire et à lire que le langage machine. Dans les langages de haut niveau, plusieurs instructions assembleur sont fusionnées en instructions de programmation plus concises, et en même temps, certaines tâches telles que la gestion de l'allocation de pile et de registre sont automatiquement exécutées, ce qui permet aux programmeurs de développer des programmes plus facilement.

Le langage machine est un ensemble d'instructions machine représentées par un code binaire qu'un ordinateur peut directement reconnaître et exécuter. Il s'agit de la fonction d'exploitation donnée à l'ordinateur par le concepteur de l'ordinateur via la structure matérielle de l'ordinateur. Le langage machine présente les caractéristiques de flexibilité, d’exécution directe et de vitesse élevée. Les langages machine des différents types d'ordinateurs sont incompatibles. Un programme compilé selon les instructions machine d'un type d'ordinateur ne peut pas être exécuté sur un autre type d'ordinateur.

Une instruction est une instruction en langage machine. Il s'agit d'un ensemble de codes binaires significatifs. Le format de base de l'instruction est le suivant : champ de code d'opération et champ de code d'adresse. L'opcode spécifie la nature de l'opération et la fonction de l'instruction. le code adresse Donne l'opérande ou l'adresse de l'opérande.

Pour écrire des programmes en langage machine, les programmeurs doivent d'abord mémoriser tous les codes instructions de l'ordinateur utilisé et la signification des codes. Lors de la programmation manuelle, les programmeurs doivent gérer eux-mêmes l'allocation de stockage ainsi que l'entrée et la sortie de chaque instruction et donnée, et ils doivent également se souvenir de l'état de l'unité de travail utilisée à chaque étape du processus de programmation. C'est une tâche très fastidieuse. Le temps nécessaire pour écrire un programme est souvent des dizaines, voire des centaines de fois plus long que le temps d'exécution réel. De plus, les programmes compilés sont tous des codes d’instructions de 0 et de 1, qui ne sont pas intuitifs et sujets aux erreurs. À l’exception des professionnels des constructeurs informatiques, la grande majorité des programmeurs n’apprennent plus le langage machine.

Format d'instruction

L'instruction en langage machine est un code binaire composé de deux parties : l'opcode et l'opérande. L'opcode spécifie le fonctionnement de l'instruction. Il s'agit d'un mot-clé dans l'instruction et ne peut pas être défini par défaut. L'opérande représente l'opérande de l'instruction. Le format des instructions de l'ordinateur est étroitement lié à la longueur des mots, à la capacité de mémoire et à la fonction des instructions de la machine. Du point de vue de faciliter la conception des programmes, d'augmenter le parallélisme des opérations de base et d'améliorer la fonctionnalité des instructions, les instructions doivent contenir une variété d'informations. Cependant, dans certaines instructions, parce qu'une partie des informations peut être inutile, cela gaspillera l'espace de stockage occupé par l'instruction et augmentera le nombre d'accès à la mémoire, ce qui peut effectivement affecter la vitesse. Par conséquent, comment concevoir le format d'instruction de manière raisonnable et scientifique afin que l'instruction puisse non seulement donner suffisamment d'informations, mais également faire en sorte que sa longueur corresponde autant que possible à la longueur des mots de la machine, afin d'économiser de l'espace de stockage, de raccourcir le temps de valeur , et améliorer les performances de la machine. Il s’agit d’un problème important dans la conception du format d’instruction.

Les ordinateurs traitent diverses données en exécutant des instructions. Afin d'indiquer la source des données, la destination du résultat de l'opération et l'opération effectuée, une instruction doit contenir les informations suivantes :

(1) Code de l'opération. Il précise la nature et la fonction de l'opération. Un ordinateur peut avoir des dizaines, voire des centaines d'instructions, chaque instruction possède un code d'opération correspondant et l'ordinateur effectue différentes opérations en reconnaissant le code d'opération.

(2) L'adresse de l'opérande. La CPU peut obtenir les opérandes requis via cette adresse.

(3) Adresse de stockage du résultat de l'opération. Le résultat du traitement de l'opérande est enregistré à cette adresse pour être réutilisé.

(4) L'adresse de la prochaine instruction. Lors de l'exécution d'un programme, la plupart des instructions sont extraites de la mémoire principale dans l'ordre et exécutées. Ce n'est que lorsqu'une instruction de transfert est rencontrée que l'ordre d'exécution du programme change. Afin de compresser la longueur de l'instruction, un compteur de programme (ProgramCounter, PC) peut être utilisé pour stocker l'adresse de l'instruction. Chaque fois qu'une instruction est exécutée, l'adresse d'instruction du PC est automatiquement +1 (en supposant que l'instruction n'occupe qu'une unité de mémoire principale), indiquant l'adresse de la prochaine instruction à exécuter. Lorsqu'une instruction de transfert est rencontrée, l'adresse de transfert est utilisée pour modifier le contenu du PC. Du fait de l'utilisation d'un PC, l'adresse de la prochaine instruction à exécuter n'a pas besoin d'être explicitement indiquée dans l'instruction.

Pour plus de connaissances connexes, veuillez visiter la rubrique FAQ !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn