# Les ASCII de 0 à 127/Caractères de contrôle

Les caractères de contrôle de l'ASCII, aussi connus sous le nom de block C0 donné par le mécanisme d'extension de l'ISO/IEC 2022. Le protocole de communication permis par le code ASCII n'est pas décrit par l'ASCII lui même mais il est décrit par la norme ANSI X3.28-1976 notamment.
| Seq | Dec | Hex | Acro | Symb | Name | C | Description |
| ^@ | 00 | 00 | NUL | ␀ | Null | \0 | À l'origine utilisé pour permettre de laisser une absence (un gap) sur les bandes de papier pour modification ultérieure. Plus tard utilisé pour combler la suite d'un code nécessitant au terminal un temps de traitement (par exemple le temps d'un retour chariot ou d'un retour à la ligne sur un terminal imprimant). Il est maintenant souvent utilisé comme terminateur de chaîne de caractères, spécialement dans le langage de programmation C. |
| ^A | 01 | 01 | SOH | ␁ | Start of Heading | | Premier caractère du header de message. |
| ^B | 02 | 02 | STX | ␂ | Start of text | | Premier caractère de texte pouvant être utilisé pour terminer le header du message. |
| ^C | 03 | 03 | ETX | ␃ | End of Text | | Souvent utilisé comme caractère d'arrêt (break) " pour interrompre ou terminer un programme ou un processus (par exemple sous DOS et sous Unix) |
| ^D | 04 | 04 | EOT | ␄ | End of Transmission | | Utilisé sous Unix pour signaler une condition de fin de fichier (end-of-file) ou pour un logout d'un terminal. |
| ^E | 05 | 05 | ENQ | ␅ | Enquiry | | Signal appelant une réponse du destinataire pour s'assurer de la continuité de sa présence. |
| ^F | 06 | 06 | ACK | ␆ | Acknowledge | | Réponse au ENQ, ou une indication de succès de réception de message. |
| ^G | 07 | 07 | BEL | ␇ | Bell | \a | À l'origine utilisé pour faire tinter la cloche du terminal. Ensuite utilisé pour produire un court signal sonore (beep) sur des systèmes n'étant pas dotés d'un timbre physique. Par la suite, en mode silencieux, l'avertisseur peut attirer l'attention sous forme de flash en activant et désactivant l'inverse video (visual bell / cloche visuelle), le temps d'un éclair. |
| ^H | 08 | 08 | BS | ␈ | Backspace | \b | Déplacement du curseur d'une position vers la gauche. En entrée, cela peut détruire le caractère précédent (à gauche, le sens d'écriture étant de gauche à droite). En sortie, alors qu'avec les premières technologies, une caractère imprimé ne pouvait plus être effacé, le retour arrière (backspace) était parfois utilisé pour générer des caractères accentués en ASCII. Par exemple, à pouvait être imprimé en utilisant la séquence des trois multiplets ASCII a BS ` (0x61 0x08 0x60). Cet usage est maintenant désuet et généralement n'est plus pris en charge. Pour permettre une levée d'ambiguïté entre les deux usages potentiels du backspace', le code de contrôle caractère d'annulation (cancel character) a été intégré dans le jeu de contrôle C1. |
| ^I | 09 | 09 | HT | ␉ | Character Tabulation, Horizontal Tabulation | \t | Positionne le caractère suivant dans une colonne de type tab stop (tabulation). |
| ^J | 10 | 0A | LF | ␊ | Line Feed | \n | Sur les machines à écrire, imprimantes, et certains émulateurs de terminaux déplace le curseur vers le bas d'une rangée sans modifier la position colonne. Sur Unix, utilisé pour indiquer la fin de ligne ([end-of-line). Sous MS-DOS, Windows, et des standards réseaux variables, la caractère de contrôle LF est utilisé immédiatement après CR comme partie composante de la fin de ligne. |
| ^K | 11 | 0B | VT | ␋ | Line Tabulation, Vertical Tabulation | \v | Positionnement sur la prochaine ligne de tabulation. |
| ^L | 12 | 0C | FF | ␌ | Form Feed | \f | Sur imprimante, charge la page suivante. Traité comme espace dans beaucoup de langages de programmation, peut être également utilisé pour séparer différentes divisions du code. Sur certains émulateurs de terminal, efface l'écran. |
| ^M | 13 | 0D | CR | ␍ | Carriage Return | \r | À l'origine utilisé pour positionner le curseur en première colonne en restant sur la même ligne. Sur Mac OS (pre-Mac OS X), ainsi que sur d'autres systèmes anciens comme l' Apple II et le Commodore 64, utilisé pour indiquer la fin de ligne. Sous MS-DOS, Windows, et des protocoles réseaux voisins, est utilisé immédiatement avant LF pour former une marque de fine de ligne. La touche [Entrée] (ou [Retour]) d'un clavier envoie cette valeur qui peut être différente suivant le logiciel impliqué. De la même manière que pour le backspace, sur un support imprimé, on peut utiliser un retour chariot pour appliquer un effet de souligné avec l'underscore sur toute une ligne. Cette pratique est obsolète et ne fonctionne pas sur un écran télétype car l'underscore remplacerait complètement le texte. |
| ^N | 14 | 0E | SO | ␎ | Shift Out | | Change pour un jeu de caractère alternatif. |
| ^O | 15 | 0F | SI | ␏ | Shift In | | Retour au jeu de caractère régulier après avoir utilisé un jeu de caractères alternatifs. |
| ^P | 16 | 10 | DLE | ␐ | Data Link Escape | | Conduit à l'interprétation des prochains octets comme données binaires plutôt que des caractères de contrôle ou graphiques. Le retour à une utilisation normale est alors dépendant de l'implémentation. |
| ^Q | 17 | 11 | DC1 | ␑ | Device Control One (XON) | | Ces quatre codes de contrôles sont réserves pour le contrôle des périphériques (device), leur interprétation est dépendante du périphérique connecté. DC1 et DC2 portaient l'intention primaire d'indiquer l'activation d'un périphérique alors que DC3 et DC4 indiquaient la pause ou l'arrêt. La pratique actuelle a fait de DC1 et DC3 (aussi connus comme XON et XOFF respectivement et dans cette utilisation) la standard de fait pour le flow contrôle logiciel. |
| ^R | 18 | 12 | DC2 | ␒ | Device Control Two | | Ces quatre codes de contrôles sont réserves pour le contrôle des périphériques (device), leur interprétation est dépendante du périphérique connecté. DC1 et DC2 portaient l'intention primaire d'indiquer l'activation d'un périphérique alors que DC3 et DC4 indiquaient la pause ou l'arrêt. La pratique actuelle a fait de DC1 et DC3 (aussi connus comme XON et XOFF respectivement et dans cette utilisation) la standard de fait pour le flow contrôle logiciel. |
| ^S | 19 | 13 | DC3 | ␓ | Device Control Three (XOFF) | | Ces quatre codes de contrôles sont réserves pour le contrôle des périphériques (device), leur interprétation est dépendante du périphérique connecté. DC1 et DC2 portaient l'intention primaire d'indiquer l'activation d'un périphérique alors que DC3 et DC4 indiquaient la pause ou l'arrêt. La pratique actuelle a fait de DC1 et DC3 (aussi connus comme XON et XOFF respectivement et dans cette utilisation) la standard de fait pour le flow contrôle logiciel. |
| ^T | 20 | 14 | DC4 | ␔ | Device Control Four | | Ces quatre codes de contrôles sont réserves pour le contrôle des périphériques (device), leur interprétation est dépendante du périphérique connecté. DC1 et DC2 portaient l'intention primaire d'indiquer l'activation d'un périphérique alors que DC3 et DC4 indiquaient la pause ou l'arrêt. La pratique actuelle a fait de DC1 et DC3 (aussi connus comme XON et XOFF respectivement et dans cette utilisation) la standard de fait pour le flow contrôle logiciel. |
| ^U | 21 | 15 | NAK | ␕ | Negative Acknowledge | | Envoyé par une station comme réponse négative. Dans les protocoles de communication binaires et synchrones, le NAK est utilisé pour indiquer la détection d'une erreur dans le bloc de données précédemment reçu et ainsi accepter la retransmission du dit bloc. Dans les systèmes multipoint, le NAK est utilisé comme réponse not-ready à un poll. |
| ^V | 22 | 16 | SYN | ␖ | Synchronous Idle | | Utilisé dans les systèmes à transmission synchrone pour fournir un signal à partir duquel la correction synchrone peut être établie entre le data terminal equipment, en particulier lorsque aucun autre caractère n'est transmis. |
| ^W | 23 | 17 | ETB | ␗ | End of Transmission Block | | Indique la fin de la transmission du bloc de données lorsque les données sont divisées en blocs à des fins de transmission. |
| ^X | 24 | 18 | CAN | ␘ | Cancel | | Indique une erreur ou une annulation dans les données précédentes . |
| ^Y | 25 | 19 | EM | ␙ | End of medium | | Sur bandes papier ou magnétiques moyen d'indiquer que la fin de la partie utilisable de la bande a été atteinte. |
| ^Z | 26 | 1A | SUB | ␚ | Substitute | | Originally intended for use as a transmission control character to indicate that garbled or invalid characters had been received. It has often been put to use for other purposes when the in-band signaling of errors it provides is unneeded, especially where robust methods of error detection and correction are used, or where errors are expected to be rare enough to make using the character for other purposes advisable. |
| ^[ | 27 | 1B | ESC | ␛ | Escape | | Dans sa conception d'origine, ce caractère permet d'introduire une séquence spéciale non normalisée par l'ASCII. Les caractères suivants ne sont donc plus de l'ASCII pur. Sur la plupart des systèmes, une touche d'échappement a été introduite pour produire ce caractère. |
| ^\ | 28 | 1C | FS | ␜ | File Separator | | Peut être utilisé comme délimiteurs pour séparer les champs d'une structure de données. Si utilisé pour marquer des niveaux hiérarchiques, le caractère US est le niveau le plus bas (dividing plain-text data items), alors que RS, GS, et FS sont d'un niveau augmentant pour des subdivisions . |
| ^] | 29 | 1D | GS | ␝ | Group separator | | Peut être utilisé comme délimiteurs pour séparer les champs d'une structure de données. Si utilisé pour marquer des niveaux hiérarchiques, le caractère US est le niveau le plus bas (dividing plain-text data items), alors que RS, GS, et FS sont d'un niveau augmentant pour des subdivisions . |
| ^^ | 30 | 1E | RS | ␞ | Record Separator | | Peut être utilisé comme délimiteurs pour séparer les champs d'une structure de données. Si utilisé pour marquer des niveaux hiérarchiques, le caractère US est le niveau le plus bas (dividing plain-text data items), alors que RS, GS, et FS sont d'un niveau augmentant pour des subdivisions . |
| ^_ | 31 | 1F | US | ␟ | Unit separator | | Peut être utilisé comme délimiteurs pour séparer les champs d'une structure de données. Si utilisé pour marquer des niveaux hiérarchiques, le caractère US est le niveau le plus bas (dividing plain-text data items), alors que RS, GS, et FS sont d'un niveau augmentant pour des subdivisions . |
| Bien que ne faisant pas techniquement partie de la plage des caractères du bloc C0, les deux caractères suivants partagent des caractéristiques des caractères de contrôle. Ils sont définis par l'ISO/IEC 2022 comme étant toujours disponibles quel que soit le jeu de caractères graphiques utilisés. Ces deux caractères ont la particularité d'avoir tous les bits graphiques identiques, soit à zéro, soit à un. ||||||||
| | 32 | 20 | SP | ␠ | Space | | L'espace est un caractère graphique du point de vue de l'ASCII. Il dispose d'une représentation graphique consistant en l'absence de symbole graphique. Il cause l'avancement d'un caractère de la position active. Dans certaines applications, l'espace est le séparateur de mot de plus bas niveau. |
| ^? | 127 | 7F | DEL | ␡ | Delete | | À l'origine conçu pour indiquer les caractères effacés sur des bandes de papier, puisque chaque caractère peut être transformé : la perforation de chacun des bits permet de les mettre tous à un. Sur les terminaux compatible VT100, ce caractère est généré par la touche étiquetée "⌫", également appelée backspace sur les claviers anglais modernes, et ne correspond pas à la touche delete des PC anglais. |