這聽起來有些混亂(Escape鍵後面跟着換碼符),但這也正是這些字符之所以被叫做換碼符的原因。Escape鍵用來通知字符的接收者下一個字符是換碼符,而不是普通的字符。換碼符本身可以是任何字符,甚至可以是另一個Escape鍵。具體用什麼字符來代表所要求的命令,由讀入這些字符並等待相應命令的程序來決定。
這方面的一個例子是ANSI.SYS設備驅動程序,該程序由CONFIG.SYS文件裝入,它會攔截所有送往屏幕的字符,並按換碼序列的要求處理這些字符。ANSI.SYS的作用是提供一種方法來打印彩色的、帶下劃線的或閃爍的文本,或者執行象清屏這樣的高級命令。ANSI.SYS的優點在於你不必知道你使用的是哪種顯示器或顯示卡,因爲ANSI.SYS會替你處理這個問題。你只需在要送往屏幕的字符串中的合適位置加入換碼符,ANSI.SYS會替你處理其餘的事情。例如,如果你輸入了“\033H4Hello there,”ANSI.SYS就會在屏幕上打印出紅色的“Hello there”——它將發現Escape鍵(\033),讀入命令(在這裏是H4,即以紅色打印其餘的字符),然後打印其餘的字符("Hello there")。
在ANSI.SYS之前,換碼符被用在老式的集中化計算機環境(一個主機連接着很多啞終端)中。在那個時代,終端自身沒有計算能力,不能顯示圖形,而且大部分都是單色的,不能顯示彩色。但是,每臺顯示器都有一套由主機發送給顯示器的換碼符,用來指示顯示器做清屏、加下劃線或閃爍這樣一些事情。與使用ANSI.SYS一樣,只要程序員在發送給顯示器的字符串中加入換碼符,顯示器就會執行相應的命令。
今天,這種類型的換碼序列已經不再使用了。然而,當時還有許多其它類型的被定義爲換碼符的字符序列,它們一直被延用至今,並且仍然在被廣泛使用。例如,在介紹如何把一個八進制值或十六進制值賦給一個變量的問題中,筆者就使用了一種換碼符(在十六進制中使用“Ox”,在八進制中使用“\”)。注意,這些字符並沒有用Escape鍵來作特殊標識,但它們的確被用來表示其後的字符有某種特殊性。實際上,反斜槓(\)經常被當作一個換碼符來使用。例如,在c語言中,你可以用“\n”來通知計算機“執行一次換行操作”,或者用“\t”來執行前進一個tab符的操作,等等