コンピューティングの世界において、削除文字(delete character)とは、データの一部が削除されたことを示す特別な
制御文字です。この文字は、データの流れの中で「この部分は無視して良い」という合図として機能します。
削除文字の詳細
削除文字は、
ASCIIコードの最後に位置づけられており、10進数では127、16進数では0x7Fと表現されます。キーボードでの入力方法としては、Windowsの
メモ帳でControlキーを押しながらBackspaceキーを押すことで入力できます。また、
キャレット記法では「^?」と表記され、
Unicodeでは
制御文字の図形表現として「␡」(U+2421)が定義されています。
歴史的背景
削除文字は、その歴史の中で様々な役割を担ってきました。初期には、穿孔テープにおけるデータの修正に用いられました。穿孔テープに誤った穴を開けてしまった場合、すべての穴を穿孔することで、その部分のデータを無効化しました。この手法は、まるで修正液のように、後からデータを修正する手段として利用されました。例えば、7ビットを削除する場合は0x7F、8ビットの場合は0xFFを上書きすれば良かったのです。
また、ASR-33のような
テレタイプ端末では、1行の終わりにキャリッジリターン、ラインフィード、そして削除文字という3つの
制御文字が置かれていました。この削除文字は、
テレタイプ端末のプリントヘッドが右から左へ移動する時間を確保するための、一種の遅延挿入の役割を果たしていました。
VT100互換の端末では、Deleteキーを押すと、削除文字がホストに送信されました。一方、VT510互換の端末では、Backspaceキーを押すことで削除文字が生成されました。現代のコンピュータでは、このBackspaceキーは通常「バック
スペース」として機能し、カーソルの左側の文字を削除する役割を担っています。
現代の用法
現代の
UNIX系オペレーティングシステムでは、sttyコマンドを通じて、手前(左)の文字を削除する
制御文字として、削除文字が利用されています。これは、穿孔テープにおける本来の削除文字の機能とは異なっています。
一方、DOSやWindowsでは、
制御文字としての削除文字は一般的ではありません。これらのシステムでは、バック
スペース(0x08またはcontrol-H)が、カーソルの左側の文字を削除するために使用されます。また、Win32コンソールで使用されるEGA/VGAフォントには、「家」の記号(⌂)が127 (0x7F)に割り当てられています。
このように、削除文字は、その起源から現代に至るまで、様々な形で利用されてきました。初期のデータ修正の役割から、現代の端末における文字削除まで、削除文字はコンピューターの歴史を語る上で欠かせない存在と言えるでしょう。