คอมพิวเตอร์ทำงานด้วยหลักการทางอิเล็กทรอนิกส์ที่ใช้สัญญาณทางไฟฟ้าแทนตัวเลข
ศูนย์และหนึ่ง ซึ่งเป็นตัวเลขในระบบเลขฐานสอง แต่ละหลักเรียกว่า บิต (Binary Digit) : Bit) และเมื่อนำ
ตัวเลขหลาย ๆ บิตมาเรียงกัน จะใช้สร้างรหัสแทนจำนวน อักขระ สัญลักษณ์ ทั้งภาษาไทยและภาษาอังกฤษได้ และเพื่อให้การแลกเปลี่ยนข้อความระหว่างมนุษย์กับคอมพิวเตอร์เป็นไปในแนวเดียวกัน จึงมีการกำหนดมาตรฐานรหัสแทนข้อมูลในระบบเลขฐานสองขึ้น โดยรหัสมาตรฐานที่นิยมใช้กันมากมีสองกลุ่ม คือ รหัสแอสกีและรหัสเอบซีดิก
ระบบเลขฐานสอง
ในชีวิตประจำวันของมนุษย์ต้องได้พบเจอกับจำนวนและการคำนวณอยู่ทุกวัน หากเราสังเกตจะพบว่าจำนวนที่เราคุ้นเคยอยู่ทุกวันนั้น ไม่ว่าจะเป็นการซื้อของเป็นเงิน 39,587 บาท จำนวนเงินฝากในธนาคาร 1,426,000 บาท หรือ จำนวนเงินในใบแจ้งหนี้ค่าโทรศัพท์เป็น 2,560 บาท ล้วนแล้วแต่ประกอบขึ้นจากตัวเลข 10 ตัว คือ 0, 1, 2, 3, 4, 5, 6, 7, 8 และ 9 ทั้งสิ้น ตัวเขทั้ง 10 ตัวนี้
ถือได้ว่าเป็นเครื่องมือที่ช่วยในการนับจำนวนของมนุษย์ การที่มนุษย์เลือกเลข 10 ตัวในการแทนการนับ อาจเนื่องจากมนุษย์
มีนิ้วมือที่สามารถใช้เป็นอุปกรณ์ช่วยนับได้เพียง 10 นิ้ว จึงกำหนดระบบตัวเลขนี้ขึ้นมาและ เรียกว่า ระบบเลขฐานสิบ (Decimal)
ต่อมาเมื่อมีการใช้งานคอมพิวเตอร์ ซึ่งเป็นอุปกรณ์อิเล็กทรอนิกส์ที่ทำงานแบบดิจิทัล และใช้ระดับแรงดันไฟฟ้าแสดงสถานะเพียง 2 สถานะ คือ ปิด (แทนด้วย 0) และเปิด (แทนด้วย 1) หรืออาจกล่าวได้ว่าเครื่องคอมพิวเตอร์รู้จักตัวเลขเพียง 2 ตัว
เท่านั้น คือ 0 และ 1 หากมนุษย์ต้องการใช้คอมพิวเตอร์เป็นเครื่องมือช่วยทำงาน มนุษย์ต้องเรียนรู้ระบบเลขที่ประกอบด้วยตัวเลขเพียง 2 ตัวเช่นกัน จึงได้มีการคิดค้นระบบเลขฐานสอง (Binary) ขึ้นเพื่อช่วยในการสื่อสารกับเครื่องคอมพิวเตอร์
โดยระบบเลขฐานสองเป็นระบบตัวเลขที่ประกอบด้วยตัวเลขเพียง 2 ตัว คือ 0 และ 1 เท่านั้น ตัวอย่างเลขฐานสอง เช่น 1102 , 101102
นอกจากระบบเลขฐานสองแล้ว ในการทำงานของคอมพิวเตอร์นั้นยังอาจเกี่ยวข้องกับระบบตัวเลขระบบอื่นอีก เช่น
ระบบเลขฐานแปดและระบบเลขฐานสิบหก ซึ่งระบบเลขฐานทั้งสองจะมีแนวคิดในทำนองเดียวกันกับระบบเลขฐานสองและฐานสิบ กล่าวคือ ระบบเลขฐานแปดก็คือระบบเลขที่ประกอบด้วยตัวเลขเพียง 8 ตัว คือ 0, 1, 2, 3, 4, 5, 6 และ 7 ตัวอย่างเลขฐานแปด เช่น 16738, 765138 ในขณะที่ระบบเลขฐานสิบหกนั้นจะประกอบด้วยตัวเลขทั้ง 10 ตัวที่ใช้อยู่ในระบบเลขฐานสิบ และเพิ่มตัวอักขระภาษาอังกฤษ A, B, C, D, E และ F แทนจำนวน 10, 11, 12, 13, 14 และ 15 ตามลำดับ ตัวอย่างเลขฐานสิบหก เช่น A154916, F7DA216, 874316
จากที่กล่าวมาข้างต้น จะเห็นว่าการเขียนเลขฐานสอง ฐานแปด และฐานสิบหกนั้น มักจะเขียนตัวเลข 2 8 และ 16
กำกับอยู่ที่ตัวสุดท้าย ทั้งนี้เพื่อป้องกันความสับสน เช่น 8743 หากเราไม่เขียนตัวเลขกำกับไว้ ตัวเลขนี้อาจเป็นเลขฐานสิบ
หรือฐานสิบหกก็ได้ เราก็จะไม่ทราบว่าตัวเลขที่เขียนนั้นเป็นเลขฐานใด ตารางด้านล่างนี้เป็นตารางแสดงค่าของตัวเลข
ในระบบเลขฐานทั้ง 4 ระบบที่กล่าวถึงข้างต้น
ตารางแสดงรูปแบบของเลขในฐานสอง ฐานสิบ ฐานแปด และฐานสิบหก
เลขฐานสิบ |
เลขฐานสอง |
เลขฐานแปด |
เลขฐานสิบหก |
0 |
0000 |
0 |
0 |
1 |
0001 |
1 |
1 |
2 |
0010 |
2 |
2 |
3 |
0011 |
3 |
3 |
4 |
0100 |
4 |
4 |
5 |
0101 |
5 |
5 |
6 |
0110 |
6 |
6 |
7 |
0111 |
7 |
7 |
8 |
1000 |
10 |
8 |
9 |
1001 |
11 |
9 |
10 |
1010 |
12 |
A |
11 |
1011 |
13 |
B |
12 |
1100 |
14 |
C |
13 |
1101 |
15 |
D |
14 |
1110 |
16 |
E |
15 |
1111 |
17 |
F |
ดังที่กล่าวแล้วว่ามนุษย์ต้องอาศัยระบบเลขฐานสองในการสื่อสารกับเครื่องคอมพิวเตอร์ ไม่ว่าจะเป็นการเก็บข้อมูลหรือการสั่งงานเครื่องคอมพิวเตอร์ ดังนั้นเราต้องสามารถแปลงค่าเลขฐานสิบให้อยู่ในรูปแบบของเลขฐานสองได้
ในขณะเดียวกันก็ต้องสามารถแปลงเลขฐานสองให้อยู่ในรูปแบบของเลขฐานสิบได้เช่นกัน ในบทนี้จะกล่าวถึงวิธีการในการแปลงเลขระหว่างเลขฐานสองและฐานสิบ
การแปลงเลขฐานสิบเป็นเลขฐานสอง
|
|
|
|
|
|
|
|
คำศัพท์ที่จำเป็นต้องทำความรู้จักเพื่อให้เข้าใจตรงกันในการดำเนินการต่าง ๆ ในระบบเลขฐานสอง มีดังนี้
1)
บิต (bit) หลักแต่ละหลักในระบบเลขฐานสอง เช่น 1102 ประกอบด้วย 3 บิต
2)
บิตที่มีนัยสำคัญสูงสุด (Most Significant Bit : MSB) คือ บิตที่อยู่ซ้ายมือสุด เป็นบิตที่มีค่าประจำหลักมากที่สุด เช่น 1002 บิตที่มีนัยสำคัญสูงสุดคือ 1 มีค่าประจำหลักเป็น 22
3)
บิตที่มีนัยสำคัญต่ำสุด (Least Significant Bit : LSB) คือ บิตที่อยู่ขวามือสุด เป็นบิตที่มีค่าประจำหลักน้อยที่สุด เช่น 1102 บิตที่มีนัยสำคัญสูงสุดคือ 0 มีค่าประจำหลักเป็น 20 (สังเกตว่าค่าประจำหลักของบิตที่มีนัยสำคัญต่ำสุดจะมีค่าเป็น 20 เสมอ
การแปลงเลขฐานสิบให้เป็นฐานสอง
การแปลงเลขฐานสิบให้เป็นฐานสองนั้น เราอาจใช้วิธีการหาร โดยให้ตัวเลขฐานสิบเป็นตัวตั้ง แล้วหารด้วยเลข 2 ไปเรื่อย ๆ จนกระทั่งผลหารเป็น 0 และในการหารแต่ละครั้ง ต้องเขียนเศษที่ได้จากการหารไว้ หลังจากที่หารจนผลหารเป็น 0
เราจะได้เลขฐานสองที่มีค่าเท่ากับเลขฐานสิบที่เป็นตัวตั้ง โดยการเขียนเศษที่ได้จากการหารแต่ละครั้งจากล่างขึ้นบน ดังตัวอย่างต่อไปนี้
ตัวอย่างที่ 1 แสดงการแปลง 19 ซึ่งเป็นเลขฐานสิบให้อยู่ในรูปเลขฐานสอง
ตัวอย่างที่ 2 แสดงการแปลง 29 ซึ่งเป็นเลขฐานสิบให้อยู่ในรูปเลขฐานสอง
การแปลงเลขฐานสองเป็นเลขฐานสิบ
|
|
|
|
|
|
|
|
การแปลงเลขฐานสองให้เป็นฐานสิบ
การแปลงเลขฐานสองกลับเป็นเลขฐานสิบต้องอาศัยค่าประจำหลักของแต่ละบิตในเลขฐานสองที่ต้องการแปลง
โดยเราจะแยกตัวเลขแต่ละบิตมาคูณด้วยค่าประจำหลัก แล้วนำผลลัพธ์จากการคูณดังกล่าวมารวมกัน จะได้เลขฐานสิบที่มีค่าตรงกับเลขฐานสอง ดังตัวอย่างต่อไปนี้
การบวกเลขฐานสอง
การบวกเลขฐานสองมีหลักการเหมือนกับการบวกเลขฐานสิบที่เราคุ้นเคย เพียงแต่ตัวเลขในแต่ละหลักของเลขฐานสอง
จะมีค่ามากที่สุดคือ 1 นั้นหมายความว่าในหลักใด ๆ ที่มี 1 บวกกับ 1 จะได้ผลลัพธ์เป็น 0 และทดค่า 1 ไว้ในหลักถัดไปทางซ้าย
ดังตัวอย่าง
ตัวอย่าง แสดงการหาค่า 10011 + 1010
ตัวอย่าง แสดงการหาค่า 1001 + 1111
การลบเลขฐานสอง
การลบเลขฐานสองก็เช่นเดียวกับการลบเลขฐานสิบ คือพิจารณาเอาเลขที่เป็นตัวตั้งลบด้วยตัวลบทีละหลัก หากตัวตั้งเป็น 1
ตัวลบเป็น 0 ผลลัพธ์ได้เป็น 1 แต่ถ้าตัวตั้งเป็น 0 และตัวลบเป็น 1 ต้องมีการดึงค่าในหลักที่อยู่ทางซ้ายมาได้ผลลัพธ์เป็น 1
และมีผลให้ค่าของหลักที่ถูกดึงมามีค่าเป็น 0 ดังตัวอย่าง
ตัวอย่าง แสดงการหาค่า 10011 - 1010
ตัวอย่าง แสดงการหาค่า 11001 - 1111
เมื่อมนุษย์สามารถแปลงเลขฐานสิบเป็นฐานสอง และแปลงเลขฐานสองกลับเป็นเลขฐานสิบได้ ก็สามารถเขียนโปรแกรม
เพื่อสั่งการให้คอมพิวเตอร์ทำงานได้ตามที่ต้องการ และพัฒนาวิธีการในการสื่อสารหรือสั่งการคอมพิวเตอร์มาเรื่อย ๆ จนในปัจจุบันผู้ใช้คอมพิวเตอร์ทั่วไปอาจไม่ต้องทำความเข้าใจการทำงานของคอมพิวเตอร์อย่างลึกซึ้งเช่นนี้ เนื่องจากมีบุคลากร
ที่ทำหน้าที่คิดค้นโปรแกรมที่สามารถรับข้อความหรือคำสั่งในรูปแบบของภาษาและระบบตัวเลขที่ผู้ใช้คุ้นเคย แล้วแปลความหมายเป็นเลขฐานสองก่อนส่งให้เครื่องคอมพิวเตอร์ประมวลผล
ที่มา : http://www.school.net.th/library/
http://www.chakkham.ac.th/
http://www.piacec.moe.go.th
หนังสือเรียนสาระการเรียนรู้พื้นฐาน เทคโนโลยีสารสนเทศ ช่วงชั้นที่ 4 ชั้นมัธยมศึกษาปีที่ 4 - 6 ของ สสวท
เว็บไซต์นี้แสดงผลได้ดี บนความละเอียด 800x600 Text Size Medium
เว็บไซต์นี้จัดทำเพื่อใช้ประกอบการเรียนการสอนวิชาการงานอาชีพและเทคโนโลยี 42 (คอมพิวเตอร์)