ASCIIコードというか、制御文字。
制御文字の'^D'みたいな表記と、Ctrlキー押しながらDを押す、の関係が気になって調べてみた。
なお、印字可能文字のうち、"@"から始まる32文字については、ASCII値を64減じて対応する制御文字を求め、この制御文字を"コントロール+"(英:control+)という前置表現を付けた印字可能文字で表記する慣習がある。
例: BELコード(07)→"コントロール+G"(受信した側の機器で注意喚起音が鳴る)
この制御文字の表記方法は、キーボード上の印字可能文字キーを制御文字の送出に用いていた機器の名残りであると考えられる。(7ビット目を0にセットする専用キー(Ctrlキー)を、印字可能文字キーと同時に押して制御文字を送出)。
そんな関係性があったのか。単純にAから並べたのかと思ってた。*1
他にもこんな関係性が。
備考 : 大文字のASCII値に32を加えると小文字に変換することが出来る。この変換は、2進法では、6ビット目に1をセットするだけでよい。また、数字から48を減じれば、対応する値が得られる。この変換は、5ビット目及び6ビット目に0をセットするか、あるいは単純に上位4ビットを無視するだけでもよい。
結構考えられてるんだなぁ。大文字小文字を気にせず、って時は6ビット目を無視すればいいのか。*2
で、コントロールなんとか、と制御文字の関係。なぜかwikipedia日本語版には無くて英語版にはあったので、英語版を見ながら。
http://en.wikipedia.org/wiki/ASCII#ASCII_control_characters
- ^D
- End of Transmission
微妙に違うような気もするけど。
- ^H
- Backspace
これもここからなのかぁ。winXPのログイン時に使えてびっくりした。FC5だと使えなかった。
- ^I
- Horizontal Tab
普通のタブ。
- ^J
- Line feed
CRLFのLF。意味がちょっと違うような気もするけど、Emacsでよく使う。何かうまいこと改行してくれる。あとlispなのを実行したり。*3
- ^M
- Carriage return
CRLFのCR。Enterキーと同じ意味らしい。Enter押せばいいじゃん、とか思うんだけど。
- ^Q
- Device Control 1 (oft. XON)
- ^S
- Device Control 3 (oft. XOFF)
聞いたことあるけど、よくわからん。
- ^[
- Escape
*4
Emacsで Meta- な感じでよく使う。Escキー遠いよう。
結構あるんだなぁ、という印象。いや、普通にwindows使ってると、まったく関係ないけどさ。