การแทนที่ข้อมูลในคอมพิวเตอร์ คอมพิวเตอร์มีการทำงาน 3 ขั้นตอน ได้แก่ การนำเข้าข้อมูล การประมวลผล และการแสดงผลข้อมูล ซึ่งกระบวนการดังกล่าวเป็นกระบวนการนำเสนอ สารสนเทศ ให้มนุษย์เข้าใจ แต่ความจริงแล้วทุกสิ่งทุกอย่างที่นำเสนอ ไม่ว่าจะเป็นตัวเลข ตัวอักษร ข้อความ การเว้นวรรค ภาพ เสียง ภาพเคลื่อนไหว หรือคำสั่งต่าง ๆ นั้น เครื่องคอมพิวเตอร์จะใช้ เก็บ ประมวลผลใน รูปแบบตัวเลขเท่านั้น และการแสดงผลต่าง ๆ ที่เป็นภาพ ข้อความ หรือเสียง เป็นเพียงหนึ่งในวิธี การนำเสนอ โดยใช้กลุ่มข้อมูลตัวเลขมาแปลหรือแสดงผลให้มนุษย์เข้าใจ 1. การแทนที่ข้อมุลด้วยตัวเลข (Representint Data as Number) เลขฐานสิบ (Decimal) เป็นตัวเลขที่ มนุษย์ปัจจุบันใช้ในชีวิตประจำวัน ซึ่งตัวเลขประกอบด้วยเลข 0, 1, 2, 3, ... จนถึงเลข 9 แต่การใช้ตัวเลขดังกล่าว ไม่สามารถใช้แทนค่าในคอมพิวเตอร์ได้ เนื่องจากคอมพิวเตอร์เป็นอุปกรณ์ดิจิทัลจึงใช้เลขเพียง 2 ค่า ได้แก่ เลข 0 และ เลข 1 เท่านั้น ซึ่งระบบเลขนี้ เรียกว่า เลขฐานสอง (Binary Digit หรือ bit) 1.1. บิต (bit) จะเป็นส่วนที่เล็กที่สุดและคอมพิวเตอร์ รู้จัก หากเปรียบเทียบบิตกับสวิตซ์ไฟฟ้า 1 อัน ก็จะมี ได้ เพียง 2 สถานะ ได้แก่ การปิดและการเปิดเท่านั้น ซึ่งก็คือ การแทนค่า 0 หรือ 1 เรียกว่า 1 บิต หากเราต้องการ ค่าที่มากขึ้นก็จะใช้หลายบิตมาเรียงต่อกัน เช่น 1001 กรณีนี้เราเรียกกันว่า 4 บิต ซึ่งเครื่องคอมพิวเตอร์จะนำ กลุ่ม ของบิตเหล่านี้มาแสดงในรูปแบบของข้อมูลที่มีความหมาย1.2. ไบต์ (byte) กลุ่มบิตที่เรียงต่อกันจำนวน 8 บิต เรียกว่า ไบต์ (byte) ซึ่งกลุ่มบิตที่เรียงกันจำนวน 8 บิต สามารถสร้างค่าที่แตกต่างกันได้ถึง 256 ค่า โดยแต่ละบิตจะมีเพียง 2 สถานะเท่านั้น ดังนั้นค่า 00000000 เท่ากับค่า 0 ในระบบเลขฐานสิบ และค่า 11111111 เท่ากับ 256 ในระบบเลขฐานสิบ ระบบเลขฐานสอง เลขฐานสอง ( binary numeral system) หมายถึง ระบบเลขที่มีสัญลักษณ์เพียงสองตัวคือ 0 (ศูนย์) กับ 1 (หนึ่ง) บางครั้งอาจหมายถึงการที่มีโอกาสเลือกได้เพียง 2 ทาง เช่น ปิดกับเปิด, ไม่ใช่กับใช่, เท็จกับจริง, ซ้ายกับขวา เป็นต้น การแปลงค่าตัวเลขระหว่าง เลขฐานสองและเลขฐานสิบ คอมพิวเตอร์เก็บค่าจำนวนเต็มบวกในลักษณะของการแปลง ค่าตัวเลขฐานสิบเป็นเลขฐานสองโดยตรง ซึ่งเราอาจทำการแปลงได้ โดยให้ตัวเลขฐานสิบเป็นตัวตั้ง แล้วหารด้วยฐานสองไปเรื่อยๆ จนกระทั้งผลลัพธ์ เป็นศูนย์ และในการหารแต่และครั้งต้องเขียนเศษที่ได้จากการหารไว้ หลังจากที่หารจนผลหารเป็นศูนย์ เราจะ นำเศษที่ ได้ทั้งหมดมาเรียงต่อกัน โดยให้เศษที่ออกมาก่อนอยู่ทางขวามือจะได้เลขฐานสอง ที่มีค่าจำนวนเต็ม เท่ากับเลขฐานสิบที่เป็นตัวตั้ง ตัวอย่างการแปลงเลขฐานสิบเป็นเลขฐานสอง สำหรับการแปลงค่าจำนวนเต็มฐานสองให้เป็นฐานสิบนั้น ต้องอาศัยค่าประจำหลักในเลขฐานสิบ แต่ละหลักจะมีค่าประจำหลักอยู่ซึ่งหาได้จากสิบยกกำลังเลขหลัก โดยเลขหลักที่นับจากหลักหน่วย หลักสิบ หลักร้อยและหลักพัน จะมีค่าเป็น 0,1,2และ3ตามลำดับ *ค่าประจำหลักในเลขฐานสิบ จากหลักการดังกล่าวนี้ เราสามารถหาค่าของเลขจำนวนใดๆ ได้จากค่าประจำหลักคูณกับตัวเลขในหลักนั้นๆ ดังตัวอย่างการหาค่าของ 243 ดังนี้ *การหาค่าของ 243 เมื่อทราบหลักการหาค่าเลขจำนวนเต็มฐานสิบแล้ว การหาค่าเลขจำนวนเต็มฐานสองก็ใช้หลักการเดียวกันเพียงแต่เปลี่ยนการหาค่าประจำหลักการใช้ของสิบยกกำลังเลขประจำหลัก ไปใช้ค่าของสองยกกำลังเลขประจำหลักแทน นั่นคือค่าประจำหลักจากหลักทางขวาสุดมาทางซ้าย ดังตัวอย่าง *ค่าประจำหลักในเลขฐานสอง ตัวอย่างการแปลงเลขฐานสองเป็นเลขฐานสิบ *แสดงการแปลงเลข 100012 ให้อยู่ในรูปฐานสิบ *แสดงการแปลงเลข 1111 00112 ให้อยู่ในรูปฐานสิบ ตัวอย่าง VDO ประกอบ วิธีการแปลงเลขฐาน วิดีโอ YouTubeรหัสแทนข้อมูล ข้อมูลชนิดอื่นๆ ไม่ว่าจะเป็นอักขระ เสียง รูปภาพ ก็ล้วนต้องถูกแปลงให้อยู่ในกลุ่มของเลขฐานสองก่อนที่จะถูกจัดเก็บและประมวลผลด้วยคอมพิวเตอร์ทั้งสิ้น เพื่อให้คอมพิวเตอร์ทุกระบบสามารถแลกเปลี่ยนข้อมูลกันได้ จึงได้มีการกำหนดมาตรฐานการแปลงข้อมูลตัวอักขระเป็นรหัสเลขฐานสอง หรือที่เรียกกันว่า รูปแบบการเข้ารหัส(coding scheme) สำหรับมาตรฐานที่ใช้กันในปัจจุบันมีหลายมาตรฐานด้วยกัน เช่น บีซีดี แอสกี และยูนิโค้ด
:BCD) ซึ่งเป็นการแทนตัวเลขแต่ละตัวด้วยรหัสเลขขนาด 4 บิต ที่มีค่าตรงกับตัวเลขนั้นๆ ดังตัวอย่าง
ถ้าเป็นเลขฐานสิบมากกว่าหนึ่งหลัก จะแทนแต่ละหลักด้วยรหัสเลขฐานสองที่มีค่าตรงกับตัวเลขในหลักนั้นๆ เช่น 243 เข้ารหัสแบบบีซีดีได้เป็น 0010 0100 0011 ข้อดีของรหัสบีซีดี คือ การแปลงระหว่างฐานสิบและฐานสองทำได้ง่ายและรวดเร็ว แต่ข้อเสียคือความยุ่งยากในการคำนวณทางคณิตศาสตร์และสิ้นเปลืองจำนวนบิตในการจัดเก็บข้อมูลมากกว่าการแทนค่าฐานสิบทั้งจำนวนด้วยเลขฐานสอง การเข้ารหัสแบบแอสกี เป็นแบบที่นิยมใช้กันมากที่สุดในปัจจุบันทั้งสำหรับพีซีและเครื่องให้บริการ (server) ทั่วไป ซึ่งใช้เลขฐานสองจำนวน 8 บิต เข้ารหัสเพื่อแทนอักขระได้ทั้งหมด 256 ตัว โดยที่รหัสทั้งหมดถูกแบ่งออกเป็นสองชุด ชุดละ 128 ตัว ชุดแรกเป็นรหัสที่ใช้แทนรหัสควบคุม ตัวเลขและอักขระภาษาอังกฤษซึ่งเป็นส่วนที่เป็นมาตรฐานสากล สำหรับชุดหลังจำนวน 128 ตัว ถูกนำไปใช้แทนอักขระที่เป็นสัญลักษณ์พิเศษ *ตารางรหัสแอสกีที่แทนอักขระภาษาอังกฤษและภาษาไทย จากการที่เลขฐานสอง 1 ไบต์สามารถใช้แทนรหัสได้ 1 อักขระ ดังนั้นถ้ามีข้อความที่ประกอบด้วยอักขระหลายตัวก็ใช้รหัสเลขฐานสองหลายไบต์เรียงต่อกัน เช่น คำว่า คอมพิวเตอร์ จะแทนด้วยรหัสเลขฐานสอง คือ 1010 0100 1100 1101 1100 0001 1011 1110 1101 0100 1100 0111 1110 0000 1011 0101 1100 1101 1100 0011 1110 1100 ดังตัวอย่าง
3. รหัสยูนิโค้ด(Unicode) การเข้ารหัสยูนิโค้ด ได้ถูกพัฒนาขึ้นเพื่อให้รองรับตัวอักขระภาษาต่างๆ ในโลกได้เกือบทั้งหมด รหัสยูนิโค้ดมีด้วยกันหลายมาตรฐาน เช่น UTF-16 และ UTF-8 สำหรับแบบ UTF-8 ถูกออกแบบให้ใช้งานร่วมกับการเก็บข้อมูลที่มีการเข้ารหัสแบบแอสกีได้ง่าย และมีการรองรับการใช้งานในหลายระบบปฏิบัติการสมัยใหม่ |