ลงทะเบียน
ใกล้กัน ช่วยให้คุณแชร์เรื่องราวต่างๆ กับผู้คนมากมาย

รหัส ASCII และ Unicode ต่างกันอย่างไร

รหัส ASCII และ Unicode ต่างกันอย่างไร

Post in:Uncategorized - โดย - Jan 07, 2018

รหัสแทนข้อมูล ( รหัส ASCII และ รหัส Unicode ) ทั้งสองแบบเป็นกลุ่มบิต ทำให้คอมพิวเตอร์รู้ว่า 0100 0001 คือตัวอักษร A เรียกว่า 1 byte

รหัส ASCII คือตารางตัวอักษรในยุคแรกใช้กลุ่มบิต 8 ตัว 0100 0001 เรียกว่า 8bit เท่ากับ 1 byte

รหัส Unicode ปัจจุบันข้อมูลมากขึ้นเกิน ASCII จะรองรับไหว จึงคิดค้นให้ใช้ 16บิต พบว่าสามารถรองรับข้อมูลได้มหาศาล

 

มีรายละเอียดที่น่าสนใจดังนี้

รหัส ASCII แอสกี หรือ รหัสมาตรฐาน ของสหรัฐอเมริกาเพื่อการแลกเปลี่ยนสารสนเทศ (อังกฤษ: ASCII: American Standard Code for Information Interchange) เป็นรหัสอักขระที่ประกอบด้วยอักษรละติน เลขอารบิก เครื่องหมายวรรคตอน และสัญลักษณ์ต่างๆ โดยแต่ละรหัสจะแทนด้วยตัวอักขระหนึ่งตัว เช่น รหัส 65 (เลขฐานสิบ) ใช้แทนอักษรเอ (A) พิมพ์ใหญ่ เป็นต้น

ประวัติ รหัสแอสกีมีใช้ในระบบคอมพิวเตอร์ และเครื่องมือสื่อสารแบบดิจิทัลต่างๆ พัฒนาขึ้นโดยคณะกรรมการ X3 ซึ่งอยู่ภายใต้การดูแลของสมาคมมาตรฐานอเมริกา (American Standards Association) ภายหลังกลายเป็น สถาบันมาตรฐานแห่งชาติอเมริกา (American National Standard Institute : ANSI) ในปี ค.ศ. 1969 โดยเริ่มต้นใช้ครั้งแรกในปี ค.ศ. 1967 ซึ่งมีอักขระทั้งหมด 128 ตัว (7 บิต) โดยจะมี 33 ตัวที่ไม่แสดงผล (unprintable/control character) ซึ่งใช้สำหรับควบคุมการทำงานของคอมพิวเตอร์บางประการ เช่น การขึ้นย่อหน้าใหม่สำหรับการพิมพ์ (CR & LF - carriage return and line feed) การสิ้นสุดการประมวลผลข้อมูลตัวอักษร (ETX - end of text) เป็นต้น และ อีก 95 ตัวที่แสดงผลได้ (printable character) ดังที่ปรากฏตามผังอักขระ (character map) ด้านล่าง รหัสแอสกีได้รับการปรับปรุงล่าสุดเมื่อ ค.ศ. 1986 ให้มีอักขระทั้งหมด 256 ตัว (8 บิต) และเรียกใหม่ว่าแอสกีแบบขยาย อักขระที่เพิ่มมา 128 ตัวใช้สำหรับแสดงอักขระเพิ่มเติมในภาษาของแต่ละท้องถิ่นที ่ใช้ โดยจะมีผังอักขระที่แตกต่างกันไปในแต่ละภาษาซึ่งเรียกว่า โคดเพจ (codepage) โดยอักขระ 128 ตัวแรกส่วนใหญ่จะยังคงเหมือนกันแทบทุกโคดเพจ มีส่วนน้อยที่เปลี่ยนแค่บางอักขระ
ASCII เป็นรูปแบบปกติของไฟล์ข้อความ (text file) ในคอมพิวเตอร์ และอินเตอร์เน็ต ในไฟล์ ASCII อักษรแต่ละตัว ตัวเลข หรืออักษรพิเศษ จะได้รับการแสดงด้วยตัวเลขฐานสอง ซึ่งสามารถใช้ระบุตัวอักษรได้ 128 ตัว

ระบบ ปฏิบัติการ UNIX และ DOS (ยกเว้น Windows NT) ใช้ ASCII สำหรับไฟล์ข้อความ ระบบ Windows NT ใช้รหัสแบบใหม่ คือ Unicode ในระบบ IBM 390 ใช้รหัส 8 หลัก เรียกว่า extended binary-decimal interchange code โปรแกรมแปลงยินยอมให้ระบบปฏิบัติที่แตกต่างกันแปลงไฟล์จาก รหัสหนึ่งเป็น อีกรหัสหนึ่ง

ตัวอย่าง รหัสแทนข้อมูลแบบ ASCII
 
บิตที่
7
6
5
4
3
2
1
 
 
1
1
1
1
1
แทน 7
 
1
1
1
1
แทน G
 
1
1
1
1
1
แทน g
 
1
1
1
แทน J
 
1
1
1
1
แทน +
 
จากหลักการของระบบเลขฐานสอง แต่ละบิตสามารแทนค่าได้ 2 แบบ คือ เลข 0 หรือเลข 1 ถ้าเราเขียนเลขฐานสอง เรียงกัน 2 บิต ในการแทนอักขระ เราจะมีรูปแบบในการแทนอักขระได้ 2 หรือ 4 รุปแบบคือ 00 ,01 ,10 ,11 ดังนั้นในการใช้รหัสแอสกีซึ่งมี 8 บิต ในการแทนอักขระแล้ว เราจะมีรูปแบบที่ใช้แทนถึง 28 หรือ 256 รูปแบบ ซึ่งเมื่อใช้แทนตัวอักษรภาษาอังกฤษแล้ว ยังมีเหลืออยู่ สำนักงานมาตรฐานผลิตภัณฑ์อุตสาหกรรม หรือ สมอ.จึงได้กำหนดรหัสภาษาไทยเพิ่มลงไปเพื่อให้ใช้งานร่วมกั น
 
ตัวอย่าง การแทนข้อมูลในเครื่องคอมพิวเตอร์
 
A
0100 0001
X
0101 1000
B
0100 0010
Y
0101 1001
C
0100 0011
Z
0101 1010
D
0100 0100
0011 0000
E
0100 0101
1
0011 0001
F
0100 0110
2
0011 0010
G
0100 0111
3
0011 0011
H
0100 1000
4
0011 0100
I
0100 1001
5
0011 0101
J
0100 1010
6
0011 0110
K
0100 1011
7
0011 0111
L
0100 1100
8
0011 1000
M
0100 1101
9
0011 1001
N
0100 1110
.
0010 1110
O
0100 1111
(
0010 1000
P
0101 0000
+
0010 1011
Q
0101 0001
$
0010 0100
R
0101 0010
*
0010 1010
S
0101 0011
)
0010 1001
T
0101 0100
-
0010 1101
U
0101 0101
/
0010 1111
V
0101 0110
'
0010 1100
W
0101 0111
=
0010 1101
 
รหัส UNICODE
 
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 ตรงช่วงนั้นเป็นภาษาจีน ตรงโน่นเป็นภาษาญี่ปุ่น จะไม่ใช้ที่ซ้ำกัน เป็นต้น
 
ยูนิโคด (อังกฤษ: Unicode) คือมาตรฐานอุตสาหกรรมที่ช่วยให้คอมพิวเตอร์แสดงผลและจัดการข้อความธรรมดาที่ใช้ในระบบการเขียนของภาษาส่วนใหญ่ในโลกได้อย่างสอดคล้องกัน ยูนิโคดประกอบด้วยรายการอักขระที่แสดงผลได้มากกว่า 100,000 ตัว พัฒนาต่อยอดมาจากมาตรฐานชุดอักขระสากล (Universal Character Set: UCS) และมีการตีพิมพ์ลงในหนังสือ The Unicode Standard เป็นแผนผังรหัสเพื่อใช้เป็นรายการอ้างอิง นอกจากนั้นยังมีการอธิบายวิธีการที่ใช้เข้ารหัสและการนำเส นอมาตรฐานของการเข้ารหัสอักขระอีกจำนวนหนึ่ง การเรียงลำดับอักษร กฎเกณฑ์ของการรวมและการแยกอักขระ รวมไปถึงลำดับการแสดงผลของอักขระสองทิศทาง (เช่นอักษรอาหรับหรืออักษรฮีบรูที่เขียนจากขวาไปซ้าย)
 
ยูนิโคดคอนซอร์เทียม (Unicode Consortium) ซึ่งเป็นองค์กรไม่แสวงหาผลกำไร เป็นผู้รับผิดชอบในการพัฒนายูนิโคด องค์กรนี้มีจุดมุ่งหมายเกี่ยวกับการแทนที่การเข้ารหัสอักข ระที่มีอยู่ด้วยยูนิโคดและมาตรฐานรูปแบบการแปลงยูนิโคด (Unicode Transformation Format: UTF) แต่ก็เป็นที่ยุ่งยากเนื่องจากแผนการที่มีอยู่ถูกจำกัดไว้ด ้วยขนาดและขอบเขต ซึ่งอาจไม่รองรับกับสภาพแวดล้อมหลายภาษาในคอมพิวเตอร์
ความสำเร็จของยูนิโคดคือการรวมรหัสอักขระหลายชนิดให้เป็นห นึ่งเดียว นำไปสู่การใช้งานอย่างกว้างขวางและมีอิทธิพลต่อการแปลภาษา ของซอฟต์แวร์คอมพิวเตอร์ นั่นคือโปรแกรมจะสามารถใช้ได้หลายภาษา มาตรฐานนี้มีการนำไปใช้เป็นเทคโนโลยีหลักหลายอย่าง
 
ยูนิโคดสามารถนำไปใช้งานได้ด้วยชุดอักขระแบบต่าง ๆ ชุดอักขระที่เป็นที่รู้จักมากที่สุดคือ UTF-8 (ใช้ 1 ไบต์สำหรับอักขระทุกตัวในรหัสแอสกีและมีค่ารหัสเหมือนกับมาตรฐานแอสกี หรือมากกว่านั้นจนถึง 4 ไบต์สำหรับอักขระแบบอื่น) UCS-2 ซึ่งปัจจุบันเลิกใช้แล้ว (ใช้ 2 ไบต์สำหรับอักขระทุกตัว แต่ไม่ครอบคลุมอักขระทั้งหมดในยูนิโคด) และ UTF-16 (เป็นส่วนขยายจาก UCS-2 โดยใช้ 4 ไบต์สำหรับแทนรหัสอักขระที่ขาดไปของ UCS-2)
ทำงานด้วย Windows

User not write anything about he.
Captcha Challenge
ลองรูปภาพใหม่
Type in the verification code above

It will be interesting: