Can you summarize the following document?
        
  轉義字元是很多程式語言、資料格式和通訊協議的形式文法的一部分。對於一個給定的字母表,一個轉義字元的目的是開始一個字元序列,使得轉義字元開頭的該字元序列具有不同於該字元序列單獨出現(沒有轉義字元開頭)時的語義。因此轉義字元開頭的字元序列被叫做轉義序列。一個轉義字元可能並沒有它自己的意思,因此所有轉義序列具有2個或更多字元。  轉義序列通常有兩種功能。第一個是編碼一個句法上的實體,如裝置命令或者無法被字母表直接表示的特殊資料。第二種功能,也叫字元引用,用於表示無法在當前上下文中被鍵盤錄入的字元(如字串中的回車符),或者在當前上下文中會有不期望的含義的字元(如C語言字串中的雙引號字元",不能直接出現,必須用轉義序列表示)。在後面那種情況,轉義序列是一種由轉義字元自身和一個被引用的字元組成的一個二合字母(digraph)情形。

  轉義字元不屬於控制字元;控制字元也不屬於轉義字元。如果控制字元的定義是非圖形的字元,或者對輸出裝置(印表機、文字終端)有特殊意義的字元,那麼針對這些裝置的轉義字元也是控制字元。但是程式設計用的轉義字元是圖形字元,因此它們不是控制字元。相反地,大多數ASCII控制字元單獨都具有控制功能,因此它們不是轉義字元。

  在不同的程式語言中,轉義字元的使用方法均不同。

  

  ASCII的"escape"字元被用於許多輸出裝置,標誌著開始一個轉義字元序列。例如^[,後跟可列印字元codice_1,將引起DEC的VT102終端把游標移動到螢幕的第2行第10個單元。在1970年代到1980年代的人機介面中,使用Esc鍵作為轉義字元,開始一個轉義序列,是非常常見的。但現在一般放棄了這種用法。

  許多程式設計語言把雙引號字元(codice_2)用作字串的分界符。反斜線(codice_3)轉義字元提供了兩種方式來把雙引號字元置入字串中,或者是使用轉義序列codice_4表示單個的codice_2字元本身,而不是作為字串分界符;或者是直接開始字元codice_2的16進位制編碼值的轉義序列codice_7來表示codice_2。也可以使用8進位制編碼值的轉義序列,如codice_9。  在Perl或者Python程式設計語言中 將產生語法錯誤。而 將產生期望的輸出結果。 另一種可選擇的辦法是: 使用雙引號字元編碼值的十六進位制"x22"轉義字元序列。但是,如果其執行在非ASCII計算機上,將不會產生預期的結果。  C語言, C++, Java語言都具有上述兩種反斜線轉義字元的用法。PostScript語言與微軟的Rich Text Format也使用反斜線轉義字元。quoted-printable編碼使用等號(=)作為轉義字元。  URL與URI使用%-轉碼來表示特殊字元,例如非ASCII字元. SGML及其派生的HTML與XML使用&字元作為字元編碼引用的轉義字元。

  在點對點協議中,0x7D被用作轉義字元。

  Bourne shell(sh), *字元與?字元是萬用字元。如果沒有前導的轉義字元,codice_10將擴充套件為工作目錄下的所有不是點符號(.)開頭的檔名。因此,如果想引用一個檔名就叫做"*"的檔案,必須避免檔名擴充套件開,就得在它的前面加上轉義字元反斜線(codice_3)。比較下列兩個例子:

  Windows命令列終端使用^字元轉義那些具有特殊含義的保留字元(如:codice_12)。 DOS命令列終端並不支援這一轉錄。  例如,Windows命令列終端中輸入這一命令將會產生錯誤  但下述輸入將產生正確的期望結果:codice_13
在電腦科學與遠端通訊中,當轉義字元(escape character)放在字元序列時,它將對它後續的幾個字元進行替代並解釋。轉義字元是元字元的一種特殊情況。通常,判定某字元是否為轉義字元由上下文確定。轉義字元即標誌著轉義序列開始的那個字元。