Concept

Instruction non documentée

Une instruction non documentée (en anglais, undocumented instruction ou illegal opcode) est une instruction-machine destinée à une unité centrale qui n'est pas mentionnée dans une documentation officielle publiée par le concepteur ou le fabricant de l'unité centrale, mais qui a néanmoins un effet. Les instructions non documentées étaient courantes sur les anciens processeurs conçus dans les années 1970, tels que le MOS Technology 6502, l'Intel 8086 et le Zilog Z80. Sur ces anciens processeurs, plusieurs instructions non documentées sont des effets secondaires du câblage des transistors dans l'unité centrale, et combinent généralement des fonctions de l'unité centrale qui n'étaient pas destinées à être combinées. Elles incluent la simplification du décodage des instructions par le processeur où certains bits du code d'instruction peuvent être ignorés. Les instructions concernées ont alors plusieurs codes possibles (des alias non officiels), mais un seul d'entre eux est officiellement documenté. Sur les processeurs anciens et modernes, il existe également des instructions intentionnellement incluses dans le processeur par le fabricant, mais qui ne sont documentées dans aucune documentation officielle. Certains programmes se servent d'instructions non documentées pour détecter la révision exacte du processeur. Si la plupart des instructions non documentées accidentelles ont des effets inutiles, voire hautement indésirables (comme le plantage de l'ordinateur), quelques-unes peuvent, par accident, faire quelque chose qui peut être utile dans certaines situations. De telles instructions ont parfois été exploitées dans les jeux sur ordinateur personnel des années 1970 et 1980 pour accélérer certaines opérations critiques. Ces instructions ont également été utilisées dans la lutte permanente entre la mise en œuvre de la protection contre la copie et le craquage. Dans ce cas, elles constituaient une forme de sécurité par l'obscurité et leur secret ne durait généralement pas très longtemps.

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Séances de cours associées (4)
Conception de Datapath et de la logique de contrôle pour les instructions ISA
Explore la conception de datapath et la logique de contrôle pour l'exécution des instructions ISA, en mettant l'accent sur le contrôle filaire et l'analyse des performances.
Programmation de l'assemblage MIPS
Introduit la programmation d'assemblage MIPS, couvrant les constructions, la carte mémoire, les registres et la conception de processeurs.
Gestion de la mémoire: allocation et deallocation
Couvre la gestion de la mémoire, en se concentrant sur l'allocation et la désallocation des blocs de mémoire, y compris les techniques de collecte des ordures et les problèmes de fragmentation.
Afficher plus
Publications associées (4)
Concepts associés (2)
Zilog Z80
Le Zilog Z80 est un microprocesseur 8 bits conçu et fabriqué par Zilog. Une des particularités de ce processeur est le couplage de certains registres ( ) et le bus d’adresses , permettant un traitement de l’information nettement plus rapide qu’avec un processeur classique. Ce processeur fut commercialisé pour la toute première fois en . Au début des années 1980 il fut très populaire dans la conception des ordinateurs 8 bits comme le Radio Shack TRS-80, les Sinclair ZX80, ZX81, ZX Spectrum, le standard MSX, les Amstrad CPC, le PC-88 et plus tard dans les systèmes embarqués.
Langage machine
Le langage machine, ou code machine, est la suite de bits qui est interprétée par le processeur d'un ordinateur exécutant un programme informatique. C'est le langage natif d'un processeur, c'est-à-dire le seul qu'il puisse traiter. Il est composé d'instructions et de données à traiter codées en binaire. Chaque processeur possède un langage machine. Si un processeur A est capable d'exécuter toutes les instructions du processeur B, on dit que A est compatible avec B.

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.