La notation avec accent circonflexe est une notation utilisée pour les caractères de contrôle ASCII . Elle attribue le code de contrôle 1 au code de contrôle 26, et ainsi de suite jusqu'au code 26. Pour les codes de contrôle hors de la plage 1–26, la notation s'étend aux caractères ASCII adjacents non alphabétiques ; par exemple, le caractère 0 est utilisé pour le code de contrôle 0 .
Il est souvent possible de saisir un caractère de contrôle au clavier en maintenant la touche enfoncée Ctrlet en tapant le caractère qui suit le curseur. Cette notation est fréquemment utilisée pour décrire les raccourcis clavier, même si le caractère de contrôle n'est pas réellement utilisé (comme dans « tapez ^X pour couper le texte »).
La signification, l'interprétation ou la réponse aux codes de contrôle individuels ne sont pas prescrites par les lettres en notation caret.
Description
La notation se compose d'un accent circonflexe ( ^ ) suivi d'un caractère (généralement une majuscule). Le code ASCII de ce caractère est égal au code de contrôle, le bit correspondant à 0x40 étant inversé. Ce moyen mnémotechnique permet de s'en souvenir facilement : les codes de contrôle de 1 à 26 s'écrivent alors de ^A à ^Z . Sept caractères de contrôle ASCII ne font pas partie de l'alphabet majuscule : 0 ( NUL ) correspond à ^@ , 27 ( ESC ) à ^[ , 28 ( FS ) à ^\ , 29 ( GS ) à ^] , 30 ( RS ) à ^^ , 31 ( US ) à ^_ et 127 ( DEL ) à ^ ?.
Les exemples sont « ^M^J » pour la paire de saut de ligne CR, LF de Windows , et décrivant la séquence d'échappement ANSI pour effacer l'écran comme « ^[[3J ».^[[3J"}},"i":0}}]
Seuls les caractères compris entre 63 et 95 (« ?@ABC...XYZ[\]^_ ») sont explicitement autorisés dans la notation. Cependant, la saisie de caractères alphabétiques minuscules au clavier est presque toujours permise ; ils sont traités comme des majuscules. Lors de la conversion en caractère de contrôle, à l’exception du caractère « ? », le masquage avec 0x1F produit le même résultat et convertit les minuscules en un caractère de contrôle équivalent aux majuscules.
Il n'existe pas de version équivalente de la notation avec accent circonflexe pour les codes de contrôle de plus de 7 bits, tels que les caractères de contrôle C1 de 128 à 159 (0x80 à 0x9F). Certains programmes affichant la notation avec accent circonflexe les représentent par une barre oblique inverse et un symbole octal (« \200 » à « \237 »). Voir également la notation avec barre oblique utilisée par Acorn Computers, ci-dessous .
Histoire
Cette convention remonte au moins au PDP-6 (1964) de Digital Equipment Corporation (DEC) et à son système d'exploitation. Un manuel du PDP-6 décrit le signe + comme l'affichage de ↑ C, c'est-à-dire une petite flèche pointant vers le haut en exposant avant le C. Lors du passage de l'ASCII 1961 à l'ASCII 1968, la flèche vers le haut est devenue un accent circonflexe. Le successeur du PDP-6, le PDP-10 , et son système d'exploitation ont adopté la même convention. Certains systèmes d'exploitation non DEC pour PDP-10, tels que TENEX et ITS , l'ont également adoptée.ControlC
La même convention a été utilisée dans les systèmes d'exploitation de DEC pour son mini-ordinateur PDP-11 , tels que RT-11 , RSTS , et RSX-11M .
Les versions antérieures d' Unix n'utilisaient pas la convention du caret pour afficher les caractères de contrôle non imprimables, bien que la commande stty acceptât la notation caret lors de la définition des caractères d'effacement et de fin de ligne. 4BSD a ajouté un mode ctlecho dans lequel les caractères de contrôle sont affichés à l'aide de la notation caret ; ce mode a été adopté par les systèmes de type Unix modernes sous le nom d'echoctl .
Utilisation dans les logiciels
La notation avec accent circonflexe est utilisée pour décrire les caractères de contrôle dans la sortie de nombreux programmes, notamment sous Unix . On peut les observer lors de l'affichage des caractères saisis par l'utilisateur, ainsi que lors de l'affichage du contenu des fichiers dans un éditeur de texte ou avec les commandes `more` et ` less` .
De nombreux terminaux et émulateurs de terminal permettent à l'utilisateur de saisir un caractère de contrôle en maintenant la touche enfoncée et en tapant la lettre avec le symbole accent circonflexe. Certains caractères de contrôle (par exemple, EOT ) ne peuvent pas être saisis directement au clavier. Généralement, il n'est pas nécessaire de maintenir la touche enfoncée (par exemple, les lettres minuscules fonctionnent de la même manière que les majuscules). Sur un clavier américain, la combinaison + produit DEL et + produit ^@. Il est également fréquent que + produise ^@.Ctrl⇧ Shiftctrl/ctrl2ctrlspace
Cette correspondance a influencé les raccourcis utilisés même dans les logiciels modernes. Par exemple, on pourrait être tenté d'associer le + à « Aide », mais comme il s'agit du même code que , d'autres raccourcis pour l'aide ont été créés.CtrlH← Backspace
Notations alternativesem », comme pour la de retour chariot , ASCII 13.