กลับไปหน้าหลัก
แปลงข้อความ (ASCII/Unicode)
Google AdSense
In-Article Ad
FAQ: ระบบเข้ารหัสข้อความ ASCII และ Unicode
ASCII คืออะไร และทำไมคอมพิวเตอร์ถึงต้องใช้?
ASCII ย่อมาจาก American Standard Code for Information Interchange เป็นมาตรฐานการเข้ารหัสตัวอักษรยุคแรกเริ่มที่คิดค้นขึ้นในปี 1963 คอมพิวเตอร์ไม่รู้จักตัวอักษร 'A' หรือ 'B' มันรู้จักเพียงตัวเลข 0 และ 1 (Binary) ASCII จึงเป็นเหมือนพจนานุกรมที่แปลงตัวอักษรภาษาอังกฤษ ตัวเลข และเครื่องหมายวรรคตอน รวม 128 ตัว ให้กลายเป็นตัวเลขตั้งแต่ 0 ถึง 127 เช่น ตัว 'A' พิมพ์ใหญ่ จะถูกคอมพิวเตอร์จำจดในรูปแบบเลขฐานสิบคือ 65 หรือในรูปแบบฐานสองคือ 01000001 เป็นต้น | อ้างอิง: ANSI X3.4-1986 Standard; Computer History Museum.
จุดอ่อนของ ASCII คืออะไร และทำไมจึงต้องเกิด Unicode ขึ้นมา?
จุดอ่อนที่สำคัญที่สุดของ ASCII คือมันถูกออกแบบมาเพื่อรองรับแค่ 'ภาษาอังกฤษ' เท่านั้น โดยใช้ขนาดข้อมูลเพียง 7 บิต (เก็บอักขระได้ 128 ตัว) เมื่อคอมพิวเตอร์แพร่หลายไปทั่วโลก ประเทศต่างๆ ต้องการพิมพ์ภาษาของตนเอง เช่น ไทย ญี่ปุ่น จีน อาหรับ ซึ่ง 128 ตัวนั้นไม่เพียงพอ จึงเกิดปัญหาฟอนต์เพี้ยนหรือข้อความต่างดาว (Mojibake) บ่อยครั้งในยุคก่อน เพื่อแก้ปัญหานี้ 'Unicode' จึงถูกสร้างขึ้นมาให้เป็นมาตรฐานระดับโลก โดยสามารถจัดเก็บอักขระได้มากถึงกว่า 1.4 ล้านตัว ครอบคลุมทุกภาษาทั่วโลก รวมถึงอีโมจิ (Emoji) ที่เราใช้กันทุกวันนี้ด้วย | อ้างอิง: The Unicode Consortium - Unicode Standard; ISO/IEC 10646.
UTF-8 เกี่ยวข้องกับ Unicode อย่างไร?
Unicode เป็นเพียง 'ตารางอ้างอิง' ที่บอกว่าอักษรตัวไหนมีรหัสอะไร แต่ UTF-8 (Unicode Transformation Format - 8-bit) คือ 'วิธีการจัดเก็บรหัสนั้นลงในหน่วยความจำ' UTF-8 เป็นเทคโนโลยีที่ชาญฉลาดมาก เพราะมันสามารถยืดหดขนาดไฟล์ได้ตามความจำเป็น (Variable-width encoding) ตัวอักษรภาษาอังกฤษจะใช้พื้นที่เพียง 1 Byte (เหมือน ASCII ทำให้เข้ากันได้กับระบบเก่า 100%) ส่วนภาษาไทยจะใช้ 3 Bytes และอีโมจิจะใช้ 4 Bytes ในปัจจุบัน เว็บไซต์กว่า 98% ทั่วโลกเลือกใช้ UTF-8 เป็นมาตรฐานหลัก | อ้างอิง: W3C - Character Encodings; IETF RFC 3629.
เลขฐาน 16 (Hexadecimal) ทำไมโปรแกรมเมอร์ถึงชอบใช้?
เลขฐานสอง (Binary) มีแค่ 0 กับ 1 ทำให้อ่านยากและมีความยาวมากเกินไป เช่น เลข 255 ในฐานสองคือ 11111111 ส่วนเลขฐานสิบ (Decimal) ก็แปลงกลับเป็นฐานสองได้ยากในสมองมนุษย์ เลขฐานสิบหก (Hexadecimal) ประกอบด้วย 0-9 และ A-F ถูกสร้างมาเป็นสะพานเชื่อมที่สมบูรณ์แบบ เพราะเลข Hex 1 ตัวอักษร จะแทนเลขฐานสองได้ 4 บิตพอดี (1 Nibble) รหัสสีในเว็บไซต์อย่าง #FFFFFF จึงอ่านและจัดเก็บง่ายกว่าการเขียนเลขฐานสองยาวๆ 24 ตัว | อ้างอิง: IEEE Computer Society - Number Systems; MIT Computer Science Documentation.
เครื่องมือคำนวณที่เกี่ยวข้อง
เครื่องมือคำนวณมูลค่า Technical Debt
ประเมินต้นทุนที่สูญเสียไปจากการรับมือกับโค้ดที่ไม่มีคุณภาพและหนี้ทางเทคนิค (Technical Debt)
Metcalfe's Law Network Value
คำนวณมูลค่าเครือข่ายตามกฎของ Metcalfe พร้อมคาดการณ์การเติบโต
Viral Coefficient แอปโตเร็วแค่ไหน
คำนวณ K-Factor และคาดการณ์การเติบโตแบบ Viral ของแอปหรือผลิตภัณฑ์
Automation ROI ลงทุนทำ Bot คืนทุนกี่เดือน
คำนวณความคุ้มค่าในการลงทุนสร้างระบบอัตโนมัติหรือ Bot โดยวิเคราะห์ระยะเวลาคืนทุนและ ROI
Google AdSense
Sidebar Ad (300x600)
Google AdSense - Sticky Bottom (Mobile)