บทที่ 3: การบวก ลบ คูณ หาร เลขฐานสอง

Post on 16-Nov-2014

71 views 5 download

description

บทที่ 3: การบวก ลบ คูณ หาร เลขฐานสอง

Transcript of บทที่ 3: การบวก ลบ คูณ หาร เลขฐานสอง

บทท�� 3: การบวก ลบ คู�ณ หาร เลขฐานสองเน��อหาสาระ1.การบวกเลขฐานสอง

การบวกเลขฐานสอง (Binary addition) จะคล�ายก�บการบวกเลขฐานส�บ โดยเร��มจากการบวกเลขสองตั�วที่��ม�ความส�าค�ญตั��าส�ดที่��อย !ที่างซ้�ายม#อก!อน ถ้�าหากผลล�พธ์)ที่��ได�ม�ค!าเก�น 1 หล�ก จะเป็,นตั�วที่ดและจะน�าไป็บวกในหล�กถ้�ดไป็

ในการบวกเลขในระบบฐานส�บ ถ้�าหากผลล�พธ์)ม�ค!าเก�น 9 จะม�ตั�วที่ดเก�ดข/0น ส�าหร�บในระบบฐานสองตั�วที่ดจะเก�ดข/0นเม#�อผลล�พธ์)ที่��ได�ม�ค!าเก�น 1

การบวกเลขฐานส�บ เทอม การบวกเลขฐานสอง11 ตั�วที่ด 1111 1110

099 ตั�วตั�0ง 0110 0011

095 ตั�วบวก 0101 1111

194 ผลล�พธ์) 1100 0010

ร�ปท�� 3.1 การบวกเลขฐานส�บและเลขฐานสอง

ในร ป็ 3.1 จะเป็,นการบวกเลขฐานส�บละเลขฐานสอง ในการบวกเลขฐานส�บในร ป็จะเป็,นการบวกเลข 95 ก�บ 99 โดยให�เลข 99

เป็,นตั�วตั�0ง และเลข 95 เป็,นตั�วบวก โดยจะบวกเลข 9 ก�บ 5 ที่างขวาม#อส�ดก!อน ผลล�พธ์)ที่��ได�จะเป็,น 4 ละม�เลข 1 เป็,นตั�วที่ด ตั�วที่ดตั�วน�0จะที่ดไป็ในหล�กส�บด�งแสดงในร ป็ โดยเข�ยนตั�วที่ดไว�ด�านบน ตั!อมาน�าตั�วที่ดที่��เป็,น 1 มาบวกก�บตั�วตั�0งเลข 9 และตั�วบวกเลข 9 ผลล�พธ์)ที่��ได�ค#อเลข 9 และม�ตั�วที่ดค#อเลข 1 ที่ดไป็ในหล�กร�อย ตั!อมาบวกหล�กร�อยโดยบวกตั�วที่ด 1 ก�บเลข 0 จะได�ผลล�พธ์)เป็,น 1 ด�งน�0นการบวก 99 ก�บ 95 จะได� 194

1 1

1 = +1 +1 10 11 +1

11ร�ปท�� 3.2 การบวก 1 สามตั�วที่�าได�โดยแยกการบวกเป็,นสองส!วน

การบวก 1 สามคร�0งแสดงได�ด�งร ป็ที่�� 3.3 เราจะแยกการบวกออกเป็,น 2 ส!วน ข�0นแรกจะบวก 1 ก�บ 1 ได�ผลล�พธ์)เป็,น 0 แล�วตั�วที่ดเป็,น 1 จากน�0นให�เข�ยน 0 ไว�เป็,นบ�ตัแรก ตั�วที่ดเป็,นบ�ตัที่��สองจะได�เป็,นค!า 10 ตั!อมาน�าค!า 1 จะได�ว!าการบวกบ�ตัแรกได� 1 ที่�าให�ผลบวกของเลข 1 3 ตั�วได�เที่!าก�บ 11

ข��นท�� 1 บวกเลขหล�กแรก (ขวาม#อส�ด)

ข��นท�� 2 พ�จารณาผลล�พธ์)ของเลขที่��บวก ถ้�าผลบวกมากกว!า 1 ให�ที่ดหล�กถ้�ดไป็ข��นท�� 3 ถ้�าม�เลขอ�กให�บวกตั!อจนหมด หร#อถ้�าม�การที่ดจากข�0นที่�� 2

น�ามารวมก�นก!อนจ/งบวกจนหมดตารางการบวกเลขฐานสอง

+ 0 1

0 0 1

1 1 10

ตารางข�อเท�จจร�งของการบวกเลขฐานสองการบวก เท!าก�บ หมายเหต#0+0 00+1 11+0 11+1 0 ใส! 0 ทด 1

1+1+1 1 ใส! 1 ทด 1ต�วอย!างจงหาผลบวกของ 110012 + 11012

ฐานสอง ฐานส�บ 11001 1(2)4 + 1(2)3 + 0 + 0 + 1(2)0 25 +1101 1(2)3 + 1(2)2 + 0 + 1(2)0 +13 100110

38

จงหาผลบวกของ 1100111012 +101101112

110011101 + 10110111 1001010100

2.การลบเลขฐานสองการลบเลขฐานสอง ค#อ การลบเลขฐานสองตั�0งแตั! 2 จ�านวน

ข/0นไป็ออกจากก�น จะม�หล�กการลบเช่!นเด�ยวก�บการลบเลขฐานส�บ โดยเร��มตั�นการลบเลขตั�0งแตั!บ�ตัตั��าส�ด เป็,นบ�ตัที่��ม�ที่��ม�ความส�าค�ญน�อยส�ด (LSB) หร#อบ�ตัด�านขวาม#อส�ดก!อน และค!อยๆเล#�อนไป็ที่างบ�ตัที่��ม�ความส�าค�ญมากส�ด (MSB) หร#อบ�ตัด�านซ้�ายม#อส�ด หล�กส�าค�ญของการลบเลขม�ด�งน�0หล�กการลบ

1.       กรณ�หล�กตั�วตั�0งเที่!าก�นหร#อมากกว!าตั�วลบให�ลบตัามป็กตั�เหม#อนเลขฐานส�บ

2.       กรณ�ที่��ลบไม!ได�ตั�องย#มจากหล�งถ้�ดไป็มาเที่!าก�บเลขฐานน�0นๆ แล�วบวกก�บตั�วตั�0งในหล�กที่��จะลบ เช่!นเลขฐานสองก4ตั�องย#มมา 2 เลขฐานแป็ดย#มมา 8 และเลขฐานส�บหกก4ย#มมา 16

3.       ผลล�พธ์)ที่��ได�ตั�องเป็,นจ�านวนเลขที่��ไม!เก�นเลขฐานน�0นๆ4.       หล�กที่��ถ้ กย#มมาจะตั�องลดลง 1 เสมอ

ต�วอย!างท�� (1101)2 - (1011)2 = (……..)2

ว�ธ์�ที่�า 1101 -1011

ตัอบ (0010) 2

อธ์�บาย 1. 1 - 1 = (0) 2 ใส! 0

2. 0 – 1 ย#มบ�ตัถ้�ดไป็มา 2 = (0 + 2) - 1 = (1) 2

ใส! 1

3. ถ้ กย#มไป็เหล#อ 0 - 0 = (0)2 ใส! 0

4. 1 - 1 = (0) 2 ใส! 0

3.การคู�ณเลขฐานสองระบบเลขฐานสองม�ตั�วเลขเพ�ยงสองตั�วค#อ 0 ก�บ 1

การค ณในระบบเลขฐานสอง เราสามารถ้กระที่�าได�ในล�กษณะเช่!นเด�ยวก�บการค ณเลขฐานส�บซ้/�งก4ค#อ ที่�าการตั�0งหล�กของการค ณให�ตัรงก�น โดยเร��มจากบ�ที่ หร#อหล�กตั�วเลขที่างขวาม#อส�ดก!อน เม#�อได�ที่�าการค ณ ตั�วตั�0งด�วยตั�วค ณที่�กตั�าแหน!งแล�ว ก4ให�ที่�าการบวกโดยใช่�กฎการบวกเลขฐานสองตัามป็กตั�ที่�กป็ระการ การค ณจ/งม�หล�กเกณฑ์)ด�งน�0

1 × 1 = 11 × 0 = 00 × 1 = 00 × 0 = 0

ด�งตั�วอย!างตั!อไป็น�0

4.การหารเลขฐานสองหล�กการหาร

1.       ใช่�หล�กของการค ณเข�ามาช่!วย โดยการเดาผลหารก!อนแล�วน�าผลที่��ได�มาค ณก�บตั�วหาร2.       น�าผลค ณที่��ได�จากข�อ 1 มาลบก�บตั�วตั�0ง โดยใช่�หล�กการลบของเลขฐานน�0นๆ 3.       ที่�าเช่!นน�0ไป็เร#�อยๆ จนครบเหม#อนการหารเลขฐานส�บ

5.คูอมพร�เมนต'ระบบเลขที่��ใช่�ก�นใน Computer จะเป็,นเลข Binary ด�งน�0น

หากตั�องการบวกและลบเลขจ/งจ�าเป็,นตั�องม�ที่�0งวงจรบวกเลขและลบเลข จ/งที่�าให�เก�ดความย�!งยากมาก อ�กที่�0งหากผลล�พธ์)เก�ดค!าที่��ตั�ดลบจะเก�ดป็8ญหาว!าจะแสดงเคร#�องหมายอย!างไร ด�งน�0น ในระบบ

Computer จะม�การน�า Complement มาใช่�ในการลบเลขแตั!จะใช่�ว�ธ์�การบวกก�บ Complement ของตั�วลบ ซ้/�งจะได�ผลลบ และหากผลล� พธ์) เก�ดม�ค! าตั� ดลบ ก4 จ ะแสดงค! าผลล� พธ์) เป็, น เลข Complement

การคูอมพล�เมนต'เลขฐานสอง ในระบบเลข Binary จะม� Complement อย ! 2 อย!าง ค#อ

1’s complement ค#อการกล�บสถ้านะของส�ญญาณ จาก 0

เป็,น 1 และจาก 1 เป็,น 0 ที่�ก ๆ บ�ตั เช่!น 1’s complement ของ 1100011 ค#อ 0011100

2’s complement ค#อผลบวกของ 1’s complement

ก�บ เช่!น 2’s complement ของ 1100011 ค#อ 0011100 +

1 = 0011101 ซ้/�งม�ว�ธ์�ค�ดแบบล�ดค#อ ให�มองจากบ�ตัตั��าส�ด(ขวาส�ด) ไป็ย�งบ�ตัส งส�ด(ซ้�ายส�ด) หา 1 ตั�วแรกให�พบ หากย�งไม!พบ ให�คงค!าเด�มเอาไว� จนกระที่�0งพบ 1 ตั�วแรกก4ย�งคง 1 ไว� หล�งจากน�0นให�เป็ล��ยนค!าที่��เหล#อ จาก 0 เป็,น 1 และ จาก 1 เป็,น 0 ที่�0งหมด

ต�วอย!างBinary Number 1’s

complement 2’s complement 10101 01010

01011 10111 01000

01001 111100 000011

000100 11011011 00100100

00100101

ต�วอย!าง จงหา 1’S คอมพล�เมนตั) และ 2’S คอมพล�เมนตั) ของเลข   (11011100)2

ว�ธ์�ที่�า

001000111

00100100

+

1’S คอมพล�เมนตั)  ของ  (11011100)2     =            

                      2’S คอมพล�เมนตั)  ของ  (11011100)2     =

 

ต�วอย!าง  จงหา 1’S คอมพล�เมนตั) และ 2’S คอมพล�เมนตั) ของเลข   (10001001)2

ว�ธี�ท)า

1’S คอมพล�เมนตั)  ของ  (10001001)2     =            

                     2’S คอมพล�เมนตั) ของ (10001001)2     =

 การลบเลขฐานสองโดยใช่�ว�ธ์� 1 คอมพร�เมนตั)

1)    หา  1’S คอมพล�เมนตั) ของตั�วลบถ้�าจ�านวนบ�ตัของตั�วลบน�อยกว!าจ�านวนบ�ตัของตั�วตั�0งตั�องเตั�ม 0 ข�างหน�าให�จ�านวนบ�ตัของตั�วตั�0งและตั�วลบเที่!าก�น แล�วจ/งหา 1’S คอมพล�เมนตั)ของตั�วลบ2)      บวก  1’S คอมพล�เมนตั)  ของตั�วลบเข�าก�บตั�วตั�0ง3)      ถ้�าผลล�พธ์)จากข�อ 2 ม�จ�านวนบ�ตัมากกว!าตั�วตั�0งให�น�าบ�ตัที่��เก�นน�0นกล�บมาบวก บ�ตัตั��าส�ด (LSB) ผลบวกที่��ได�ค#อ ค�าตัอบ4)    ถ้�าผลล�พธ์)จากข�อ 2 ม�จ�านวนบ�ตั เที่!าก�บ ตั�วตั�0งหร#อตั�วลบ ให�หา 1’S คอมพล�เมนตั) ของผลบวกน�0น ผลล�พธ์)ที่��ได� ค#อ ค�าตัอบแตั!ม�ค!าเป็,นลบ

011101101

01110111

+

ต�วอย!าง จงหาผลตั!างของเลขฐานสอง ตั!อไป็น�0โดยใช่�ว�ธ์�ของ 1’S

คอมพล�เมนตั)ก)    10010 – 1011

ข)    10100 – 11001

ว�ธ์�ที่�าก)        10010 – 1011

     1’S คอมพล�เมนตั) ของ   01011 = 10100

                                                      10010 – 1011     =    111

ข)          10100 – 11001

        1’S คอมพล�เมนตั)  ของ   11010  =  00101                    10100  – 11001     =    -  101

6.การลบเลขฐานสองโดยใช้�ว�ธี� 2 คูอมพร�เมนต'1)    หา  2’S คอมพล�เมนตั) ของตั�วลบ ถ้�าจ�านวนบ�ตัของตั�วลบน�อยกว!าจ�านวนบ�ตัของตั�วตั�0งตั�องเตั�ม 0 ข�างหน�าให�จ�านวนบ�ตัของตั�วตั�0งและตั�วลบเที่!าก�น    แล�วจ/งหา   2’S   คอมพล�เมนตั) ของตั�วลบ2)     บวก  2’S คอมพล�เมนตั) ของตั�วลบเข�าก�บตั�วตั�0ง

100101010000110

+

1+

100111

101000011011010

+

3)    ถ้�าผลล�พธ์)จากข�อ 2 ม�จ�านวนบ�ตั มากกว!าตั�วตั�0ง ให�ตั�ดบ�ตัที่��เก�นที่�0งส!วนที่��เหล#อค#อค�าตัอบ 4)    ถ้�าผลล�พธ์)จากข�อ 2 ม�จ�านวนบ�ตั เที่!าก�บ ตั�วตั�0ง หร#อ ตั�วลบ ให�หา 2’S คอมพล�เมนตั) ของผลบวกน�0น ผลล�พธ์)ที่��ได� ค#อ ค�าตัอบแตั!ม�ค!าเป็,นลบ

ต�วอย!าง จงหาผลตั!างของเลขฐานสอง ตั!อไป็น�0โดยใช่�ว�ธ์�ของ 2’S

คอมพล�เมนตั)ก)       10010 – 1011

ข)       10100 – 11001

ว�ธี�ท)า      ก)         10010 – 1011

             1’S คอมพล�เมนตั)  ของ   01011  =  10100

2’S คอมพล�เมนตั)  ของ   01011  =  10101

                                     10010 – 1011       =             111 

      ข)            10100 - 11001

1’S คอมพล�เมนตั)  ของ   11001  =  00110

2’S คอมพล�เมนตั)  ของ   11001  =  00111     

 

100101010100111

+

1

101000011111011

+

2’S คอมพล�เมนตั)  ของ   11011  =  00100 + 1  = 101

10100 - 11001        =          - 101