Quelle est la différence entre le langage d'assemblage X86 et le langage d'assemblage MIPS?


Réponse 1:

Le langage MIPS est ce qu'on appelle un langage d'assemblage RISC. Cela signifie un ordinateur à jeu d'instructions réduit. C'est un langage adapté aux machines simples, ou si vous souhaitez concevoir une machine pour une tâche très spécifique, même si complexe, car elle a un jeu d'instructions réduit implémenté sur le matériel. Un exemple, à part MIPS, serait le langage d'assemblage Microchip, avec pas plus de 40 instructions sur le plus robuste de leurs contrôleurs, et tous implémentés sur le matériel.

Désormais, le x86 et les autres langages d'assemblage utilisés par les fabricants de PC sont appelés CISC (Complex Instruction Set Computer). Ces ensembles d'instructions contiennent des centaines d'instructions. Et une caractéristique particulière de ces langages est que toutes les instructions ne sont pas implémentées sur le matériel. Ils ont une couche spéciale de logiciel, le microcode, qui est responsable de la conversion d'une instruction complexe, c'est-à-dire une instruction qui fait partie de leur ensemble qui n'est pas implémentée sur le matériel, dans des instructions qui sont implémentées physiquement pour retourner le résultat attendu.

Maintenant, comme vous l'avez peut-être remarqué si vous avez utilisé le MARS pour simuler une machine MIPS, il fait quelque chose comme ça lorsque vous utilisez l'instruction de chargement. Et cela ne sert qu'à montrer que certains langages d'assemblage peuvent avoir des caractéristiques des deux types.

Plus tard dans la journée, je publierai un texte plus long, avec des références, parlant du matériel et de sa relation avec le langage d'assemblage.

J'espère que ça aide.

PS: Je poste ici une réponse postée par un autre gars sur les langues d'assemblage, pour référence.

Barry Rountree's answer to What is Assembly Language?