การคำนวณทางคณิตศาสตร์

การคำนวณทางคณิตศาสตร์

1. การบวกเลขฐานสอง

        การบวกเลขฐานสอง ทำได้โดยเรียนแบบเลขฐานสิบ แต่ฐานสิบมีเลข 10 ตัว คือ 0 - 9 เมื่อบวกได้ 10 ต้องใส่ 0 แล้วทดไปข้างหน้า 1 หรือ 20 ก็ใส่ 0 แล้วทดไปข้างหน้า 2 ไปเรื่อยๆ เมื่อนำมาใช้กับเลขฐานสอง ซึ่งมีตัวเลขสองตัวคือ 0 กับ 1 นำมาบวกกันได้ 2 ให้ใส่ 0 แล้วทดไปข้างหน้า 1 เช่นกัน ดังตัวอย่าง ต่อไปนี้

ตัวอย่างที่ 1  จงบวก (7536) เข้ากับ (3527)
วิธีทำ

                                      7   5   3   6    +
                                      3   5   2   7
                                 1   1   0   6   3




ตัวที่ 1   (นับจากทางขวาสุด) 6+7 = 13 ใส่ 3 ทด 1
ตัวที่ 2   3+2 = 5 รวมกับตัวทดอีก 1 จึงเท่ากับ 6 เลขไม่ถึง 10 ก็ไม่ต้องเอา 10 ไปลบตามอย่างไร เราจึงใส่ 6 ลงไปและไม่มีตัวทด
ตัวที่ 3   5+5 =10  ผลลัพธ์ได้  = 10  ใส่ 0 ทด 1
ตัวที่ 4    7+3 =10 รวมตัวทดอีก 1 เป็น 11 ใส่ 1 ทด 1 ได้ผลลัพธ์ตามต้องการ

  วิธีการบวกเลขฐานสองมีหลักเกณฑ์ที่ช่วยในการบวกเลขฐานสอง 4 ข้อดังนี้คือ
      1.  0 + 0 = 0
      2.  0 + 1 = 1
      3.  1 + 0 = 1
      4.  1 + 1 = 0  ทด 1

   เช่น การบวกเลขฐานสอง 2 จำนวน คือ 110   และ 111   สามารถทำได้ดังนี้คือ
     110               คอลัมน์ที่ 1         0 + 1 = 1
     111               คอลัมน์ที่ 2         1 + 1 = 0 ทด 1
   1101               คอลัมน์ที่ 3         1 + 1 + ทด 1 = 10 + 1 = 11




                1.การบวกเริ่มจากพิจารณาจากหลักที่มีนัยสำคัญต่ำสุดนั่นคือหลักที่ 5
                2. หลักที่ 5 เป็น 1+ 0 ได้ผลลัพธ์เป็น 1 ไม่มีการทด
                3. หลักที่ 4 เป็น 1+ 1 ได้ผลลัพธ์เป็น 0 ทด 1
                4. หลักที่ 3 เป็น 0 + 0 ได้ 0 แต่มีการทดจากหลักที่แล้ว เมื่อบวกกับตัวทด ได้ผลลัพธ์เป็น 1ไม่มีการทด
                5. หลักที่ 2 เป็น 0 + 1 ได้ผลลัพธ์เป็น 1 ไม่มีการทด
                6. หลักที่ 1 ได้ผลลัพธ์เป็น 1 เหมือนเดิม
                7. ผลลัพธ์เป็น 111012

2. การลบเลขฐานสอง

หลักในการลบเลขฐานสองมีดังนี้
          1 - 1 = 0
          1 - 0 = 1
          0 - 1 = 1 ยืมมาจากหลักที่สูงกว่ามา 1
          0 - 0 = 0
          *ในการยืมตัวเลขมา 1 จะทำให้ตัวเลขในหลักที่ถูกยืมลดลง 1 ถ้าตัวเลขที่ถูกยืมถัดไปมีค่าเท่ากับ 0 ให้ยืมหลักถัดไปที่มี 1 จะทำให้เลขที่ถูกยืมเป็น 0 และเลข 0 ที่ไม่สามารถยืมได้นั้นจะมีค่าเท่ากับ 1

ตัวอย่าง          1010 - 0101
วิธีทำ          0101
                               -
                   1010
                   0101
    ผลลัพธ์   0101

การลบเลขฐานสองก็เช่นเดียวกับการลบเลขฐานสิบ คือพิจารณาเอาเลขที่เป็นตัวตั้งลบด้วยตัวลบทีละหลัก หากตัวตั้งเป็น 1 ตัวลบเป็น 0 ผลลัพธ์ได้เป็น 1 แต่ถ้าตัวตั้งเป็น 0 และตัวลบเป็น 1 ต้องมีการดึงค่าในหลักที่อยู่ทางซ้ายมาได้ผลลัพธ์เป็น 1 และมีผลให้ค่าของหลักที่ถูกดึงมามีค่าเป็น 0 ดังตัวอย่างต่อไปนี้
ตัวอย่างที่ 1 แสดงการหาค่า 10011 – 1010



                 1. การลบเริ่มพิจารณาจากหลักที่มีนัยสำคัญต่ำสุดนั่นคือหลักที่ 5
                 2. หลักที่ 5 เป็น 1 - 0 ได้ผลลัพธ์เป็น 1
                 3. หลักที่ 4 เป็น 1 - 1 ได้ผลลัพธ์เป็น 0
                 4. หลักที่ 3 เป็น 0 - 0 ได้ 0
                 5. หลักที่ 2 เป็น 0 - 1 ต้องดึงค่าจากหลักที่อยู่ทางซ้าย คือ 10 มาช่วยเป็น 10 - 1 ได้ผลลัพธ์เป็น 1
                 6. หลักที่ 1 ถูกหลักที่อยู่ทางขวาดึงไป ทำให้เหลือค่าเป็น 0
                 7. ผลลัพธ์เป็น 10012


3. เลขฐานสองแบบไม่มีเครื่องหมาย

           การเก็บข้อมูลในคอมพิวเตอร์ที่เป็นเลขจำนวนเต็มไม่มีเครื่องหมาย จะเก็บเลขฐานสอง ตามจำนวนบิตที่กำหนด เช่น
            8 บิต = 256 ค่า (0-255)
          16 บิต = 65,536 (0-65,535)
          32 บิต = 4,294,967,296 (0-4,294,967,295)


4. เลขฐานสองที่มีเครื่องหมาย

            ในเลขฐานสิบที่มีเครื่องหมายติดลบ จะเขียนเครื่องหมายลบไว้ข้างหน้าของขนาดตัวเลข เช่น -1 -2 -3 เป็นต้น  ถ้าจะเขียนเครื่องหมายบวกข้างหน้าขนาดตัวเลขก็ได้ เช่น +1 +2 + 3 หรืออาจไม่ต้องเขียนก็หมายถึงเลขจำนวนบวก ถ้าแปลงฐานสิบให้เป็นฐานสอง และมีเครื่องหมายติดลบด้วยก็ได้ -001 -010 -011 หรือถ้าเป็นจำนวนบวกก็ +001 +010 +011 แต่การนำข้อมูลเหล่านี้ไปประมวลผลในระบบดิจิตอลจะไม่สามารถประมวลผลได้ ระบบจะทำงานได้เฉพาะ ข้อมูลดิจิตอลที่เป็น 0 และ 1 เท่านั้น ดังนั้นเครื่องหมายบวกจึงถูกกำหนดค่าให้เป็นลอจิก 0 และเครื่องหมายลบ ถูกกำหนดให้เป็นค่าลอจิก 1 จึงทำให้ +001 +010 +011 ถูกเปลี่ยนรหัสเป็น 4 บิต ดังนี้ 0001 0010 0011 ส่วนจำนวนลบจะได้รหัส 4 บิตเช่นกัน คือ1001 1010 1011 ตัวเลขดังกล่าวประกอบด้วยบิตเครื่องหมาย


5. เลขคอมพลีเมนต์

Sign-and-magnitude: คล้ายเลขจำนวนเต็มทั่วไป แต่บิตซ้ายสุดเป็นบิตเครื่องหมาย 0 หมายถึง จำนวนเต็มบวกและ 1 เป็นจำนวนเต็มลบ
00110101 = +53
10110101 = -53

1’s complement: เกิดจากนำเลขจำนวนเต็มฐานสองจำนวนนั้นลบออกจากค่าที่เป็น 1 ทุกบิต
เช่น 1’s complement ของ 10110101 คือ
11111111-10110101 = 01001010 หรือ สลับค่าทุกบิตเป็นค่าตรงข้าม
10110101 ---> 01001010

2’s complement: เกิดจากบวก 1 เข้ากับบิตขวาสุดของ 1’s complement เช่น หาค่า 2’s complement ของ 10110100 คือ
ค่า 1’s complement ของ 10110100 = 01001011
ค่า 2’s complement ของ 10110100 = 01001011+1 = 01001100
ค่า value box ของจำนวน + ขนาด 8 บิต
ค่า value box ของจำนวน - ขนาด 8 บิต

โครงสร้างการแสดงค่า 2’s complement เลขจำนวนเต็มที่มีเครื่องหมาย Overflow และตัวทด :

ตัวอย่าง 1 : จงลบเลขฐานสอง 100102 - 10112 โดยใช้วิธี     2’s Complement
  1’s Complement ของ 01011 = 10100
    2’s Complement ของ 01011 = 10101
                                                         10010
                                                       +10101
 ไม่มีตัวทดที่เกินมา                        1 00111
   ดังนั้น 100102 - 10112 = 1112


  ตัวอย่าง 2 : จงลบเลขฐานสอง 10112 - 100102  โดยใช้วิธี 2’s Complement
   1’s Complement ของ 10010 = 01101
   2’s Complement ของ 10010 = 01110
                                                          01011
                                                      +  01110
     ไม่มีตัวทดที่เกินมา                       11001
     1’s Complement 11001 = 00110
     2’s Complement 11001 = 00111
      ดังนั้น 10112 - 100102 = -1112


        การบวก-ลบที่ใช้ทูคอมพลีเมนต์

เนื่องจากการคำนวณเลขฐานสองไม่มีการลบจึงทำการ Complement แทนการลบ

         1’s Complement  เป็นวิธีการกลับสถานะของตัวเลขฐานสองใหเป็นตรงกันข้าม เช่น 0 กลับเป็น 1 และ 1 กลับเป็น 0
         2’s Complement  เป็นวิธีการที่ต่อเนื่องจาก 1’s Complement

     โดยนำค่าที่ได้จาก 1’s Complement   บวกด้วย 1


  1’s Complement & 2’s Complement

  ตัวอย่าง : จงทำค่า 11001112 ให้อยู่ในรูป 1’s Complement

    เลขฐานสอง                         1100111
    1’s Complement                 0011000

 ตัวอย่าง : จงทำค่า 11100112 ให้อยู่ในรูป 2’s Complement

        เลขฐานสอง                          1110011
        1’s Complement                   0001100
                                                      +          1
         2’s Complement                 0001101


6. การคูณ

           ในระบบเลขฐานสอง เราสามารถกระทำได้ในลักษณะเช่นเดียวกับการคูณเลขฐานสิบ
ซึ่งก็คือ ทำการตั้งหลักของการคูณให้ตรงกัน โดยเริ่มจากบิท หรือหลักตัวเลขทางขวามือสุดก่อน
เมื่อได้ทำการคูณ ตัวตั้งด้วยตัวคูณทุกตำแหน่งแล้ว ก็ให้ทำการบวกโดยใช้กฎการบวกเลขฐานสองตามปกติทุกประการ  การคูณจึงมีหลักเกณฑ์ดังนี้

1 × 1 = 1
1 × 0 = 0
0 × 1 = 0
0 × 0 = 0

 ตัวอย่าง (1101) 2 x (101) 2 = (……..) 2
         วิธีทำ 1101 x
                     101
                   1101
                   0000 +
                  1101
           1 000001

       ตอบ (1000001) 2



7. การหาร

            การหารในระบบเลขฐานสอง ก็จะทำเช่นเดียวกันกับการหารเลขฐานสิบ โดยใช้วิธีการหารแบบตั้งหารยาว
           เกณฑ์การหารเลขฐานสองสามารถสรุปได้ดังต่อไปนี้

          0 / 1 = 0
          1 / 1 = 1


ตัวอย่าง  (100001) 2 / (1101) 2 = (……..) 2
วิธีทำ 1101)1000001(101
                        01101
                        001101
                           1101
                          0000

ตอบ (101) 2


อ้างอิง
http://com5520014.blogspot.com/2013/07/blog-post_3206.html
http://www.krumontree.com/ebook4/files/lesson2_21.htm
http://www4.csc.ku.ac.th/~b5340205541/n7.html


ไม่มีความคิดเห็น:

แสดงความคิดเห็น