Transcript บทที่ 6
บทที่ 6
ระบบเลข และการแทนรหัสข้ อมูล
ระบบเลขฐานต่างๆ (เน้น ฐาน 2 ฐาน 8 และ ฐาน
16)
การแปลงเลขฐาน
ความสัมพันธ์ของเลขฐาน 2 ฐาน 8 และฐาน
16
การคานวณทางคณิ ตศาสตร์ในระบบเลขฐาน
การแทนรหัสข้อมูลในระบบ BCD, EBCDIC, ASCII
204101 Introduction to Computer
1
ระบบเลขฐาน (ฐาน 2, 8, 10, 16)
Place Value: ระบบเลขที่แต่ละหลักมีค่าประจาหลัก
ค่าประจาหลัก คือ ค่าของเลขฐานนั้นๆ ยกกาลังตาม
ตาแหน่งหลักเริ่ ม จาก ศูนย์
Least significant digit : คือเลขที่มีค่าประจาหลักน้อย
Most significant digit : คือเลขที่มีค่าประจาหลักสู ง
การเขียนเลขฐานต้องมีค่าฐานกากับ ยกเว้นฐาน 10
204101 Introduction to Computer
2
ตัวเลขในฐานต่ างๆ
ฐาน 2
มีเลข 0,1
ฐาน 8
มีเลข 0,1,2,3,4,5,6,7
ฐาน 10 มีเลข 0,1,2,3,4,5,6,7,8,9
ฐาน 16 มีเลข 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
204101 Introduction to Computer
3
การแปลงเลขฐาน
การแปลงเลขฐานใดๆ เป็ น ฐาน 10
การแปลงเลขฐาน 10
เป็ น ฐานใดๆ
การแปลงเลขฐาน 2 เป็ น ฐาน 8 ฐาน 16
การแปลงเลขฐาน 8 ฐาน 16 เป็ น ฐาน 2
204101 Introduction to Computer
4
การแปลงเลขฐานใดๆเป็ นฐาน 10
อาศัยค่าประจาหลักคูณตัวเลขแต่ละหลัก นาผลคูณที่ได้มารวมกัน
(2542)10
ค่าประจาหล ัก
103 102 101 100
ค่าเลข
2
5
4 2
ค่าฐาน 10 = (2x103) + (5x102) + (4x101) + (2x100)
= 2000 + 500 + 40 + 2 = 2542 10
(2542)8
ค่าประจาหล ัก
83 82 81 80
ค่าเลข
2
5
4 2
ค่าฐาน 8 = (2x83) + (5x82) + (4x81) + (2x80)
= 1024 +204101
320
+ to32
+ 2 = 137010
Introduction
Computer
5
การแปลงเลขฐานใดๆเป็ นฐาน 10
ต ัวอย่าง 11012 = ( ? )10
23 22 21 20
1 1 0 1
ค่าประจาหล ัก
=(1 x 8) + (1 x 4) + (0 x 2) + (1 x 1)
= 8+4+0+1
= 13
204101 Introduction to Computer
6
การแปลงเลขฐาน 10 เป็ นฐานใดๆ
กรณี
เลขจำนวนเต็ม
ใช้หลัก MODULO คือ
เลขฐาน 10 เป็ นตัวตั้ง หารด้วยเลขฐานที่กาลังจะแปลง
ให้เก็บเศษจากการหาร
หารเลขต่อไปจนกระทั้งไม่สามารถหารได้
นาเศษของการหารมาวางต่อกัน เศษตัวสุ ดท้ายเป็ น Most
significant
204101 Introduction to Computer
7
ตัวอย่ างการแปลงเลขฐาน 10 เป็ นฐานใดๆ
เลขจานวนเต็ม
1310 = (
)2
1310 = (
4
2
13
2
6
1
2
3
0
1
ตอบ 11012
)4
13
3
คาตอบอ่านจาก
ล่างขึน้ บน
1
1
204101 Introduction to Computer
ตอบ
314
8
การตรวจสอบคาตอบ
ลองตรวจคำตอบดู
7729
63210 = (?)9
9
632
9
70
2
7
7
Ans.
7729
ค่ำประจำหลัก
92 9 1 90
81 9 1
= 7x81+7x9+2
= 567+63+2
= 63210
204101 Introduction to Computer
9
การแปลงเลขฐาน 10 เป็ นฐานใดๆ
กรณี
เลขจำนวนจริง: การแปลงแบ่งเป็ น
2 ส่ วน
ส่ วนหน้าจุดทศนิยมใช้วธิ ี MODULO
ส่ วนเลขหลังจุดทศนิยม
คูณเลขหลังจุดด้วยฐานที่จะไป บันทึกเฉพาะเลขหน้าจุด
ส่ วนเลขหลังจุดนามาคูณต่อ จนครบจานวนตาแหน่งหลัง
จุดที่ตอ้ งการ
204101 Introduction to Computer
10
ตัวอย่ าง การแปลงเลขฐาน 10 เป็ นฐานใดๆ กรณีเลขจำนวน
จริง
เลขจานวนจริ ง
13.4 10 = (
2
13
2
6
1
2
3
0
1
หน้ าทศนิยม
คาตอบอ่านจาก
ล่างขึน้ บน
.4 * 2 =
.8 * 2 =
.6 * 2 =
.2 * 2 =
)2
0
1
1
0
.8
.6
.2
.4
1
Ans: 1101.01102
204101 Introduction to Computer
11
การแปลงเลขฐาน 2 เป็ น ฐาน 8 ฐาน 16
หลักการ ใช้การจัดกลุ่มบิต
เลขฐาน 2 เป็ น ฐาน 8 จัดกลุ่มละ 3 บิต
เลขฐาน 2 เป็ น ฐาน 16 จัดกลุ่มละ 4 บิต
โดยเริ่ มจากบิตที่อยูใ่ กล้จุดทศนิยม หากกลุ่มสุ ดท้ายไม่ครบเติม
0 ไปข้างหน้า
ทาการหาค่าเป็ นเลขฐาน10 ของแต่ละกลุ่มที่จดั แล้ว
นามาต่อกันเพื่อเป็ นคาตอบโดยเรี ยงตามหลักซ้ายไปขวา
204101 Introduction to Computer
12
ตัวอย่ างการแปลงเลขฐาน 2 เป็ นฐาน 8
จานวนเต็ม 111112 = ( 37 ) 8
0 1 1
1 1 1
(0*4)+(1*2)+(1*1)
แปลงค่ าเป็ นเลขฐาน10
ของแต่ ละกลุ่ม
3
(1*4)+(1*2)+(1*1)
นามาต่ อกันเรียง
จากซ้ ายไปขวา
378
204101 Introduction to Computer
7
แปลงค่ าเป็ นเลขฐาน10
ของแต่ ละกลุ่ม
13
ตัวอย่ างการแปลงเลขฐาน 2 เป็ นฐาน 16
เลขจานวนจริ ง 0001.112 = (1.C ) 16
0 0 0 1
จุดทศนิยม
เป็ นตัวแบ่ ง
(0*8)+(0*4)+(0*2)+(1*1)
1
นามาต่ อกัน
1.C16
204101 Introduction to Computer
1 1 00 0
(1*8)+(1*4)+(0*2)+(0*1)
12
C
14
การแปลงเลขฐาน 8 ฐาน 16 เป็ น ฐาน 2
ใช้หลักการกระจายเลขแต่ละหลักออกเป็ น บิต ด้วยเลข
ฐาน 2
แยกเลขฐาน 8 หนึ่งหลัก กระจายเป็ นเลขฐาน 2 ได้ 3
บิต
แยกเลขฐาน 16 หนึ่งหลัก กระจายเป็ นเลขฐาน 2 ได้
4 บิต
204101 Introduction to Computer
15
ตัวอย่ างการแปลงเลขฐาน 8 ฐาน 16 เป็ น ฐาน 2
เลขจำนวนเต็ม
กรณี
738 =(
A316 = (
)2
7
1 1
3
1
0 1
Ans: 1110112
)
2
10
1
1010
3
0011
Ans: 1010000116
204101 Introduction to Computer
16
ตัวอย่ างการแปลงเลขฐาน 8 ฐาน 16 เป็ น ฐาน 2
กรณี เลขจำนวนจริง
7.38 = (
)2
7
.
1 1
1
A3.B16 = (
10
3
0 1
Ans: 111 . 0112
1
3
1010
0011
)
.
2
11
1011
Ans: 10100001.101116
204101 Introduction to Computer
17
แบบฝึ กหัด 1 จงแสดงวิธีการแปลงเลขฐานต่ อไปนี ้
ระหว่างเลขฐานใดๆ และเลขฐาน10
10012
= ( ? ) 10
10015
= ( ? ) 10
12
= (?)2
123 = ( ? ) 5
2550 = ( ? )16
ระหว่างเลขฐาน 2 ,8 , และ 16
101012 = ( ? ) 8
101011.01102 = ( ? ) 16
21.816 = ( ? ) 2
2358
= (?)8
204101 Introduction to Computer
18
การคานวณเลขฐาน
การบวกเลขฐาน
การลบเลขฐาน
การลบเลขฐาน แบบ Complement
204101 Introduction to Computer
19
การบวกเลขฐาน
การบวก
1101.112
+
0111.012
10101.00 2
5345
F31C16
+
1235
คานวณไม่ ได้
เพราะไม่ มีเลข
5 ในฐาน 5
204101 Introduction to Computer
+
235016
1
1 66C16 คาตอบที่ถูกต้ อง
20
การลบเลขฐาน
การลบเลข
1435
1011.0112
0111.1012
2345
0011.1102
4325
-
204101 Introduction to Computer
21
การบวก-ลบเลขฐานสอง และกำรตรวจสอบคำตอบด้ วยฐำนสิ บ
10012+10112= ( ? )
1 0 0 12
+
1 0 1 12
1 0 1 0 02
11012 - 1102 = ( ? )
1 1 0 12
1 1 02
0 1 1 12
ตรวจสอบคาตอบด้วยตนเอง
ิ คือ
ิ คือ
โดยเทียบก ับเลขฐานสบ
เทียบก ับลขฐานสบ
10012+10112
11012 - 1102
910 + 1110 = 20
1310 - 610 = 710
= 10100
= 1112
204101
2 Introduction to Computer
22
การหาคอมพลีเมนท์ (Complement)
Complement ของฐานใดๆ (ให้ R แทนฐาน) มี 2
ประเภท คือ Complement R และ Complement R-1
ฐาน R-1’s Comp.
R’s Comp
2
1’s Comp
2’s Comp.
8
7’s Comp
8’s Comp
10
9’s Comp
10’s Comp
204101 Introduction to Computer
23
การหาค่ าคอมพลีเมนท์
การหาคอมพลีเมนท์ ที่ R-1 ของเลขใดๆ
นาค่าสู งสุ ดของเลขนั้นๆลบด้วยเลขนั้น
ผลที่ได้คือ คอมพลีเมนท์ของเลขจานวนนั้น
เลข 2910 มีค่าสู งสุ ด คือ 99
9’s Comp : 99 -29 = 70
เลข 101.112 มีค่าสู งสุ ดคือ 111.11
1’s Comp : 111.11 - 101.11 = 010.00
204101 Introduction to Computer
24
การหาค่ าคอมพลีเมนท์์
การหาคอมพลีเมนท์ ที่ R ของเลขใดๆ
นาค่าสูงสุ ดของเลขนั้นบวกด้วยเลขที่ทาให้เกิดการ เปลี่ยน
หลัก ของค่าสู งสุ ด แล้วจึงลบด้วย เลขจานวนนั้นอีกที่หนึ่ง
เลข 2910 มี คอมพลีเมนท์ เป็ น
10’s Comp : (99 + 1) - 29 = 71
เลข 101.112 มีคอมพลีเมนทิเป็ น
2’s Comp : (111.11 + .01) - 101.11 =
0010.01
204101 Introduction to Computer
25
ข้ อสั งเกตุเกีย่ วกับคอมพลีเมนท์์
การหา R-1 Complement คือ การนาเลขจานวนนั้นลบ
ออกจากเลขสูงสุ ด
1’S Complement ในเลขฐาน 2 คือ การเปลี่ยนค่าของ
แต่ละบิตให้ตรงกันข้าม
ค่า R-1 Complement มีค่าน้อยกว่า R Complement อยู่
1 เสมอ ณ หลักขวามือสุ ด
2’S Comp = 1’S Comp + 1
ที่หลักขวามือสุ ด
204101 Introduction to Computer
26
การลบเลขแบบคอมพลีเมนท์
นาเลขตัวลบไปหาคอมพลีเมนท์
นาคอมพลีเมนท์ที่หาได้ บวก กับเลขตัวตั้ง
ผลลัพธ์ที่ได้ถา้ มีเลขเกินหลัก
กรณี R’S Comp. ให้ตดั ทิ้ง
กรณี R-1’S Comp. ให้นาเลขที่เกินหลัก บวกกับผลลัพธ์
ผลที่ได้คือคาตอบ
204101 Introduction to Computer
27
ตัวอย่ างการลบเลขแบบคอมพลีเมนท์
R-1’ Comp.
4325 - 1435 = ?
1011.011 2- 111.1012 = ?
1 444 - 143 = 301 1 1 111.111- 0 111.101= 1 000.010
2
3
432 +
301
1 233
1
234
+
4325 - 1435 = 2345
เทียบได้ก ับฐาน 10
(117-48)10=6910
2
3
1011.011 +
1000.010
1 0011.101 +
1
0011.110
1011.011 2- 111.1012 = 11.112
เทียบได้ก ับฐาน 10
204101 (11.375-7.625)
Introduction to Computer
10=3.7510
28
ตัวอย่ างการลบเลขแบบคอมพลีเมนท์
คอมพลีเมนท์ ที่ R
4325 - 1435 = ?
1011.011 2- 111.1012 = ?
1 1000 - 143 = 3021 10000.000- 0 111.101= 1 000.011
2
3
432 +
302
1 234
ต ัดทิง้
4325 - 1435 = 2345
เทียบได้ก ับฐาน 10
(117 - 48)10 = 6910
2
3
1011.011 +
1000.011
1 0011.110
ต ัดทิง้
1011.011 2- 111.1012 = 11.112
เทียบได้ก ับฐาน 10
204101 (11.375
Introduction to Computer
- 7.625)10 = 3.7510
29
การแทนรหัสข้ อมูลในหน่ วยความจา
Data Representation
การแทนรหัสข้อมูลที่เป็ นอักขระ (Alphanumeric Data
Representation)
การแทนรหัสข้อมูลที่เป็ นจานวนเลข (Numeric Data
Representation)
เลขจานวนเต็ม (Integer Representation)
เลขที่มีจุดทศนิยม (Floating Point Representation)
204101 Introduction to Computer
30
การแทนข้ อมูลทีเ่ ป็ นอักขระ
รหัส BCD : Binary Coded Decimal Code
รหัส EBCDIC: Extended Binary Coded Decimal
Interchange Code
รหัส ASCII : American Standard Code for Information
Interchange
204101 Introduction to Computer
31
รหัส BCD
ใช้ 6 บิตแทนอักขระ 1 ตัว
ระบบนี้แทนอักขระได้ 64 ตัว ( 26
รู ปแบบ)
C
B
A
8
2 1
4
Digit bit
Zone bit
Check bit/ Parity bit
204101 Introduction to Computer
32
รหัส BCD
การแทนรหัส BCD
อักขระแบบตัวเลข (0 - 9) Zone Bit จะเป็ น 00
อักขระแบบตัวอักษร หรื อ สัญลักษณ์พิเศษ Zone bit
เป็ น 11
204101 Introduction to Computer
33
รหัส EBCDIC
ใช้ 8 บิตแทนอักขระ 1 ตัว
ระบบนี้แทนอักขระได้ 256 ตัว ( 28
รู ปแบบ)
C
8
4
2
1
8
4
2
1
Digit bit
Zone bit
Check bit/ Parity bit
204101 Introduction to Computer
34
รหัส EBCDIC
การบันทึกข้อมูลในระบบ EBCDIC มี 2 แบบ
การบันทึกแบบ Zone Decimal
การบันทึกแบบ Packed Decimal
การบันทึกแบบตัวเลข Zone bit มีค่าเป็ น
1111 สาหรับเลขที่ไม่มีเครื่ องหมายนาหน้า ( 12 ,F)
1100 สาหรับเลขที่มีเครื่ องหมายบวก และ (+12 ,C)
1101 สาหรับเลขที่มีเครื่ องหมายลบ
(-12 ,D)
204101 Introduction to Computer
35
204101 Introduction to Computer
36
การแทนข้ อมูลแบบ Packed Decimal
เป็ นการเปลี่ยนลักษณะการเก็บรหัส EBCDIC ให้ใช้ใน
การคานวณ
การเปลี่ยนนี้จานวนหลักสามารถยืดหยุน่ ได้
ไม่ใช้กบั ตัวเลขที่เป็ นจุดทศนิยม
204101 Introduction to Computer
37
วิธีการ Packed Decimal
“ -123 ” 1101 0001 1101 0010 1101 0011
สลับส่ วน Zone bit และ Digit bit ของไบท์ขวาสุ ด
ตัด Zone bit ของไบท์ ที่เหลือ
บีบข้อมูลซึ่งเป็ น Digit Bit เข้ามา
มักทาอยูใ่ นเลขฐาน 16 (123D)16
วิธี Unpack ทาตรงกันข้าม กับการ Pack
204101 Introduction to Computer
38
รหัส ASCII
มี 2 ชนิด คือ 7 บิท กับ 8 บิท กาหนดให้ตวั เลข
มีค่าน้อยกว่าตัวอักษรเป็ นรหัสที่นิยมในปั จจุบนั
ลักษณะคล้าย EBCDIC มี Zone bit
มี 0101 และ 011 สาหรับตัวเลข
มี 1010 และ 100 สาหรับตัวอักษร
204101 Introduction to Computer
39
Parity bit หรือ Check bit
เป็ นบิทที่ใช้ตรวจสอบการ
แทนรหัส มี 2 ระบบ
Even Parity ระบบจานวนคู่
ระบบนี้ตอ้ งมีบิทที่เป็ นเลข 1
ทั้งหมดมีจานวนเป็ นเลขคู่
Odd Parity ระบบจานวนคี่
ระบบนี้ตอ้ งมีบิทที่เป็ นเลข 1
ทั้งหมดมีจานวนเป็ นเลขคี่
204101 Introduction to Computer
1 110001
0 110101
0 110001
1 110101
40
การแทนรหัสข้ อมูลทีเ่ ป็ นตัวเลข
การแทนข้อมูลแบบนี้ กาหนดเนื้อที่ในหน่วยความจามี
ขนาดตายตัว (Fixed length word) สาหรับแทนตัวเลข 1
จานวน
half-word ใช้เนื้อที่ 2 ไบท์
Full-word ใช้เนื้อที่ 4 ไบท์
Double-word ใช้เนื้อที่ 8 ไบท์
204101 Introduction to Computer
41
การแทนเลขจานวนเต็ม
Sign Magnitude / Pure binary code
2’S Complement
1’S Complement
** หมายเหตุ
โดยทัว่ ไปแล้วการแทนเลขด้วยระบบ 1’S Complement, 2’S Complement
จะใช้สาหรับการแทนเลขจานวนเต็มลบ ดังนั้นถ้าเลขที่ตอ้ งการแทนด้วยระบบ 1’S
Complement, 2’S Complement เป็ นเลขจานวนเต็มบวก ก็จะแสดงคาตอบเหมือนกับใช้วิธี
Sign Magnitude
204101 Introduction to Computer
42
Sign Magnitude
ระบบนี้บิตซ้ายสุ ดแทนเครื่ องหมายเรี ยกว่า Sign bit ที่
เหลือแทนขนาดของจานวนเลข เรี ยกว่า Magnitude
LSB
MSB
Sign
bit
แทน ลบ
0 แทน บวก
Magnitude
1
1 Word = 4 Byte = 32 Bit
204101 Introduction to Computer
43
แสดงการแทนค่ า
แบบ Sign Magnitude
1 Word = 4 Byte = 32 bit
บิตที่ 32
31
0
บิตที่ 1
2
0 0 .....................
1
0
011001
1 0 0 ......................... 0 1 1 0 0 1
204101 Introduction to Computer
25=110012
-25
44
แสดงการแทนค่ า (เพิม่ เติม)
การแสดงจานวนเลขในระบบ 1’S Complement ดังนี้
โจทยเป็ นเลขจานวนเต็มบวก แทน ด้วย true binary
เช่น 32, 109 , 2008 เป็ นต้น
โจทยเป็ นเลขจานวนเต็มลบ จะใช้คำ่ 1’S
Complement ของเลขจานวนบวกนั้น แทนเป็ นเลขลบของ
เลขบวกจานวนนั้น เช่น -32, -109 , -2008 เป็ นต้น
204101 Introduction to Computer
45
ตัวอย่ าง การแทนค่ า 1’ Complement
เช่น ต้องการแทนค่า 28 ด้วยระบบ 1’S Comp
28 = 111002
แปลง 28 จานวนเต็มเป็ นฐาน 2 ในรู ปแบบ32 บิต
MSB
LSB
000000..............0000000000 1 1 1 0 0
ค่ า true binary ของเลข 28
จะได้ คาตอบคือ 0 0000000 00000000 00000000 00011100
แทนเลขจานวนเต็มบวก 28 ด้ วยวิ204101
ธี 1’s
Comp
Introduction to Computer
46
ตัวอย่ าง การแทนค่ า 1’ Complement
เช่น ต้องการแทนค่า -28 ด้วยระบบ 1’S Comp
true binary ของเลขบวก
28 = 111002
MSB
28 จานวนเต็มเป็ นเลขฐาน 2
ในรู ปแบบ 32 บิต
LSB
00000000 00000000 00000000 000 1 1 1 0 0
หาค่ า 1’S Comp ของ 28 ที่แปลงเป็ นฐาน 2 โดยทาการกลับบิตข้ อมูลของทุกบิต ในรู ปแบบ 32
บิต นั่นคือจะใช้ 1’s comp ของเลขบวกแทนเลขลบของเลขบวกนั้น
11111111 11111111 11111111 1110 0 0 1 1
ดังนั้นจะแทน -28 ด้ วยวิธี 1’S Comp ในรู ปแบบ 32 บิต ได้ ดงั นี้
1 1111111 11111111 11111111 1110 0 0 1 1
204101 Introduction to Computer
47
แสดงการแทนค่ า
แบบ 2’S Complement
เป็ นระบบที่นิยมใช้ในเครื่ องคอมพเตอร
การแสดงจานวนเลขในระบบ 2’S Complement ดังนี้
โจทยเป็ นเลขบวก แทนดวยค
ำ่ true binary ของ
้
เลขบวกนั้น
โจทยเป็ นเลขลบ จะใช้คำ่ 2’S Complement ของ
เลขบวกจานวนนั้น แทนเป็ นเลขลบของเลขบวกจานวนนั้น
204101 Introduction to Computer
48
ตัวอย่ าง การแทนค่ า 2’ Complement
เช่น ต้องการแทนค่า -28 ด้วยระบบ 2’S Comp
True binary ของ 28
MSB
28 = 111002
แปลง 28 จานวนเต็มเป็ นฐาน 2
ในรู ปแบบ 32 บิต
LSB
00000000 00000000 0..0 0001 1 1 0 0
หาค่ า 1’S Comp ของ 28 ทีแ่ ปลงเป็ นฐาน 2
11111111 11111111 1..1 1110 0 0 1 1
1
ได้ คาตอบ คือ
+
11111111 11111111 1..1 111 0 0 1 0 0
หาค่ า 2’S Comp ของ204101
28 Introduction
ทีแ่ ปลงเป็
นฐาน 2 โดยนา 1 มาบวกกับหลักขวาสุ
ด
to Computer
49
Floating Point Representation
+E
R = +- .M * B
31
Sign
30
24
Exponent
0
Mantissa
S Sign แทนเครื่ องหมาย บวก ลบ ของจานวนเลข
E Exponent ส่ วนที่ยกกาลัง
M Mantissa เลขที่อยูห่ ลังจุด
204101 Introduction to Computer
50
ขั้นตอนการทา Floating point
เปลี่ยนเลขไปเป็ นฐาน 16
Normalization เลขฐาน 16 (มีเลขหลังจุด และ ยกกาลัง)
ในรู ป R = +- .M * B+- E
เปลี่ยน Sign, Exponent, Mantissa เป็ นเลขฐาน 2
Sign : 1 แทนค่าลบ 0 แทนค่าบวก
Mantissa : เปลี่ยนเป็ นฐาน 2 เติมเลขโดยต่อจาก Exponent
จากซ้าย มำ ขวาที่เหลือเติมศูนย์เพื่อให้ mantissa ครบ 24
204101 Introduction to Computer
51
bit
ขั้นตอนการทา Floating point
Exponent เป็ นได้ท้ งั ค่าบวก หรื อ ลบ จึงต้องใช้
วิธี Excess 64
exponent 16 = 4016 + true exponent16
ที่มาของ 4016 คือ [ 64 = 4016 ]
exponent16 ----> exponent 2
204101 Introduction to Computer
52
ตัวอย่ าง ทา Floating point ที่เป็ นเลขจำนวนเต็ม
28 ----> 1C16
ถอยไปหลังจุดกี่ตวั ก็จะได้เลขยก
กาลังของ (1016 ) เท่านั้น
1C16 = (+.1C * 102)16
จะได้ true exponent คือ 216
Sign ----> 0
Mantissa ----> 0001 11002
Exponent ----> 4016 + 216 = 42 16 --> 100 00102_
0 100 0010 0001 1100 0000.............0000
1 bit
7 bit
24 bit
204101 Introduction to Computer
53
ตัวอย่ าง ทา Floating point ที่เป็ นเลขทศนิยม
-28.5 ----> -1C.816
** สังเกตว่า ถอยไปหลังจุด 2
ตาแหน่งจะได้ true exponent
-1C.816 = (-.1C8 * 102)16
คือ 216
Sign ----> 1
Mantissa ----> 0001 1100 10002
Exponent ----> 4016 + 216 = 42 16 100 00102
1 100 0010 0001 1100 1000 0000..0000
1 bit
7 bits
24 bits
204101 Introduction to Computer
แบบฝึ กหัดที่ 2
1. จงแสดงวิธก
ี ารลบเลขแบบธรรมดา , R
complement และ R-1 Complement ของ
(5624-567)8
=( ? )8
2. จงแสดง Floating Point Representation ของ
เลขฐานต่อไปนี้ ด้วยวิธ ี Excess 64
•
75.2510
•
10011.102
204101 Introduction to Computer
55
จงแสดงวิ
ี ารแปลงเลขฐานต่
าเพือ
่
1.จงแสดงวิ
ธธก
ี ท
อไปนี้
100.15
= ( ? ) 10
123 = ( ? ) 5
101011.0112 =( ? )16
2358
= ( ? )16
แบบฝึ กหัด
2. การแทนค่าเลขจานวนเต็มด้วยวิธ ี 2’s complementของ
-33
กรณีใช ้ 2 ไบต์
้ ว้ ยวิธE
3. การแสดงFloating Point Representationของเลขฐานต่อไปนีด
ี xcess 64
a)75.25
b) -100011011.102
204101 Introduction to Computer
56
4. แสดงการลบเลขฐานต่อไปนี้ แบบ 1’s complement และแบบ 2’s complement
จงแสดงวิ
ี ารแปลงเลขฐานต่
าเพือ
่
1.จงแสดงวิ
ธธก
ี ท
อไปนี้
100.15
= ( ? ) 10
123 = ( ? ) 5
101011.0112 =( ? )16
2358
= ( ? )16
•
•
•
•
แบบฝึ
กหั
ด
25.02
503
10
5
2B.6
9D
16
16
2. การแทนค่าเลขจานวนเต็มด้วยวิธ ี 2’s complementของ
11111111111010002
-33
กรณีใช ้ 2 ไบต์
้ ว้ ยวิธE
3. การแสดงFloating Point Representationของเลขฐานต่อไปนีด
ี xcess 64
a)75.25
b) -100011011.102
01000010010010110100000000000000
11000011000100011011100000000000
204101 Introduction to Computer
57
4. แสดงการลบเลขฐานต่อไปนี้ แบบ 1’s complement และแบบ 2’s complement