การคำนวณทางคณิตศาสตร์
3.1 การบวกเลขฐานสอง เลขฐานแปด และเลขฐานสิบหก
หลักการบาก
1. 1. ให้บวกตามปกติเหมือนเลข ฐานสิบ
2. 2. ถ้าผลบวกที่ได้มีค่าไม่ เกินค่าเลขฐานนั้นๆ ให้ใส่ผลลัพธ์ได้เลย
3. 3. ถ้าผลบวกที่ได้มีค่าเกิน ค่าเลขฐานนั้นๆ ให้เปลี่ยนผลลัพธ์ที่ได้เป็นเลขฐานนั้นๆ แล้วใส่ LSB หรือ LSD เป็นผลลัพธ์ ส่วนที่เหลือจะเป็นตัวทด
4. 4. กรณีที่มีตัวทดให้เปลี่ยน ตัวทดเป็นเลขฐานสิบแล้วจึงเริ่มทำข้อ 1 และทำไปเรื่อยๆ จนหมดทุกหลัก
ตัวอย่างที่ 3.1 (1101)2 + (1011)2 = (……..)2
วิธีทำ 1101 +
1011
ตอบ (11000) 2
อธิบาย 1. 1+1 = (2) 10 = (10) 2 ใส่ 0 ทดไป 1
2. 0+1+1(ตัวทด) = (2) 10 = (10) 2 ใส่ 0 ทดไป 1
3. 1+0+1(ตัวทด) = (2) 10 = (10) 2 ใส่ 0 ทดไป 1
4. 1+1+1(ตัวทด) = (3) 10 = (11) 2 ใส่ 11
ตัวอย่างที่ 3.2 (4257)8 + (5650)8 = (……..)8
วิธีทำ 4257 +
5650
ตอบ (12127) 8
อธิบาย 1. 7+0 = (7) 10 = (7) 8 ใส่ 7
2. 5+5 = (10) 10 = (10 – 8 = 2) = (12) 8 ใส่ 2 ทดไป 1
3. 2+6+1(ตัวทด) = (9) 10 = (9 – 8 = 1) = (11) 8 ใส่ 1 ทดไป 1
4. 4+5+1(ตัวทด) = (10) 10 = (10 – 8 = 2) = (12) 8 ใส่ 12
ตัวอย่างที่ 3.3 (A9D2)16+ (0F57)16 = (……..)16
วิธีทำ A9D2 +
0F57
ตอบ (B929) 16
อธิบาย 1. 2+7 = (9) 10 = (9)16 ใส่ 9
2. 13+5 = (18) 10 = (18 – 16 = 2) = (12) 16 ใส่ 2 ทดไป 1
3. 9+15+1(ตัวทด)= (25) 10 = (25 – 16 = 9) = (19) 16 ใส่ 9 ทดไป 1
4. 10+0+1(ตัวทด)= (11) 10 = (B) 16 ใส่ B
3.2 การลบเลขฐานสอง เลข ฐานแปด เลขฐานสิบหก
หลักการลบ
1. 1. กรณีหลักตัวตั้งเท่ากัน หรือมากกว่าตัวลบให้ลบตามปกติเหมือนเลขฐานสิบ
2. 2. กรณีที่ลบไม่ได้ต้องยืม จากหลังถัดไปมาเท่ากับเลขฐานนั้นๆ แล้วบวกกับตัวตั้งในหลักที่จะลบ เช่นเลขฐานสองก็ต้องยืมมา 2 เลขฐานแปดยืมมา 8 และเลขฐานสิบหกก็ยืมมา 16
3. 3. ผลลัพธ์ที่ได้ต้องเป็น จำนวนเลขที่ไม่เกินเลขฐานนั้นๆ
4. 4. หลักที่ถูกยืมมาจะต้องลด ลง 1 เสมอ
ตัวอย่างที่ 3.4 (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.5 (4257)8 - (650)8 = (……..)8
วิธีทำ 4257 -
650
ตอบ (3407) 8
อธิบาย 1. 7 - 0 = (7) 8 ใส่ 7
2. 5 - 5 = (0) 8 ใส่ 0
3. 2 – 6 ยืมหลักถัดไปมา 8 = (2+8) - 6 = (4) 8 ใส่ 4
4. ถูกยืมไปเหลือ 3 – 0 = (3) 8 ใส่ 3
ตัวอย่างที่ 3.6 (A9D2)16- (0F57)16 = (……..)16
วิธีทำ A9D2 -
0F57
ตอบ (9A7B) 16
อธิบาย 1. 2 – 7 ยืมหลักถัดไปมา 16 =(2+16) – 7 = (11) 10 = (B)16 ใส่ B
2. ถูกยืมไปเหลือ (C) 16 = 12 – 5 = (7) 10 = (7) 16 ใส่ 7
3. 9 – (F) 16 = 9 – 15 ยืมหลักถัดไปเป็น (9+16) - 15 = (10) 10 = (A) 16 ใส่ A
4. ถูกยืมไปเหลือ 9 – 0 = (9) 16 ใส่ 9
3.3 การใช้คอมพลีเมนต์แทนจำนวนลบของเลขฐานต่างๆ
เลขจำนวนลบหรือเลขที่เป็นลบ ของเลขฐานต่างๆ โดยเฉพาะเลขฐานสองที่จะใช้ประมวลผลในเครื่องคอมพิวเตอร์จะต้อง มีวิธีแสดงค่าที่ถูกต้องซึ่งก็มีการคิดค้นระบบที่จะใช้หลายวิธี แต่ขอกล่าวถึงเพียงวิธีเดียวคือ การใช้จำนวนคอมพลีเมนต์ แทนเลข จำนวนลบ เลขจำนวนลบหรือเลขที่มีค่าเป็นลบในที่นี้จะหมายถึงตัวลบ เมื่อนำตัวลบเปลี่ยนเป็นจำนวนคอมพลีเมนต์แล้วนำไปบวกเข้ากับตัวตั้ง ก็จะได้ผลลบที่ถูกต้องออกมา
การคอมพลีเมนต์เลขฐานสิบ มี 2 วิธี คือ 9’s complement และ 10’s complement
การคอมพลีเมนต์เลขฐานสอง มี 2 วิธี คือ 1’s complement และ 2’s complement
การคอมพลีเมนต์เลขฐานสิบ มี 2 วิธี คือ 7’s complement และ 8’s complement
การคอมพลีเมนต์เลขฐานสิบ มี 2 วิธี คือ 15’s complement และ 16’s complement
ตารางแสดงจำนวนคอมพลีเมนต์ของเลขฐานต่างๆ
เลขฐานสิบ
เลขฐานแปด
เลขฐานสิบหก
เลขฐานสอง
ฐาน สิบ
9’s com
ฐาน แปด
7’s com
ฐาน สิบหก
15’s com
ฐานสอง
1’s com
0
9-0= 9
0
7
0
F
0
1
1
9-1= 8
1
6
1
E
1
0
2
9-2= 7
2
5
2
D
-
-
3
9-3= 6
3
4
3
C
-
-
4
9-4= 5
4
3
4
B
-
-
5
9-5= 4
5
2
5
A
-
-
6
9-6= 3
6
1
6
9
-
-
7
9-7= 2
7
0
7
8
-
-
8
9-8= 1
-
-
8
7
-
-
9
9-9= 0
-
-
9
6
-
-
-
A
5
-
-
-
B
4
-
-
-
C
3
-
-
-
D
2
-
-
-
E
1
-
-
-
F
0
-
-
และ 10’s complment คือ 9’s complment +1
8’s complment คือ 7’s complment +1
16’s complment คือ 15’s complment +1
2’s complment คือ 1’s complment +1
ตัวอย่างที่ 3.7 (1101)2 - (1011)2 = (……..)2 โดยใช้วิธีคอมพลีเมนต์ 1 และ 2
วิธีทำ 1101 +
1's complement ของ (1011)2 = 0100
ตัวทด 1 0001 +
นำตัวทดมาบวก 1
0010
ตอบ (0010) 2
วิธีทำ 1101 +
2's complement ของ (1011)2 = 0101 (1's complement + 1)
ตัว ทดไม่พิจารณา 1 0010
ตอบ (0010) 2
ตัวอย่างที่ 3.8 (4257)8 - (0650)8 = (……..)8 โดยใช้วิธีคอมพลีเมนต์ 7 และ 8
วิธีทำ 4257 +
7's complement ของ (0650)8 = 7127
ตัวทด 1 3406
นำตัวทดมาบวก 1
3407
ตอบ (3407) 8
วิธีทำ 4257 +
8's complement ของ (0650)8 = 7130 (7's complement + 1)
ตัวทดไม่พิจารณา 1 3407
ตอบ (3407)8
ตัวอย่างที่ 3.9 (A9D2)16- (0F57)16 = (……..)16
วิธีทำ A9D2 +
15's complement ของ (0F57)16 = F0A8
ตัวทด 1 9A7A
นำตัวทดมาบวก 1
9A7B
ตอบ (9A7B) 16
วิธีทำ A9D2 +
16's complement ของ (0F57)16 = F0A9 (15's complement + 1)
ตัวทดไม่พิจารณา 1 9A7B
ตอบ (9A7B) 16
3.4 การคูณเลขฐานสอง เลขฐานแปด เลขฐานสิบหก
หลักการคูณ
1. 1. ตั้งคูณตามปกติเหมือนเลข ฐานสิบ
2. 2. ถ้าผลคูณมีค่าไม่มากกว่า เลขฐานนั้นๆ ให้ใส่ผลลัพธ์ได้เลย
3. 3. กรณีผลคูณของคู่ใดมีค่า มากกว่าเลขฐานนั้นๆ ผลคูณที่ได้นั้นจะเป็นเลขฐานสิบ ให้เปลี่ยนเป็นเลขฐานนั้นๆ แล้วใส่ผลลัพธ์ และมีตัวทด
4. 4. กรณีมีตัวทด ให้นำผลคูณของหลักถัดไปรวมกับตัวทดผลลัพธ์ที่ได้ แล้ว จึงเริ่มทำข้อ 2 และทำไปเรื่อยๆ จนครบทุกคู่
5. นำผลคูณของ ตัวคูณแต่ละหลักมารวมกัน
ตัวอย่างที่ 3.10 (1101)2 x (101)2 = (……..)2
วิธีทำ 1101 x
101
1101
0000 +
1101
1000001
ตอบ (1000001) 2
ตัวอย่างที่ 3.11 (427)8x (45)8 = (……..)8
วิธีทำ 427 x
45
2563 +
2134
24123
ตอบ (24123) 8
ตัวอย่างที่ 3.12 (2A9)16x (45)16 = (……..)16
วิธีทำ 2A9 x
45
D4D +
AA4 .
B78D
ตอบ (B78D) 16
3.5 การหารเลขฐานสอง เลขฐานแปด เลขฐานสิบหก
หลักการหาร
1. 1. ใช้หลักของการคูณเข้ามา ช่วย โดยการเดาผลหารก่อนแล้วนำผลที่ได้มาคูณกับตัวหาร
2. 2. นำผลคูณที่ได้จากข้อ 1 มาลบกับตัวตั้ง โดยใช้หลักการลบของเลขฐานนั้นๆ
3. 3. ทำเช่นนี้ไปเรื่อยๆ จนครบเหมือนการหารเลขฐานสิบ
ตัวอย่างที่ 3.13 (100001) 2 /(1101)2 = (……..)2
วิธีทำ 1101 )1000001(101
01101
001101
1101
0000
ตอบ (101) 2
ตัวอย่างที่ 3.11 (2134) 8 /(427)8 = (……..)8
วิธีทำ 427)24123(45
2134
2563
2563
ตอบ (45) 8
ตัวอย่างที่ 3.12 (B78D) 16 /(2A9)16 = (……..)16
วิธีทำ 2A9)B78D(45
AA4
D4D
D4D
ตอบ (45) 16
อธิบาย 1. ได้ผลลัพธ์ 4 x ตัวหาร 2A9 = AA4
- 4 x 9 = 36 = (24) 16 ใส่ 4 ทด 2
- 4 x A = 40 + 2 = 42 = (2A)16 ใส่ A ทด 2
- 4 x 2 = 8 + 2 = 10 = (A) 16 ใส่ A
2. 2. B78 - AA4 = D4D
3. 3 . ได้ผลลัพธ์ 5 x ตัวหาร 2A9 = D4D
แบบฝึกหัด
1. จงทำเป็นผลสำเร็จ
ก. (110011) 2 + (11011) 2 = (………) 2
ข. (101110.01 ) 2 + (1011.11) 2 = (………) 2
ค. (4670) 8 + (754) 8 = (………) 8
ง. (C9F5) 16 + (1B8) 16 = (………) 16
2. จงทำเป็นผลสำเร็จ
ก. (101 00) 2 - (01011) 2 = (………) 2
ข. (10100.101) 2 - (01011.110) 2 = (………) 2
ค. (7235) 8 - (547) 8 = (………) 8
ง. (D582) 16 - (8B9) 16 = (………) 16
3. จงหาผลลัพธ์จากโจทย์ต่อ ไปนี้ โดยวิธีคอมพลีเมนต์
ก. (10110) 2 - (01011) 2 = (………) 2
ข. (6135) 8 - (547) 8 = (………) 8
ค. (A572) 16 - (7B5) 16 = (………) 16
4. จงทำเป็นผลสำเร็จ
ก. (1101011) 2 x (1010) 2 = (………) 2
ข . (542) 8 x (47) 8 = (………) 8
ค. (A572) 16 x (75) 16 = (………) 16
5. จงทำเป็นผลสำเร็จ
ก. (101110) 2 / (1010) 2 = (………) 2
ข. (25375) 8 / (37) 8 = (………) 8
ค. (E284) 16 / (85) 16 = (………) 16