Un programme écrit dans une séquence binaire est appelé « programme en langage machine », qui est le seul langage de bas niveau qu'un ordinateur peut directement reconnaître et exécuter. Le langage machine est un langage informatique directement exprimé en instructions de code binaire, qui sont une chaîne de 0 et de 1. Le code, les 64 0 et les 1 peuvent être formés en diverses permutations et combinaisons, et transformés en signaux électriques via des fils, permettant à l'ordinateur d'effectuer diverses opérations.
L'environnement d'exploitation de ce tutoriel : système Windows 10, ordinateur DELL G3.
Un programme écrit en séquences binaires est appelé programme en langage machine. C'est le seul langage de bas niveau qu'un ordinateur peut directement reconnaître et exécuter.
Le langage machine est un langage informatique directement exprimé par des instructions de code binaire. Les instructions sont une chaîne de codes composée de 0 et de 1. Elles comportent un certain nombre de chiffres et sont divisées en plusieurs segments. L'encodage de chaque segment représente différents. significations, telles que La longueur des mots d'un certain ordinateur est de 64 bits (bit), c'est-à-dire qu'il existe 64 nombres binaires qui constituent une instruction ou d'autres informations. Les 64 0 et 1 peuvent être formés en diverses permutations et combinaisons et transformés en signaux électriques via des fils, permettant à l'ordinateur d'effectuer diverses opérations.
Le langage machine fait référence à un ensemble d'instructions qui peuvent être directement reconnues par le matériel informatique. Il s'agit du premier langage informatique. Le langage machine est subordonné au périphérique matériel. Différents appareils informatiques ont des langages machine différents, le langage machine est donc un langage orienté machine.
Les instructions du système d'instructions informatique sont des codes composés de deux symboles, "0" et "1", et peuvent être directement comprises et exécutées par la machine. Elles sont appelées instructions machine. L'ensemble des instructions machine d'un ordinateur constitue le langage machine de l'ordinateur, c'est-à-dire le langage que l'ordinateur peut directement accepter et comprendre.
Une brève introduction au langage machine
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 un travail très fastidieux. 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. [2] 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, du fait 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 des résultats de l'opération et l'opération effectuée, une instruction doit contenir les informations suivantes :
(1) opcode. 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.
Une instruction comprend en fait deux types d'informations, à savoir le code d'opération et le code d'adresse. Le code d'opération (OperationCode, OP) est utilisé pour représenter l'opération à effectuer par l'instruction (telle que l'addition, la soustraction, la multiplication, la division, le transfert de données, etc.). Sa longueur dépend du nombre d'instructions dans le système d'instructions. . Le code d'adresse est utilisé pour décrire l'opérande de l'instruction. Il donne soit directement l'opérande, soit indique l'adresse mémoire ou l'adresse de registre de l'opérande (c'est-à-dire le nom du registre).
L'instruction comprend deux parties : le champ opcode et le champ d'adresse. Selon le nombre d'adresses impliquées dans le champ d'adresse, les formats d'instructions courants sont les suivants.
Instruction à trois adresses : A1 et A2 dans le champ d'adresse générale déterminent respectivement les premières et deuxièmes adresses d'opérandes, et A3 détermine l'adresse de résultat. L'adresse de l'instruction suivante est généralement donnée séquentiellement par le compteur du programme.
Instruction à deux adresses : A1 dans le champ d'adresse détermine la première adresse d'opérande, et A2 détermine la deuxième adresse d'opérande et l'adresse de résultat en même temps.
Instruction d'adresse unique : A dans le champ d'adresse détermine l'adresse du premier opérande. Correction de l'utilisation d'un certain registre pour stocker le deuxième opérande et le résultat de l'opération. Leurs adresses sont donc implicites dans les instructions.
Instruction d'adresse zéro : dans un ordinateur à pile, les opérandes sont généralement stockés dans les deux unités en haut de la pile déroulante, et les résultats sont placés en haut de la pile, donc les adresses sont implicites. la plupart des instructions n'ont que des opcodes mais pas de domaine d'adresse.
Instructions relatives au numéro d'adresse variable : Le nombre d'adresses impliquées dans le champ d'adresse change avec la définition de l'opération. Par exemple, le nombre d’adresses dans les instructions de certains ordinateurs peut aller de 0 à 6.
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!