Halt and Catch Fire

Un article de Wikipédia, l'encyclopédie libre.

Halt and Catch Fire (« arrêter et prendre feu »), de mnémonique HCF, était à l'origine une instruction du langage assembleur d'un ordinateur, prétendument en développement chez IBM pour leurs ordinateurs System/360.

De nos jours, HCF dénote une instruction non documentée à effets secondaires inhabituels, incluse dans le processeur à des fins de test. Les utilisateurs qui découvrent ces instructions se sont approprié l'ancienne instruction Halt and Catch Fire et son mnémonique HCF pour exprimer de manière humoristique que l'exécution par inadvertance de ce genre d'instructions conduit le système à cesser de fonctionner de manière normale. L'expression catch Fire (« prendre feu ») est strictement métaphorique.

Selon un récit apocryphe remontant aux années 1960, époque à laquelle les ordinateurs utilisaient des mémoires à tores magnétiques : afin de rendre l'accès à la mémoire plus rapide sur leurs modèles d'ordinateurs suivants, les ingénieurs augmentèrent les courants de lecture/écriture circulant dans les fils très fins de ces mémoires. Cela fonctionnait très bien lorsque l'ordinateur exécutait un programme normal, puisque les accès étaient répartis sur l'ensemble de la mémoire. Par contre, si une instruction HALT était exécutée : elle faisait faire des sauts « sur place. » Par conséquent, le même emplacement en mémoire était lu en boucle et les fils très fins devenaient si chauds qu'ils se mettaient à fumer, d'où l'expression « halt and catch fire. »

Processeurs munis d'une instruction HCF[modifier | modifier le code]

Référence[modifier | modifier le code]

  1. (en) « Utz82/sc61860-instruction-set : documentation for the sc61860 (aka esr-h) cpu », sur GitHub (consulté le ).
  2. (en) Gerry Wheeler, « Undocumented M6800 Instructions », BYTE, vol. 2, no 12,‎ , p. 46–47

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

  • HLT, une instruction en langage assembleur qui arrête l'unité centrale de traitement (CPU) jusqu'à la prochaine interruption externe
  • Instruction nulle, une instruction particulière, qui dicte à l'ordinateur de n'effectuer aucune action
  • Pentium F00F bug (en), bug du processeur Intel Pentium

Lien externe[modifier | modifier le code]