ข้อมูลในคอมพิวเตอร์
             

                                                                                              [การแปลงเลขฐานสิบเป็นเลขฐานสอง][การแปลงเลขฐานสองเป็นเลขฐานสิบ]

            คอมพิวเตอร์ทำงานด้วยหลักการทางอิเล็กทรอนิกส์ที่ใช้สัญญาณทางไฟฟ้าแทนตัวเลข ศูนย์และหนึ่ง ซึ่งเป็นตัวเลขในระบบเลขฐานสอง แต่ละหลักเรียกว่า บิต (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 (คอมพิวเตอร์)