← กลับไปยังบทความทั้งหมด

ISO/IEC 2022 มาตรฐานการเข้ารหัสตัวอักษรและเทคนิคการขยาย

สรุปใจความสำคัญ

  • ISO/IEC 2022 เป็นมาตรฐานที่เทียบเท่ากับ ECMA-35, ANSI X3.41 และ JIS X 0202
  • รองรับการสลับชุดตัวอักษรผ่าน Escape Sequences ทำให้สามารถใช้หลายภาษาในเอกสารเดียวได้
  • ออกแบบมาให้ทำงานได้ในสภาพแวดล้อม 7-bit และ 8-bit เพื่อความเข้ากันได้กับระบบเครือข่ายรุ่นเก่า

ISO/IEC 2022 คือมาตรฐานสากลในด้านเทคโนโลยีสารสนเทศที่กำหนดโครงสร้างการเข้ารหัสตัวอักษรและเทคนิคการขยาย เพื่อให้ระบบคอมพิวเตอร์สามารถแสดงผลตัวอักษรจากภาษาต่างๆ ได้อย่างถูกต้อง โดยมาตรฐานนี้มีความเทียบเท่ากับมาตรฐาน ECMA-35, ANSI X3.41 และ JIS X 0202

โครงสร้างพื้นฐานของ ISO 2022

ISO 2022 กำหนดโครงสร้างทั่วไปที่การเข้ารหัสตัวอักษรสามารถปฏิบัติตามได้ โดยมีการแบ่งช่วงของไบต์ (0x00–1F และ 0x7F–9F) ไว้สำหรับ รหัสควบคุม (Control Codes) ที่ไม่ใช่ตัวอักษรที่แสดงผลได้ (Non-printing) เพื่อใช้ในการจัดรูปแบบหรือคำสั่งในแบนด์ (In-band instructions) เช่น การขึ้นบรรทัดใหม่ หรือคำสั่งสำหรับเทอร์มินัล

การใช้ Escape Sequences

หนึ่งในคุณสมบัติเด่นของ ISO 2022 คือการกำหนดไวยากรณ์สำหรับ Escape Sequences ซึ่งเป็นลำดับของไบต์ที่เริ่มต้นด้วยรหัสควบคุม ESC เพื่อใช้เป็นคำสั่งในการสลับเปลี่ยนระหว่างชุดตัวอักษรที่แตกต่างกัน (เช่น การสลับจาก ASCII ไปเป็น JIS X 0208 ของญี่ปุ่น) ทำให้สามารถใช้หลายชุดตัวอักษรในเอกสารฉบับเดียวได้ ซึ่งเป็นลักษณะของ Stateful Encoding

การรองรับภาษาและระบบการเข้ารหัส

มาตรฐานนี้ถูกออกแบบมาให้ใช้งานได้ทั้งในสภาพแวดล้อมแบบ 8-bit และ 7-bit (เช่น อีเมลในสมัยก่อนที่ยังไม่รองรับ 8BITMIME)

การเข้ารหัสสำหรับภาษาในเอเชียตะวันออก (CJK)

ภาษาจีน (Chinese), ญี่ปุ่น (Japanese) และเกาหลี (Korean) หรือที่เรียกว่า CJK มีจำนวนตัวอักษรมากกว่า 256 ตัว ซึ่งไม่สามารถแทนที่ได้ด้วยไบต์เดียว ดังนั้นจึงมีการใช้การเข้ารหัสแบบหลายไบต์ (Double-byte) หรือความกว้างแปรผัน ซึ่งบางมาตรฐาน เช่น GB 2312 ของจีน ได้ปฏิบัติตาม ISO 2022 ในขณะที่บางมาตรฐาน เช่น Big5 ไม่ได้ปฏิบัติตาม

ความสัมพันธ์กับ Unicode และ UTF-8

แม้ว่า Unicode จะได้รับแนวคิดเรื่องรหัสควบคุม C0 และ C1 จาก ISO 2022 แต่รูปแบบการแปลงข้อมูล (Transformation Formats) เช่น UTF-8 มักจะแตกต่างจากโครงสร้างของ ISO 2022 ในหลายด้าน เช่น การไม่แทนที่รหัส C1 ในรูปแบบไบต์เดียว หรือการใช้หลายไบต์สำหรับทุกตัวอักษรรวมถึงรหัสควบคุม

สรุปองค์ประกอบของ ISO/IEC 2022

องค์ประกอบรายละเอียด
โครงสร้างพื้นฐานรองรับหลายชุดตัวอักษรในระบบเดียว รวมถึงรหัสควบคุม C0 และ C1
รูปแบบการเข้ารหัสรองรับทั้งสภาพแวดล้อม 7-bit และ 8-bit
Escape Codesกำหนดรูปแบบรหัสหลีก (Escape codes) เพื่อระบุชุดตัวอักษรและสลับระบบการเข้ารหัส

คำถามที่พบบ่อย

ISO/IEC 2022 แตกต่างจาก Unicode อย่างไร?

ISO/IEC 2022 ใช้ระบบการสลับสถานะ (Stateful) ผ่าน Escape Sequences เพื่อเปลี่ยนชุดตัวอักษร ในขณะที่ Unicode ออกแบบมาให้เป็นชุดตัวอักษรเดียวที่ครอบคลุมทุกภาษาในโลกโดยไม่ต้องสลับชุดตัวอักษร

ISO-2022-JP คืออะไร?

ISO-2022-JP เป็นการเข้ารหัสตัวอักษรภาษาญี่ปุ่นที่ใช้กลไกของ ISO 2022 เพื่อสลับระหว่างชุดตัวอักษร ASCII และ JIS X 0208 ซึ่งนิยมใช้กันมากในอีเมลภาษาญี่ปุ่นในอดีต

รหัสควบคุม C0 และ C1 ใน ISO 2022 คืออะไร?

รหัสควบคุม C0 (0x00–1F) และ C1 (0x7F–9F) คือรหัสที่ไม่แสดงผลเป็นตัวอักษร แต่ใช้สำหรับควบคุมการจัดรูปแบบและการสั่งงานระบบ