Steuerzeichen

Frühe Symbole der 32 Steuerzeichen. (ISO 2047, MIL-STD-188-100, 1972)

Als Steuerzeichen, auch Steuerkode oder Steuercode, englisch control, werden die Zeichen eines Zeichensatzes bezeichnet, die keine darstellbaren Zeichen repräsentieren – darstellbare Zeichen sind beispielsweise Buchstaben, Ziffern und Satzzeichen. Ursprünglich wurden sie zur Ansteuerung von Textausgabegeräten wie Textdruckern, Schreibautomaten, Telegrammgeräten oder Fernschreibern verwendet. Durch Steuerzeichen ist es möglich, Steuerungsbefehle für die Ausgabegeräte innerhalb des Zeichensatzes zu übertragen, anstatt die Steuerungsinformationen über ein anderes Protokoll zu übertragen.

Heute haben nur noch wenige Steuerzeichen eine Bedeutung (z. B. Line Feed, Form Feed, Carriage Return, Escape), die meisten werden praktisch nicht mehr verwendet. Manchmal nutzt man sie auch, um Zeichen zu übertragen, die im verwendeten Zeichensatz sonst nicht definiert sind.

In einer Zeichentabelle sind zumeist sowohl darstellbare Zeichen als auch Steuerzeichen definiert, beim meistverwendeten ASCII-Code sind Steuerzeichen die Zeichen 0 bis 31 und das Zeichen 127. Um Steuerzeichen als grafische Symbole sichtbar zu machen, beispielsweise zur Kontrolle der Datenübertragung, sind die Unicode-Zeichen des Bereichs Control Pictures[1] (U+2400 bis U+243F) vorgesehen.

C0-Steuerzeichen

Legende zur folgenden Tabelle 
DezCodewert des Zeichens im dezimalen Zahlensystem
HexCodewert des Zeichens im hexadezimalen Zahlensystem
CtrlÜbliche Schreibweise („Caret-Notation“) als Steuercode

Das Steuerzeichen kann so auf der Tastatur eingegeben werden: Das einleitende ^ steht dabei für Ctrl (control) bzw. auf deutschen Tastaturen die Strg-Taste (Steuerung). Diese wird gedrückt gehalten, während das zweite Zeichen eingegeben wird.

CDie „\x“-Zeichen geben die Schreibweise für dieses Zeichen in der Programmiersprache C und davon abgeleiteten Sprachen, wie etwa C++, Java und vor allem Skriptsprachen, Shells, und anderen an. Diese Schreibweise wird üblicherweise in Zeichenketten interpretiert, z. B.
printf("Ein\tTab\nZeilenumbruch\rWagenrücklauf");
ISOoffizielle Abkürzung für das Steuerzeichen (nach ISO-646-Standard)
Ugrafisches Unicode-Symbol aus dem Block U+2400–243F[1]
TypZeichentyp:
  • CC = Communication Control (engl. für Protokollzeichen)
  • FE = Format Effector (engl. für Ausgabezeichen)
  • IS = Information Separator (engl. für Trennzeichen)
Englischoffizieller Name, für den die Abkürzung steht (nach ASCII-Standard)
Deutschinoffizielle deutsche Übersetzung dieses englischen Namens
(ursprüngliche) BedeutungBedeutung des Steuerzeichens

Die kursiven Erläuterungen beschreiben die veraltete Bedeutung, die heutzutage als historisch anzusehen ist und nicht mehr verwendet wird.

ASCII- oder C0-Steuerzeichen
DezHexCtrlCISOUTypEnglischDeutsch(ursprüngliche) Bedeutung
00x00^@\0NULNullNullzeichenZeichen ohne Informationsgehalt. Kann nach Belieben in eine Nachricht eingefügt werden und wird vom Empfänger verworfen.
Markiert das Ende einer Zeichenkette in C.
10x01^ASOHCCStart of HeadingBeginn der KopfzeileMarkiert den Anfang der maschinen-lesbaren Zieladresse oder Routing Information. Die Kopfzeile wird mit dem Zeichen STX beendet.
20x02^BSTXCCStart of TextBeginn der NachrichtMarkiert den Anfang der zu übertragenden Nachricht und damit das Ende der Kopfzeile.
30x03^CETXCCEnd of TextEnde der NachrichtMarkiert das Ende der zu übertragenden Nachricht.
Als „Abbruch“-Zeichen für Terminaleingabe benutzt.
40x04^DEOTCCEnd of TransmissionEnde der ÜbertragungMarkiert das Ende der gesamten Über­tragung, welche aus mehreren Nachrichten inkl. Kopfzeilen bestehen kann.
Als „Programm-Abbruch“ für manche Befehlsinterpreter benutzt.
Als „Ende der Eingabe“ für Terminaleingabe benutzt.
50x05^EENQCCEnquiryAnfrageIn einer bidirektionalen Kommunikations­einrichtung eine Anfrage. Die Gegenstation kann mit ihrer Identifikation oder mit dem Status antworten. Auf deutschen Fernschreibern meist „Wer Da?“ genannt.
60x06^FACKCCAcknowledgeEmpfangsbestätigungSteuerzeichen, das die positive Antwort auf eine vorangegangene Anfrage ausdrückt.
70x07^G\aBELBellTonsignalErzeugt ein Tonsignal (Glocke oder Beep) am empfangenden Terminal. Benutzt als Alarmzeichen oder Aufmerksamkeits­zeichen.
80x08^H\bBSFEBackspaceRückschrittBewegt den Druckkopf/Cursor eine Position zurück.
Die Folge ´ Backspace e erzeugt auf einem Fernschreiber oder Drucker ein é, auf einem Videoterminal oder einer Terminalemulation oft nur ein e.
90x09^I\tHTFEHorizontal TabHorizontales TabulatorzeichenBewegt den Druckkopf/Cursor zur nächsten vordefinierten Position (Tab-Stop) in der aktuellen Zeile.
100x0A^J\nLFFELine FeedZeilenvorschubBewegt den Druckkopf/Cursor in die nächste Zeile.

Wenn zwischen Sender und Empfänger abgesprochen, bedeutet es „New Line“, wobei die erste Druckposition der nächsten Zeile angefahren wird. Wird u. a. in unixoiden Systemen (Unix, BSD, macOS, Linux) als „Zeilenendezeichen“ benutzt. Unter MS-DOS oder Windows wird mit der Kombination „Carriage Return“ + „Line Feed“ eine Zeile beendet.

110x0B^K\vVTFEVertical TabVertikales TabulatorzeichenBewegt den Druckkopf/Cursor zur nächsten vordefinierten Zeile.
120x0C^L\fFFFEForm FeedSeitenvorschubBewegt den Druckkopf/Cursor zur ersten Druckposition auf der nächsten Seite (Seitenumbruch). (Wirft die aktuelle Seite aus, löscht den Bildschirm).
130x0D^M\rCRFECarriage ReturnWagenrücklaufBewegt den Wagen/Druckkopf/Cursor zurück in die erste Druckposition der aktuellen Zeile.

Wird in BASIC als Zeilenumbruch verwendet. Wird beim klassischem Mac OS bis Version 9 als Zeilenendezeichen („New line“) benutzt. Unter MS-DOS oder Windows wird mit der Kombination „Carriage Return“ + „Line Feed“ eine Zeile beendet. Carriage Return kann bei Terminals oder Druckern verwendet werden, um in eine Zeile mehrmals zu schreiben (z. B. Ladebalken).

140x0E^NSOShift OutUmschaltungUmschaltung auf besondere Darstellung, z. B. Fettschrift bei einem Drucker.
150x0F^OSIShift InRückschaltungRückschaltung auf normale Darstellung.
160x10^PDLECCData Link Escape„Datenübertragungs­umschaltung“[2][3] oder „Datenverbindungs-Fluchtsymbol“
(wörtlich übersetzt)
Gibt den folgenden Zeichen eine besondere Bedeutung. Darf nur für zusätzliche Protokoll-Zeichen benutzt werden.
170x11^QDC1Device Control 1Gerätekontrollzeichen 1Gerätespezifische Steuerzeichen, etwa um bestimmte Gerätefunktionen (z. B. Schriftart bei Druckern) ein- und auszuschalten.

DC3 ^S (XOFF) und DC1 ^Q (XON) werden zur Flusskontrolle bei XON/XOFF eingesetzt.

180x12^RDC2Device Control 2Gerätekontrollzeichen 2
190x13^SDC3Device Control 3Gerätekontrollzeichen 3
200x14^TDC4Device Control 4Gerätekontrollzeichen 4
210x15^UNAKCCNegative AcknowledgeNegative BestätigungDrückt die negative Antwort auf eine vorangegangene Anfrage aus.
220x16^VSYNCCSynchronous IdleSynchronisierungssignalErmöglicht bei synchronen Daten­übertragungen die Synchronisierung auch bei Abwesenheit von zu übertragenden Signalen.
230x17^WETBCCEnd of Transmission BlockEnde des ÜbertragungsblockesZeigt das Ende eines Blocks von übertragenen Datenblöcken an, wenn dieses Blockende nicht aus den Daten selbst erkannt werden kann.
240x18^XCANCancelAbbruchZeigt an, dass die gerade übertragenen Daten fehlerhaft sind oder waren und verworfen werden müssen.
250x19^YEMEnd of MediumEnde des MediumsZeigt das (physische oder logische) Ende des Speichermediums an.
260x1A^ZSUBSubstituteErsatzSteht als Ersatz für ein Zeichen, das ungültig oder fehlerhaft ist, z. B. wegen eines Paritätsfehlers bei der Übertragung.
Dateiendezeichen (EOF, End of File) für Textdateien unter CP/M mangels bytegenauer Dateilängen, war anfänglich, obwohl unnötig, auch unter DOS üblich.
270x1B^[ESCEscapeFluchtsymbolGibt den folgenden Zeichen eine besondere Bedeutung, leitet eine Escape-Sequenz ein.
280x1C^\FSISFile SeparatorDateitrennerTrennzeichen, die Datenblöcke logisch unterteilen. Die genaue Bedeutung der logischen Einheiten „File“, „Group“, „Record“, „Unit“ ist nicht festgelegt, sie soll aber von „File“ als oberste Gliederungseinheit nach „Unit“ als unterste Gliederungseinheit geordnet sein.
290x1D^]GSISGroup SeparatorGruppentrenner
300x1E^^RSISRecord SeparatorDatensatztrenner
310x1F^_USISUnit SeparatorEinheitentrenner
1270x7FDELDeleteZeichen löschenDas DEL-Zeichen weist einen Binärcode aus lauter Einsen auf. Das hat einen historischen Grund: Einmal in einen Lochstreifen gestanzte Löcher kann man schließlich nicht wieder füllen. Man kann aber alle übrigen Löcher eines Zeichens auslochen und es damit zu einem nichtdruckenden Steuerzeichen 'BU' (im 5-Kanal-Baudot-Code) machen, also auf diese Weise eine Fehleingabe überschreiben. Daher steht dieses Zeichen auch für „gelöschtes Zeichen“ oder „deleted“.

C1-Steuerzeichen

Die in ISO 8859 für all seine Unterstandards neu definierten Steuerzeichen werden kaum verwendet und sind inzwischen nur noch von historischem Interesse. Die meisten Windows-Zeichensätze, einschließlich CP 1252, belegen diese Codepositionen mit druckbaren Zeichen, die im korrespondierenden ISO-Standard, bspw. ISO 8859-1, nicht enthalten sind.

Alle C1-Steuerzeichen sind über Escapesequenzen auch als C0-Steuerzeichen abbildbar, siehe ANSI-Escapesequenz.

ISO-8859- oder C1-Steuerzeichen
DezHexIETF[4]ISO[5]ZeichennameKommentar
1280x80PAPADPadding CharacterReserviertes Steuerzeichen; in einem DIS-10646-Entwurf angedacht, jedoch nie in die ISO-10646-Norm aufgenommen. In Unicode als XXX markiert.
1290x81HOHOPHigh Octet Preset
1300x82BHBPHBreak Permitted HereEine Position, an der ein Zeilenumbruch stattfinden kann. Vergleichbar mit dem breitenlosen Leerzeichen, Unicode U+200B zero width space.
1310x83NHNBHNo Break HereEine Position, an der kein Zeilenumbruch stattfinden soll. Vergleichbar mit Unicode U+2060 word joiner.
1320x84ININDIndexVersetzt die aktuelle Position eine Zeile nach unten, behält dabei aber die horizontale Position bei. Die Index-Funktion wurde mit der 4. Ausgabe von ECMA-48 (1986) als veraltet deklariert und in der 5. Ausgabe (1991) gestrichen.
1330x85NLNELNext LineSchiebt die aktuelle Position an den Anfang der nächsten Zeile, alternativ an die Home oder Line-Limit-Position. NEL ist an der gleichen Position wie EBCDIC NL (englisch Next Line).
1340x86SASSAStart of Selected Area
1350x87ESESAEnd of Selected Area
1360x88HSHTSCharacter Tabulation SetSetzt einen Tabulatorstopp an der aktiven Position. Vor ECMA-48 (4. Ausgabe, 1986) als „Horizontal Tabulation Set“ bezeichnet.
1370x89HJHTJCharacter Tabulation with JustificationVerschiebt einen Text an die nächste Tabulatorstopp-Position. Als Text wird der Teil von der vorigen Tabulatorstopp- bis zur aktiven Position verstanden. Vor ECMA-48 (4. Ausgabe, 1986) als „Horizontal Tabulation with Justify“ bezeichnet.
1380x8AVSVTSLine Tabulation SetSetzt einen vertikalen Tabulatorstopp auf der aktiven Zeile. Vor ECMA-48 (4. Ausgabe, 1986) als „Vertical Tabulation Set“ bezeichnet.
1390x8BPDPLDPartial Line ForwardVor ECMA-48 (5. Ausgabe, 1991) als „Partial Line Down“ bezeichnet.
1400x8CPUPLUPartial Line BackwardVor ECMA-48 (5. Ausgabe, 1991) als „Partial Line Up“ bezeichnet.
1410x8DRIRIReverse Line FeedVerschiebt die vorige Zeile und behält dabei die horizontale Position bei. Vor ECMA-48 (4. Ausgabe, 1986) als „Reverse Index“ bezeichnet.
1420x8ES2SS2Single Shift 2Zeichensatz G2 für 1 Zeichen nach GL laden
1430x8FS3SS3Single Shift 3Zeichensatz G3 für 1 Zeichen nach GL laden
1440x90DCDCSDevice Control StringStartzeichen einer Steuersequenz, die mit ST („String Terminator“) beendet wird; kann ein Kommando für das empfangende Gerät oder einen Statusbericht des sendenden Gerätes enthalten.
1450x91P1PU1Private Use OneReserviert, keine standardisierte Bedeutung.
1460x92P2PU2Private Use Two
1470x93TSSTSSet Transmit State
1480x94CCCCHCancel Character
1490x95MWMWMessage WaitingSetzt einen „Message Waiting“-Indikator im empfangenden Gerät.
1500x96SGSPAStart Protected AreaLegt mit der darauffolgenden Zeichenkette, die eine Liste von Zeichenpositionen enthält, einen Bereich fest, der gegen manuelles Verändern oder Übertragen geschützt ist; ein Löschschutz ist optional. Die Zeichenkette ist mit EPA („End Protected Area“) zu beenden. Die Funktion heißt „Start of Protected Area“ gem. ANSI X3.64 und ECMA-48 (1979), „Start of Guarded Protected Area“ gem. ISO 6429 (1983) und ECMA-48 (1984) oder „Start of Guarded Area“ gem. ISO 6429 (1992) und ECMA-48 (1986 und 1991).
1510x97EGEPAEnd Protected AreaLegt das Ende einer Zone fest, die mit SPA begonnen wurde. Die Funktion heißt „End of Protected Area“ gemäß ANSI X3.64 und ECMA-48 (1979), „End of Guarded Protected Area“ gem. ISO 6429 (1983) und ECMA-48 (1984) oder „End of Guarded Area“ gem. ISO 6429 (1992) und ECMA-48 (1986 und 1991).
1520x98SSSOSStart Of StringMarkiert den Beginn einer Steuer-Zeichenkette, die mit ST („String Terminator“) beendet wird. Die Zeichenkette darf kein weiteres SOS (152 dezimal bzw. 98 hexadezimal) enthalten. Die Interpretation der Zeichenkette obliegt dem jeweiligen Programm.
1530x99GCSGCISingle Graphic Character IntroducerReserviertes Steuerzeichen; in einem DIS-10646-Entwurf angedacht, jedoch nie in die ISO-10646-Norm aufgenommen. In Unicode als XXX markiert.
1540x9ASCSCISingle Character IntroducerFührt die durch ein einzelnes nachfolgendes Byte definierte Funktion aus, welche jedoch nicht standardisiert wurden. Ebenfalls die Einleitung einer proprietären VT100-Steuersequenz.
1550x9BCICSIControl Sequence IntroEinleitung einer Steuersequenz. Siehe ANSI-Escapesequenz.
1560x9CSISTString TerminatorZeichen für das Ende einer Zeichenkette, die mit APC, DCS, OSC, PM oder SOS begonnen wurde.
1570x9DOCOSCOperating System CommandMarkiert den Beginn einer „Operating System Command“-Zeichenkette, die mit ST („String Terminator“) beendet wird. Die Interpretation der Zeichenkette obliegt dem jeweiligen Betriebssystem.
1580x9EPMPMPrivacy MessageMarkiert den Beginn einer „Privacy Message“, die mit ST („String Terminator“) beendet wird.
1590x9FACAPCApplication Program CommandMarkiert den Beginn einer „Application Program Command“-Zeichenkette, die mit ST („String Terminator“) beendet wird. Die Interpretation der Zeichenkette obliegt dem jeweiligen Programm.

Unicode

Die Steuerzeichen des ASCII-Bereichs 0x00 bis 0x1F finden sich in Unicode unter C0 Controls[6] (U+0000 bis U+001F), die des ISO-8859-Bereichs 0x80 bis 0x9F unter C1 Controls[7] (U+0080 bis U+009F). Die ersten 128 Zeichen in der Unicode-Kodierung UTF-8 entsprechen denen der ASCII- und ISO-8859-Kodierung, somit gilt dies auch für die Steuerzeichen des Bereichs 0x00 bis 0x1F. Neben diesen Zeichen gibt es eine Reihe weiterer Steuerzeichen in Unicode.

Grafische Symbole für die Steuerzeichen finden sich im Unicode-Bereich Control Pictures[1] (U+2400 bis U+243F).

Eingabe unter MS-Windows oder DOS

Testweise können Steuerzeichen auch unter Windows eingegeben werden. Durch Festhalten der (linken) Alt-Taste und nachfolgendes Eintippen des Dezimalcodes eines Steuerzeichens auf dem Ziffernblock der Tastatur kann ein Steuerzeichen am Prompt eingegeben werden.

Beispiel: Eingabeaufforderung öffnen, Alt+(0 und 7 auf der numerischen Tastatur) protokolliert am Prompt das Zeichen ^G, damit wird auch klar: Strg + G bewirkt das Gleiche. Wird jetzt Enter (oder ^M) gedrückt, wird dieses Steuerzeichen im Terminalfenster ausgeführt und es ertönt aus dem Systemlautsprecher (soweit vorhanden und aktiv) ein spezieller Ton, was der Klingel (BEL) entspricht (siehe Tabelle oben). Ebenso löscht Alt+(0 und 8) wie der Druck auf Backspace (oder Strg + H) ein Zeichen. BASIC-Interpreter, die eigene Tastaturtreiber verwenden (z. B. GW-BASIC), akzeptieren auch hexadezimale ASCII-Codes der Form &hZZ, wobei Z für eine Hex-Ziffer steht (z. B. &h0D für Wagenrücklauf).

Siehe auch

Weblinks

Einzelnachweise

  1. a b c unicode.org (PDF; 111 kB).
  2. TGL-RGW 359, Informationsverarbeitungssysteme: Zeichen, Klassifizierung, Bezeichnung und Benennung. Verlag für Standardisierung, Januar 1988, S. 2.
  3. DIN 66003, Nr. A.2.10
  4. RFC1345 – Character Mnemonics & Character Sets. Juni 1992 (englisch).
  5. ISO 8859
  6. unicode.org (PDF; 476 kB).
  7. unicode.org (PDF; 573 kB).

Auf dieser Seite verwendete Medien

US ASCII Control Character Symbols.png
US-ASCII (1967) Control Character Symbols Chart.

Control Characters:

  • NUL: The all zeros character.
  • SOH (Start of Heading): A communication control character used at the beginning of a sequence of characters which constitutes a machine - sensible address of routing information. Such a sequence is referred to as the "heading". An STX character has the effect of terminating a heading.
  • STX (Start of Text): A communication control character which precedes a sequence of characters that is to be treated as an entity and entirely transmitted through to the ultimate destination. Such a sequence is referred to as "text". STX may be used to terminate a sequence of characters started by SOH.
  • ETX (End of Text): A communication control character used to terminate a sequence of characters started with STX and transmitted as an entity.
  • EOT (End of Transmission): A communication control character, used to indicate the conclusion of a transmission which may have contained one or more texts and any associated headings.
  • ENQ (Enquiry): A communication control character used in data communication systems as a request for a response from a remote station. It may be used as a "Who Are You" (WRU) to obtain identification, or may be used to obtain station status, or both.
  • ACK (Acknowledge): A communication control character transmitted by a receiver as an affirmative response to a sender.
  • BEL: A character for use when there is a need to call for human attention. It may control alarm or attention devices.
  • BS (Backspace): A format effector which controls the movement of the rinting position one printing space backward on the same printing line (applicable to display devices).
  • HT (Horizontal Tabulation): A format effector which controls the movement of the printing position to the next in a series of predetermined positions along the printing line. (Applicable als to display devices and the skip function on punched cards.)
  • LF (Line Feed): A format effector which controls the movement of the printing position to the next printing line (applicable also to display devices). Where appropriate, this character may have the meaning "New Line" (NL), a format effector which controls the movement of the printing point to the first printing position on the next printing line. Use of this convention requires agreement between sender and recipient of data.
  • VT (Vertical Tabulation): A format effector which controls the movement of the printing position to the next in a series of predetermined printing lines (applicable also to display devices).
  • FF (Form Feed): A format effector which controls the movement of the printing position to the first predetermined printing line on the next form or page (applicable also to display devices).
  • CR (Carriage Return): A format effector which controls the movement of the printing position to the first printing position on the same printing line (applicable to display devices).
  • SO (Shift Out): A control character indicating that the code combinations which follow shall be interpreted as outside of the character set of the standard code table until a Shift In character(s) is (are) reached.
  • SI (Shift In): A control character indicating that the code combinations which follow shall be interpreted according to the standard code table.
  • DLE (Data Link Escape): A communication control character which will change the meaning of a limited number of contiguously following characters. It is used exclusively to provide supplementary controls in data communication networks. DLE is usually terminated by a Shift In character(s).
  • DC1, DC2, DC3, DC4 (Device Controls): Characters for the control of ancillary devices associated with data processing or telecommunication systems, more especially switching devices "on" or "off". (If a single "stop" control is required to interrupt or turn off ancillary devices, DC4 is the preferred assignment.)
  • NAK (Negative Acknowledge): A communication control character transmitted by a receiver as a negative response to the sender.
  • SYN (Synchronous Idle). A communication control character used by a synchronous transmission system in the absence of any other character to provide a signal from which synchronism may be achieved or retained.
  • ETB (End of Transmission Block): A communication control character used to indicate the end of a block of data for communication purposes. ETB is used for blocking data where the block structure is not necessarily related to the processing format.
  • CAN (Cancel): A control character used to indicate that the data with which it is sent is in error or is to be disregarded.
  • EM (End of Medium): A control character associated with the sent data which may be used to identify the physical end of the medium or the end of the used, or wanted, portion of information recorded on a medium. (The position of the character does not necessarily correspond to the physical end of the medium.)
  • SUB (Substitute): A character that may be substituted for a character which is determined to be invalid or in error.
  • ESC (Escape). A control character intended to provide code extension (supplementary characters) in general information interchange. The Escape character itself is a prefix affecting the interpretation of a limited number of contiguously following characters. ESC is usually terminated by a Shift In character(s).
  • FS (File Separator), GS (Group Separator), RS (Record Separator), and US (Unit Separator): These information separators may be used within data in optional fashion, except that their hierarchical relationship shall be: FS is the most inclusive, then GS, then RS, and US is least inclusive. (The content and length of a File, Group, Record, or Unit are not specified.)
  • DEL (Delete): This character is used primarily to "erase" or "obliterate" erroneous or unwanted characters in perforated tape. (In the strict sense, DEL is not a control character.)