Les instructions de l'application peuvent être divisées en deux catégories : le processeur central, c'est-à-dire le jeu d'instructions du CPU, et celles utilisées pour demander des services spécifiques au système d'exploitation ; Les instructions de fonctionnement du processeur sont grossièrement divisées en récupération d'instructions, traduction de code, exécution, récupération, réécriture et mise à jour du PC.
L'environnement d'exploitation de cet article : système Windows 7, ordinateur DELL G3.
Théoriquement, les instructions de l'application peuvent être divisées en deux catégories : le jeu d'instructions de l'unité centrale (CPU) et celui utilisé pour demander des services spécifiques au système d'exploitation.
L'unité centrale de traitement (CPU, Central Processing Unit) est un circuit intégré à très grande échelle, qui est le cœur de calcul (Core) et le cœur de contrôle (Control Unit) d'un ordinateur. Sa fonction est principalement d'interpréter les instructions informatiques et de traiter les données dans les logiciels informatiques.
L'unité centrale de traitement comprend principalement l'unité arithmétique (unité arithmétique et logique, ALU, Arithmetic Logic Unit) et la mémoire cache (Cache), ainsi que le bus (Data), le contrôle et l'état qui réalise la connexion entre eux. ). Celui-ci, ainsi que la mémoire interne (Mémoire) et les dispositifs d'entrée/sortie (E/S), sont collectivement connus comme les trois composants principaux des ordinateurs électroniques.
Le flux de traitement des instructions de fonctionnement du CPU est grossièrement divisé en plusieurs étapes : récupération des instructions, décodage, exécution, accès à la mémoire, réécriture, etc. Chaque instruction nécessite entre 1 et 6 octets, selon les champs requis. Le premier octet de chaque instruction indique le type d'instruction : les 4 bits de poids fort sont la partie code (par exemple : 6 est une instruction d'opération sur nombre entier), et les 4 bits de poids faible sont la partie fonction (par exemple : 1 est une instruction de soustraction). dans la classe entière) 61 Ensemble, ils constituent la sous-commande.
Flux d'instructions de traitement
Une propriété importante du jeu d'instructions est que le codage d'octets doit avoir une interprétation unique. Toute séquence d'octets code une séquence d'instructions unique ou n'est pas une séquence d'octets valide. Étant donné que le premier octet de chaque instruction possède une combinaison unique de code et de fonction, étant donné cet octet, nous pouvons déterminer la longueur et la signification de tous les autres octets supplémentaires.
Chaque instruction nécessite entre 1 et 6 octets, selon les champs requis. Le premier octet de chaque instruction indique le type d'instruction : les 4 bits de poids fort sont la partie code (par exemple : 6 est une instruction d'opération sur nombre entier), et les 4 bits de poids faible sont la partie fonction (par exemple : 1 est une instruction de soustraction). dans la classe entière) 61 Ensemble, ils constituent la sous-commande.
Voici l'organigramme de traitement de chaque instruction :
Fetch (fetch)
La phase de valeur lit l'octet d'instruction dans la mémoire, Mettez-le dans la mémoire d'instructions (dans le CPU), et l'adresse est la valeur du compteur de programme (PC). Il calcule l'adresse de l'instruction suivante suivant l'instruction en cours de manière séquentielle (c'est-à-dire la valeur du PC plus la longueur de l'instruction récupérée).
Decode (decode)
ALU lit jusqu'à deux opérandes du fichier de registre (une collection de registres à usage général). (C'est-à-dire lire le contenu de jusqu'à deux registres à la fois)
Exécuter (exécuter)
Pendant la phase d'exécution, l'unité arithmétique/logique (ALU) sera utilisée pour différents fonctionne selon le type d’enseignement. Pour les autres instructions, il agira comme un additionneur pour calculer l'incrémentation ou la décrémentation du pointeur de pile, ou calculer l'adresse effective, ou simplement ajouter 0, en passant une entrée à la sortie.
Le registre de codes de condition (CC) comporte trois bits de condition. L'ALU se charge de calculer la nouvelle valeur du code de condition. Lorsqu'une instruction de saut est exécutée, le signal de branchement cnd est calculé sur la base du code de condition et du type de saut.
Mémoire
Dans la phase d'accès à la mémoire, la mémoire de données (dans le CPU) lit ou écrit un mot mémoire. La mémoire d'instructions et de données accède aux mêmes emplacements de mémoire, mais à des fins différentes.
Réécrire (réécrire)
La phase de réécriture peut écrire jusqu'à deux résultats dans le fichier de registre. Le fichier de registre possède deux ports d'écriture. Le port E est utilisé pour écrire la valeur calculée par l'ALU, tandis que le port M est utilisé pour écrire la valeur lue dans la mémoire de données.
Mettre à jour le PC (mise à jour du PC)
Selon le code d'instruction et le drapeau de branche, sélectionnez la valeur PC suivante parmi les valeurs de signal obtenues dans les étapes précédentes.
Pour plus de connaissances connexes, veuillez visiter le Site Web PHP chinois !
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!