ระบบเลขฐานสอง (Binary number system) ถูกคิดค้นครั้งแรกโดย Gottfried Leibniz ในศตวรรษที่ 17 กลายเป็นที่ใช้กันอย่างแพร่หลายเมื่อคอมพิวเตอร์ต้องการวิธีแทนตัวเลขโดยใช้สวิตช์กลไก (mechanical switches)
Binary Code คืออะไร?
Binary เป็นระบบเลขฐาน 2 (base-2 number system) ที่แทนตัวเลขด้วยรูปแบบของ 1 และ 0
ระบบคอมพิวเตอร์ยุคแรกมีสวิตช์กลไก ที่เปิด (on) เพื่อแทน 1 และปิด (off) เพื่อแทน 0 โดยใช้สวิตช์ต่อเนื่องกัน (in series) คอมพิวเตอร์จึงสามารถแทนตัวเลขด้วยรหัสไบนารีได้ คอมพิวเตอร์สมัยใหม่ยังคงใช้รหัสไบนารีในรูปของ 1 และ 0 แบบดิจิทัล ภายใน CPU และ RAM
1 หรือ 0 แบบดิจิทัล คือสัญญาณไฟฟ้าที่เปิดหรือปิดอยู่ภายในอุปกรณ์ฮาร์ดแวร์อย่าง CPU ซึ่งสามารถเก็บและคำนวณตัวเลขไบนารีหลายล้านตัวได้
ตัวเลขไบนารีประกอบด้วยชุดของ 8 บิต (bits) ซึ่งรู้จักในชื่อ ไบต์ (byte) บิตคือ 1 หรือ 0 ตัวเดียว ที่ประกอบเป็นตัวเลขไบนารี 8 บิต โดยใช้รหัส ASCII ตัวเลขไบนารียังสามารถแปลงเป็นตัวอักษรข้อความ (text characters) เพื่อจัดเก็บข้อมูลในหน่วยความจำคอมพิวเตอร์ได้
ตัวเลขไบนารีทำงานอย่างไร?
การแปลงตัวเลขไบนารีเป็นตัวเลขฐานสิบ (decimal) นั้นง่ายมาก เมื่อพิจารณาว่าคอมพิวเตอร์ใช้ระบบฐานสอง (base 2 binary system) ตำแหน่งของแต่ละหลักไบนารี (binary digit) กำหนดค่าทศนิยมของมัน สำหรับตัวเลขไบนารี 8 บิต ค่าคำนวณได้ดังนี้:
- บิต 1: 2 ยกกำลัง 0 = 1
- บิต 2: 2 ยกกำลัง 1 = 2
- บิต 3: 2 ยกกำลัง 2 = 4
- บิต 4: 2 ยกกำลัง 3 = 8
- บิต 5: 2 ยกกำลัง 4 = 16
- บิต 6: 2 ยกกำลัง 5 = 32
- บิต 7: 2 ยกกำลัง 6 = 64
- บิต 8: 2 ยกกำลัง 7 = 128
โดยการบวกค่าเฉพาะตำแหน่งที่บิตเป็น 1 คุณสามารถแทนตัวเลขฐานสิบได้ตั้งแต่ 0 ถึง 255 ตัวเลขที่ใหญ่กว่านี้สามารถแทนได้โดยการเพิ่มบิตเข้าไปในระบบ
เมื่อคอมพิวเตอร์มีระบบปฏิบัติการ 16-bit ตัวเลขเดี่ยวที่ใหญ่ที่สุดที่ CPU คำนวณได้คือ 65,535 ระบบ 32-bit ทำงานกับตัวเลขฐานสิบเดี่ยวได้ใหญ่ถึง 2,147,483,647 ระบบคอมพิวเตอร์สมัยใหม่ที่มีสถาปัตยกรรม 64-bit มีความสามารถทำงานกับตัวเลขฐานสิบที่ใหญ่โตมาก ถึง 9,223,372,036,854,775,807!
การแทนข้อมูลด้วย ASCII
ตอนนี้คุณเข้าใจแล้วว่าคอมพิวเตอร์ใช้ระบบเลขไบนารีทำงานกับตัวเลขฐานสิบได้อย่างไร คุณอาจสงสัยว่าคอมพิวเตอร์ใช้มันจัดเก็บข้อมูลข้อความอย่างไร
สิ่งนี้สำเร็จได้ בזכותสิ่งที่เรียกว่า รหัส ASCII (ASCII code)
ตาราง ASCII ประกอบด้วย 128 ตัวอักษรหรืออักขระพิเศษ ซึ่งแต่ละตัวมีค่าทศนิยมที่เกี่ยวข้อง แอปพลิเคชันที่รองรับ ASCII (อย่าง Word Processors) สามารถอ่านหรือจัดเก็บข้อมูลข้อความไปมายังหน่วยความจำคอมพิวเตอร์ได้
ตัวอย่างตัวเลขไบนารีที่แปลงเป็นข้อความ ASCII:
- 11011 = 27 คือปุ่ม ESC ใน ASCII
- 110000 = 48 คือตัวเลข 0 ใน ASCII
- 1000001 = 65 คือตัวอักษร A ใน ASCII
- 1111111 = 127 คือปุ่ม DEL ใน ASCII
ในขณะที่รหัสไบนารีฐาน 2 ใช้สำหรับข้อมูลข้อความ รูปแบบคณิตศาสตร์ไบนารีอื่นๆ ใช้สำหรับข้อมูลประเภทอื่น ตัวอย่างเช่น Base64 ใช้สำหรับถ่ายโอนและจัดเก็บสื่ออย่างรูปภาพหรือวิดีโอ
รหัสไบนารีและการจัดเก็บข้อมูล
เอกสารทั้งหมดที่คุณเขียน หน้าเว็บที่คุณดู และแม้แต่เกมวิดีโอที่คุณเล่น ล้วนเป็นไปได้เพราะระบบเลขไบนารี
รหัสไบนารีช่วยให้คอมพิวเตอร์จัดการและจัดเก็บข้อมูลทุกประเภท ไปมายังหน่วยความจำคอมพิวเตอร์ ทุกสิ่งที่คอมพิวเตอร์ควบคุม แม้คอมพิวเตอร์ภายในรถยนต์หรือโทรศัพท์มือถือของคุณ ล้วนใช้ระบบเลขไบนารีสำหรับทุกอย่างที่คุณใช้มันทำ
การรู้วิธีอ่านไบนารี จะช่วยให้คุณเข้าใจคอมพิวเตอร์มากขึ้น