Langage machine
"Langage machine" contre "micro instructions"
Nous avons vu que les micro instructions permettent (par la gestion des portes logiques) de contrôler les micro circuits et de réaliser nos micro programmes.
Il serait donc possible de coder un grand nombre de micro programmes directement dans la “Micro Memory”1, ce qui accélèrerait fortement les temps d'exécutions de ces programmes.
Seulement, la mémoire utilisée dans la “Micro Memory”1 est extrêmement coûteuse, car elle doit être très rapide et se situe au cœur du microprocesseur.
Sa taille sera donc limitée, ce qui ne nous permet plus de contenir les nombreuses instructions de notre programme.
De plus, le micro programme est gravé une fois pour toute à la conception du microprocesseur, et dépend directement de l'architecture de ce dernier (circuits, phases, portes logiques).
Principe du langage machine
Les micro instructions contenues dans la “Micro Memory”1 sont des suites de bits qui contrôlent une série de portes logiques. Le langage machine est une suite d'instructions contenues dans la “Main Memory”2, et chaque instruction en langage machine correspond à une série de micro instructions.
Nous avons besoin de spécifier une adresse pour notre instruction langage machine, mais aussi l'adresse de la donnée à traiter.
Dans le cas d'une architecture 16 bits (nous sommes actuellement avec des architectures 32 bits, et 64 bits), 4 bits peuvent être réservés pour l'adresse de l'instruction langage machine dans la main memory (op-code [“operation code”3]), et 12 bits pour l'adresse de la donnée dans la “Main Memory”2.
Instruction langage machine | Symbole | Explication |
0001+12 bits | LOAD | M -> ACC (l'accumulateur est le registre A) |
0010+12 bits | STORE | ACC -> M |
0011+12 bits | ADD | ACC + M-> ACC |
0100+12 bits | SUBSTRACT | ACC - M-> ACC |
0101+12 bits | MULTIPLY | ACC * M-> ACC |
0110+12 bits | DIVIDE | ACC / M-> ACC |
0111+12 bits | JUMP | Saute à la cellule mémoire M |
1000+12 bits | JUMPZERO | Saute à M si ACC = 0 |
1001+12 bits | JUMPMSB | Saute à M si MSB de ACC = 1 (=> si ACC est négatif) |
1010+12 bits | JUMPSUB | Saute à la sous-routine à la cellule M |
1011+12 bits | RETURN | Retour de la sous-routine à M |
Deutsche Übersetzung
Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.
Vielen Dank im Voraus.
Dokument erstellt 10/02/2004, zuletzt geändert 28/10/2018
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/langage-machine.html
Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.