Ersatzcharakter

In Computerdaten, a Ersatzcharakter (␚) ist a Steuerzeichen Dies wird verwendet, um übertragene Daten zu padeln, um sie in Blöcken der festen Größe zu senden oder anstelle eines Zeichens zu stehen, das als ungültig, fehlerhaft oder nicht repräsentabel auf einem bestimmten Gerät anerkannt ist. Es wird auch in einigen als Fluchtsequenz verwendet Programmiersprachen.

In dem ASCII -ZeichensatzDieser Charakter wird von der Nummer 26 (codiert1a verhexen). Standard Tastaturen Übertragen Sie diesen Code, wenn der Strg und Z Tasten werden gleichzeitig gedrückt (Strg+z, oft dokumentiert durch Konvent ^Z).[1] Unicode erbt diesen Charakter von ASCII, empfiehlt jedoch, dass die Ersatzcharakter (�, u+fffd) werden stattdessen verwendet, um nicht einkörperbare Eingänge darzustellen, wenn die Ausgangscodierung damit kompatibel ist.

Verwendet

Ende der Datei

Historisch gesehen unter PDP-6 Monitor,[2] RT-11, VMs, und Tops-10,[3] und im frühen PC CP/m 1 und 2 Betriebssysteme (und Derivate wie MP/m) Es war notwendig, die explizit das zu markieren Ende einer Datei (Eof) weil der Eingeborene Dateisystem konnte die genaue Dateigröße nicht selbst aufzeichnen; Die Dateien wurden in Ausmaß (Datensätze) einer festen Größe zugewiesen, wobei normalerweise einige zugeteilte, aber nicht verwendete Speicherplatz am Ende jeder Datei zugeteilt wurden.[4][5][6][7] Dieser zusätzliche Raum war voller Platz mit 1a16 (verhexen) Zeichen unter cp/m. Die erweiterten CP/M -Dateisysteme, die von CP/M 3 und höher verwendet werden (und Derivate wie Gleichzeitiger CP/M, Gleichzeitige dos, und Dos plus) unterstützt Byte-Granular-Dateien,[8][9] Dies war also keine Voraussetzung, aber es blieb als Konvention (besonders für Textdateien) um die Rückwärtskompatibilität zu gewährleisten.

Im CP/m, 86-dos, MS-DOS, PC dos, DR-DOSund ihre verschiedenen Derivate wurde auch das Subcharakter verwendet, um das Ende eines Zeichenstroms anzuzeigen, und dadurch zur Beendigung der Benutzereingabe in einem interaktiv Befehlszeile Fenster (und als solches wird häufig verwendet Kopieren Sie con: typeDtxt.txt).

Obwohl nicht mehr technisch verpflichtet ist, das Ende einer Datei anzugeben, unterstützen viele Textredakteure und Programmsprachen diese Konvent sie in Textdateien. In solchen Fällen wird es häufig als "weiches" EOF bezeichnet, da es nicht unbedingt das physische Ende der Datei darstellt, sondern eher ein Marker, der angibt, dass "es keine nützlichen Daten gibt, die über diesen Punkt hinausgehen". In Wirklichkeit können mehr Daten bis zum tatsächlichen Ende der Daten im Dateisystem über dieses Zeichen hinaus existieren. Daher kann sie verwendet werden, um Dateiinhalte auszublenden, wenn die Datei an der Konsole eingegeben oder in den Editoren geöffnet wird. Viele Dateiformatstandards (z. Png oder GIF) Fügen Sie den Subcharakter in ihre Header ein, um diese Funktion genau auszuführen. Einige moderne Textdateiformate (z. CSV-1203[10]) Empfehlen Sie weiterhin ein nachverfolgunges EOF -Zeichen, das als letzter Zeichen in der Datei angehängt werden soll. Jedoch typieren Kontrolle+Z Steckt kein EOF -Zeichen in eine Datei in beide ein DOS oder Fenster, auch nicht das Apis Diese Systeme verwenden das Zeichen, um das tatsächliche Ende einer Datei zu bezeichnen.

Einige Programmiersprachen (z. Visual Basic) Lesen Sie bei Verwendung der integrierten Textdatei-Primitive (Eingabe, Zeileneingabe usw.) nicht über ein "sanftes" EOF vorbei, und alternative Methoden müssen angewendet werden, z. Öffnen Sie die Datei im Binärmodus oder verwenden Sie das Dateisystemobjekt, um darüber hinaus Fortschritte zu machen.

Das Zeichen 26 wurde verwendet, um "Ende der Datei" zu markieren, obwohl ASCII diesen Zeichenersatz aufruft und andere Zeichen zum "Ende der Datei" angibt. Nummer 28, die genannt wird "Dateiabscheider"wurde auch für ähnliche Zwecke verwendet.

Andere Verwendungen

Im Unix-Sähnliche Betriebssysteme, dieses Zeichen wird normalerweise in verwendet Muscheln als Möglichkeit für den Benutzer zu aussetzen Derzeit führt der interaktive Prozess aus.[11] Das suspendierte Prozess kann dann wieder aufgenommen werden Vordergrund (interaktiver) Modus oder zur Wiederaufnahme der Ausführung in Hintergrund Modus oder sein beendet. Bei Eingabe von einem Benutzer bei seinem ComputerterminalDer derzeit laufende Vordergrundprozess wird als "Terminal Stopp" gesendet (SIGTSTP) Signal, das im Allgemeinen dazu führt, dass der Prozess seine Ausführung aushält. Der Benutzer kann die Prozessausführung später mit dem Befehl "Vordergrund" fortsetzen (Befehl "Vordergrund" (fg) oder der "Hintergrund" Befehl (BG).

Der Bericht über die Überlegungen zur Sicherheit von Unicode[12] Empfiehlt diesen Charakter als sicherer Ersatz für unerträgliche Zeichen während der Charakter -Set -Konvertierung.

In vielen GUIs und Anwendungen,, Kontrolle+Z (⌘ Befehl+Z an Mac OS) kann benutzt werden um rückgängig machen die letzte Aktion. In vielen Anwendungen können frühere Aktionen als die letzten durch Drücken rückgängig gemacht werden Kontrolle+Z mehrmals. Kontrolle+Z war einer von einer Handvoll von Klaviatur Sequenzen, die von den Programmdesignern ausgewählt wurden Xerox Parc kontrollieren Textbearbeitung.

Darstellung

ASCII und Unicode Darstellung von "Ersatz":

  • Oktalcode: 32
  • Dezimalcode: 26
  • Hexadezimalcode: 1a, U+001a
  • Mnemonisches Symbol: Sub
  • Binärwert: 11010

Siehe auch

Verweise

  1. ^ "Tastaturverknüpfungen für Windows". Microsoft -Unterstützung. Microsoft. Abgerufen 2012-06-02.
  2. ^ "Tabelle der IO -Geräteeigenschaften - Konsole oder Teletypewriter". PDP-6-Multiprogrammierungssystemhandbuch (PDF). Maynard, Massachusetts, USA: Digital Equipment Corporation (Dez). 1965. p. 43. Dec-6-0-ex-sys-um-ip-pre00. Archiviert (PDF) vom Original am 2014-07-14. Abgerufen 2014-07-10. (1+84+10 Seiten)
  3. ^ "5.1.1.1. Gerätsabhängige Funktionen - Datenmodi - Full -Duplex -Software A (ASCII) und Al (ASCII -Zeile)". PDP-10-Referenzhandbuch: Kommunikation mit dem Monitor-Zeitteilungsmonitore (PDF). Vol. 3. Digital Equipment Corporation (Dez). 1969. S. 5-3-5-6 [5-5 (431)]. Archiviert (PDF) vom Original am 2011-11-15. Abgerufen 2014-07-10. (207 Seiten)
  4. ^ Elliott, John C. (1998). "CP/M 1,4 Discformate". Archiviert vom Original am 2020-11-14. Abgerufen 2021-11-18.
  5. ^ Elliott, John C. (1998). "CP/M 2.2 -Disc -Formate". Archiviert vom Original am 2020-11-05. Abgerufen 2021-11-18.
  6. ^ "2. Betriebssystem -Anrufkonventionen". CP/M 2.0 -Schnittstellenhandbuch (PDF) (1 ed.). Pacific Grove, Kalifornien, USA: Digitale Forschung. 1979. p. 5. Archiviert (PDF) vom Original am 2020-02-28. Abgerufen 2020-02-28. [...] das Ende eines ASCII Datei wird mit a bezeichnet Kontrolle-Z Zeichen (1AH) oder ein echtes Ende der Datei, zurückgegeben von der CP/m Operation lesen. In Maschinencode-Dateien eingebettete Steuerelement-Z-Zeichen (z. B.,, Com Dateien) werden jedoch ignoriert, und das durch CP/M zurückgegebene Ende der Dateibedingung wird zur Beendigung von Lesevorgängen verwendet. [...] (56 Seiten)
  7. ^ Hogan, Thom (1982). "3. CP/M Transient -Befehle". OSborne CP/M -Benutzerhandbuch - Für alle CP/M -Benutzer (2 ed.). Berkeley, Kalifornien, USA: A. Osborne/McGraw-Hill. p.74. ISBN 0-931988-82-9. Abgerufen 2020-02-28. [...] CP/m markiert das Ende eines ASCII Datei durch Platzieren a Kontrolle-Z Zeichen in der Datei nach dem letzten Datenzeichen. Wenn die Datei ein genaues Vielfaches von 128 Zeichen enthält, würde dies in diesem Fall 127 Zeichen verschwenden, CP/M nicht. Verwendung des Kontroll-Z-Charakters als das Dateiende Marker ist möglich, weil Control-Z selten als Daten in ASCII-Dateien verwendet wird. In einer Nicht-ASCII-Datei tritt Control-Z jedoch genauso wahrscheinlich wie jedes andere Zeichen auf. Daher kann es nicht als Marker am Ende des Datei verwendet werden. CP/M verwendet eine andere Methode, um das Ende einer Nicht-ASCII-Datei zu markieren. CP/M geht davon aus, dass es das Ende der Datei erreicht hat, wenn der letzte Datensatz (Grundeinheit des Speicherplatzes) der Datei zugewiesen wurde. Der Festplattenverzeichniseintrag für jede Datei enthält eine Liste der dieser Datei zugewiesenen Festplattensätzen. Diese Methode beruht eher auf der Größe der Datei als auf ihrem Inhalt, um das Ende der Datei zu lokalisieren. [...] [1][2]
  8. ^ Elliott, John C. (1998). "CP/M 3.1 -Disc -Formate". Archiviert vom Original am 2021-10-26. Abgerufen 2021-11-18.
  9. ^ Elliott, John C. (1998). "CP/M 4.1 -Disc -Formate". Archiviert vom Original am 2020-11-05. Abgerufen 2021-11-18.
  10. ^ CSV-1203-Formatspezifikation Archiviert 2016-05-16 im portugiesischen Webarchiv
  11. ^ "Schnelle Referenz: UNIX -Befehle". Es verbindet sich. Universität von Washington. Abgerufen 2012-06-02.
  12. ^ Überlegungen zur Sicherheit von Unicode -Sicherheit

Weitere Lektüre