Usuń znak - Delete character

Znak kontrolny usuwania (zwany także DEL lub rubout ) jest ostatnim znakiem w repertuarze ASCII o kodzie 127 . Ma nic nie robić i ma za zadanie wymazywać niepoprawne znaki na taśmie papierowej . Jest oznaczony jako ^? w notacji z daszkiem i jest U + 007F w Unicode .

Emulatory terminali mogą generować DEL po wpisaniu ← Backspaceklucza lub Control+ ← Backspace lub Control+ ?.

Historia

  ·     NUL
· CR
· LF
· DEL
· SP
"Usuń" wraz z kilkoma innymi znakami kontrolnymi ASCII i spacją pojawiającą się na dziurkowanej taśmie

Ten kod był pierwotnie używany do oznaczania usuniętych znaków na dziurkowanej taśmie , ponieważ każdy znak można było zmienić na wszystkie, dziurkując wszędzie dziury. Jeśli znak został wybity błędnie, wybicie wszystkich siedmiu bitów powodowało ignorowanie lub usuwanie tej pozycji. W systemie szesnastkowym jest to 7F do wymazywania 7 bitów ( FF do wymazywania 8 bitów został użyty w przypadku kodów 8-bitowych). Znak ten może być również użyty jako dopełnienie, aby spowolnić drukowanie po znakach nowej linii, chociaż częściej używano całkowicie zerowej wartości NUL .

Teletype model 33 dostarczono klawisz oznaczony RUB OUTuderzać tę postać (po backed użytkownik się taśmę za pomocą innego przycisku), a nie podał klucz, który wyprodukował charakter Backspace (BS). Dlatego też wiele tańszych systemów komputerowych, które używały teletypii, używało tego klawisza (a tym samym kodu Delete) do ignorowania poprzedniego błędnie wpisanego znaku. Terminale wideo zaprojektowane w celu zastąpienia dalekopisu musiały następnie umieścić klucz wytwarzający ten kod w miejscu, w którym można by oczekiwać Backspace, w szczególności w produktach firmy Digital Equipment Corporation . W terminalach kompatybilnych z VT100 jest to znak generowany przez klucz oznaczony Delete. Na późniejszych terminalach, takich jak VT510 , klucz jest oznaczony (w instrukcji nazywany strzałką wsteczną) i domyślnie wysyłany jest jako DEL, ale można go skonfigurować do wysyłania BS.

Inne terminale zaprojektowane dla systemów, które nie miały historii używania teletypów, zwykle powodowały, że klucz w tej pozycji wysyłał BS, co prowadziło do wielu nieporozumień. W szczególności Unix miał irytujący problem polegający na tym, że można było w nim zaprogramować kasowanie poprzedniego znaku tylko dla jednego z nich (nie obu), co wymagało od użytkownika rekonfiguracji sterownika terminala dla każdej marki terminala. W zależności od typu terminala używanego przez projektanta, oprogramowanie czasami sprawiało, że skróty Ctrl+ Hlub Ctrl+ ?coś robiły, mimo że wysyłały one ten sam kod co BS i DEL, zakładając, że klawisz Backspace wysyłał inny kod.

Klucz oznaczony, Backspace ←który wysyła BS, jest zdecydowanie najbardziej powszechny w nowoczesnych terminalach i emulatorach. Aby upewnić się, że nie usuwają od tyłu, klawisz oznaczony "Delete" na wielu terminalach nie wysyła DEL, a zamiast tego wysyła sekwencję ucieczki, taką jak ^[[3~.

Obecne wykorzystanie

Uniksowych systemów operacyjnych można nadal używać go jako kasowania znaku, czyli usunąć poprzedni znak w trybie wiersza . Sterownika terminala nadal nie można zaprogramować do obsługi zarówno tego, jak i Backspace: należy wybrać jeden. Jednak większość nowoczesnych programów omija to i używa bibliotek takich jak readline, które akceptują oba kody. Większość emulatorów terminali uniksowych może być skonfigurowana do wysyłania Delete lub Backspace po naciśnięciu klawisza Backspace.

DOS / Windows nigdy nie używał tego znaku w żaden sposób. Sterownik klawiatury BIOS generował Backspace, gdy wpisywano klawisz Backspace i NUL z kodem skanowania 0x53, gdy wpisywano klawisz usuwania. W Windows klawisz usuwania mapuje do VK_DELETE ( 0x2E ). Czcionki EGA/VGA , jako czcionki używane przez konsolę Win32 , zwykle mają symbol „domu” ⌂ w punkcie kodowym 127 (0x7F), zobacz stronę kodową 437, aby uzyskać szczegółowe informacje. Jednak jego spuściznę można zobaczyć w częściach systemu operacyjnego Windows: na przykład Control+ ← Backspacew Notatniku Microsoft używany do wstawiania znaku usuwania, dopóki nie został zmieniony w 2018 r., Aby usunąć poprzednie słowo.

Zobacz też

Bibliografia