รหัส ASCII
ประวัติ
รหัสแอสกีมีใช้ในระบบคอมพิวเตอร์ และเครื่องมือสื่อสารแบบดิจิทัลต่างๆ พัฒนาขึ้นโดยคณะกรรมการ X3 ซึ่งอยู่ภายใต้การดูแลของสมาคมมาตรฐานอเมริกา (American Standards Association) ภายหลังกลายเป็น สถาบันมาตรฐานแห่งชาติอเมริกา (American National Standard Institute :
ANSI) ในปี ค.ศ. 1969 โดยเริ่มต้นใช้ครั้งแรกในปี ค.ศ. 1967 ซึ่งมีอักขระทั้งหมด 128ตัว (7 บิต) โดยจะมี 33 ตัวที่ไม่แสดงผล (unprintable/control
character) ซึ่งใช้สำหรับควบคุมการทำงานของคอมพิวเตอร์บางประการ
เช่น การขึ้นย่อหน้าใหม่สำหรับการพิมพ์ (CR & LF - carriage return and line feed) การสิ้นสุดการประมวลผลข้อมูลตัวอักษร (EOT - end of text)เป็นต้น และ
อีก 95 ตัวที่แสดงผลได้ (printable character) ดังที่ปรากฏตามผังอักขระ (character map) ด้านล่าง
รหัสแอสกีได้รับการปรับปรุงล่าสุดเมื่อ ค.ศ. 1986 ให้มีอักขระทั้งหมด 256 ตัว
(8 บิต)
สำหรับแสดงอักขระเพิ่มเติมในภาษาของแต่ละท้องถิ่นที่ใช้ เช่น ภาษาเยอรมัน ภาษารัสเซีย ฯลฯ
โดยจะมีผังอักขระที่แตกต่างกันไปในแต่ละภาษาซึ่งเรียกว่า โคดเพจ (code page) โดยอักขระ 128 ตัวแรกส่วนใหญ่จะยังคงเหมือนกันแทบทุกโคดเพจ
มีส่วนน้อยที่เปลี่ยนแค่บางอักขระ
รหัสที่เป็นมาตรฐาน คือ
รหัส ASCII
American Standard Code For Information Interchange (ASCII) อ่านว่า แอส-กี้
เป็นรหัสที่พัฒนาขึ้นโดยสถาบันมาตรฐานแห่งชาติสหรัฐอเมริกา (American
National Standard Institute: ANSI อ่านว่า แอน-ซาย) เรียกว่า ASCII
Code ซึ่งเป็นที่นิยมในกลุ่มผู้สร้างเครื่องคอมพิวเตอร์ทั่วไป
รหัสนี้ได้มาจากรหัสขององค์กรมาตรฐานระหว่างประเทศ (International
Standardization Organization: ISO) ขนาด 7 บิท
ซึ่งสามารถสร้างรหัสที่แตกต่างกันได้ถึง 128 รหัส (ตั้งแต่ 000
0000 ถึง 111 1111) โดยกำหนดให้ 32 รหัสแรกเป็น 000 0000 ถึง 001 1111 ทำหน้าที่เป็นสั่งควบคุม เช่น รหัส 000 1010 แทนการเลื่อนบรรทัด
(Line Feed)ในเครื่องพิมพ์ เป็นต้น และอีก 96 รหัสถัดไป (32-95) ใช้แทนอักษรและสัญลักษณ์พิเศษอื่นรหัส
ASCII ใช้วิธีการกำหนดการแทนรหัสเป็นเลขฐานสิบ
ทำให้ง่ายต่อการจำและใช้งาน นอกจากนั้นยังสามารถเขียนมนรูปของเลขฐานสิบหกได้ด้วย
รหัส ASCII
รหัสแอสกี
(ASCII) เป็นมาตรฐานที่นิยมใช้กันมากในระบบคอมพิวเตอร์ส่วนใหญ่
เป็นคำย่อมาจาก American Standard Code
Information Interchange เป็นรหัส 8 บิต
แทนสัญลักษณ์ต่าง ๆ ได้ 256 ตัว
เมื่อใช้แทนตัวอักษรภาษาอังกฤษแล้ว ยังมีเหลืออยู่
สำนักงานมาตรฐานผลิตภัณฑ์อุตสาหกรรม หรือ สมอ. ได้กำหนดรหัสภาษาไทยเพิ่มลงไปเพื่อให้ใช้งานร่วมกันได้ตามตาราง
วิธีการอ่านค่าจากตารางแอสกี
1. ชี้ตรงตัวอักษรที่ต้องการแทนรหัส
เช่น ก
2. อ่านค่ารหัสในตารางแนวตั้งตรงตำแหน่ง b7 b6 b5 และ b4 ค่าที่ได้ คือ 1010
3. อ่านค่ารหัสในตารางแนวนอนตรงตำแหน่ง b3 b2 b1 และ b0 ค่าที่ได้ คือ 0001
4. ดังนั้นรหัสแทนข้อมูลของตัวอักษร ก คือ 1010 0001
2. อ่านค่ารหัสในตารางแนวตั้งตรงตำแหน่ง b7 b6 b5 และ b4 ค่าที่ได้ คือ 1010
3. อ่านค่ารหัสในตารางแนวนอนตรงตำแหน่ง b3 b2 b1 และ b0 ค่าที่ได้ คือ 0001
4. ดังนั้นรหัสแทนข้อมูลของตัวอักษร ก คือ 1010 0001
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
รหัส Unicode
ยูนิโค๊ด คือ รหัสคอมพิวเตอร์ใช้แทนตัวอักขระ สามารถใช้แทน ตัวอักษร,ตัวเลข,สัญลักษณ์ต่างๆ ได้มากกว่ารหัสแบบเก่าอย่าง ASCII ซึ่งเก็บตัวอักษรได้สูงสุดเพียง 256 ตัว(รูปแบบ) โดย Unicdoe รุ่นปัจจุบันสามารถเก็บตัวอักษรได้ถึง 34,168 ตัวจากภาษาทั้งหมดทั่วโลก 24 ภาษา โดยไม่สนใจว่าเป็นแพลตฟอร์มใด ไม่ขึ้นกับโปรแกรมใด หรือภาษาใด unicode ได้ถูกนำไปใช้โดยผู้นำในอุตสาหกรรม เช่น Apple, HP, IBM, Microsoft, Unix ฯลฯ และเป็นแนวทางอย่างเป็นทางการในการทำ ISO /IEC 10646 ดังนั้น Unicode จึงถือเป็นมาตรฐานในการกำหนดรหัส สำหรับทุกตัวอักษร ทุกอักขระ unicode ทำให้ข้อมูลสามารถเคลื่อนย้ายไปมาในหลายๆ ระบบ ข้ามแพลตฟอร์มไปมา หรือข้ามโปรแกรมได้อย่างสะดวก โดยไร้ข้อจำกัด
Unicode ต่างจาก ASCII
คือ ASCII เก็บ byte เดียว แต่ Unicode เก็บ 2 byte ซึ่งข้อมูล 2 byte เก็บข้อมูลได้มากมายมหาศาล สามารถเก็บข้อมูลได้มากมายหลายภาษาในโลก
อย่างภาษาไทยก็อยู่ใน Unicode นี้ด้วยเหมือนกัน ดังนั้นรหัสภาษาไทยเอาไปเปิดในภาษาจีน ก็ยังเป็นภาษาไทยอยู่ ไม่ออกมาเป็นภาษาจีน เพราะว่ามี code ตายตัวอยู่ว่า code นี้จองไว้สำหรับภาษาไทย แล้ว code ตรงช่วงนั้นเป็นภาษาจีน ตรงโน่นเป็นภาษาญี่ปุ่น จะไม่ใช้ที่ซ้ำกัน เป็นต้น
คือ ASCII เก็บ byte เดียว แต่ Unicode เก็บ 2 byte ซึ่งข้อมูล 2 byte เก็บข้อมูลได้มากมายมหาศาล สามารถเก็บข้อมูลได้มากมายหลายภาษาในโลก
อย่างภาษาไทยก็อยู่ใน Unicode นี้ด้วยเหมือนกัน ดังนั้นรหัสภาษาไทยเอาไปเปิดในภาษาจีน ก็ยังเป็นภาษาไทยอยู่ ไม่ออกมาเป็นภาษาจีน เพราะว่ามี code ตายตัวอยู่ว่า code นี้จองไว้สำหรับภาษาไทย แล้ว code ตรงช่วงนั้นเป็นภาษาจีน ตรงโน่นเป็นภาษาญี่ปุ่น จะไม่ใช้ที่ซ้ำกัน เป็นต้น
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
แทนชื่อ-สกุล ด้วยรหัส ASCII
ANIRUT PATIMIN
A 0100 0001
N 0100 1110
I 0100 1001
R 0101 0010
U 0101 0101
T 0101 0100
space 0100 0000
P 0101 0000
A 0100 0001
T 0101 0100
I 0100 1001
M 0100 1101
I 0100 1001
N 0100 1110
ทั้งหมด 112 bit = 14 byte
|
ไม่มีความคิดเห็น:
แสดงความคิดเห็น