งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

บทที่ 5 ระบบเลขฐานและรหัสแทนข้อมูล

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "บทที่ 5 ระบบเลขฐานและรหัสแทนข้อมูล"— ใบสำเนางานนำเสนอ:

1 บทที่ 5 ระบบเลขฐานและรหัสแทนข้อมูล

2 5.1 บทนำ ปัจจุบันการดำเนินชีวิตของมนุษย์ จำเป็นต้องเกี่ยวข้องกับข้อมูลจำนวนมากมายหลายประเภทและด้วยขีดจำกัดในการจัดการข้อมูลของมนุษย์ ทำให้ต้องมีการนำคอมพิวเตอร์มาช่วยในการประมวลผล ซึ่งระบบคอมพิวเตอร์ชนิดดิจิตอลคอมพิวเตอร์ ต้องอาศัยตัวเลขและหลักการทางคณิตศาสตร์ในการประมวลผล ดังนั้นเพื่อให้เข้าใจถึงวิธีการจัดเก็บข้อมูลและวิธีการประมวลผลของคอมพิวเตอร์ จึงควรเข้าใจเกี่ยวกับระบบเลขฐานและรหัสข้อมูลประเภทต่าง ๆ

3 5.2 ระบบเลขฐาน 5.2.1 ระบบเลขฐานสิบ (Decimal Number System) หมายถึงระบบเลขฐานที่ใช้ในชีวิตประจำวันของมนุษย์ ตัวเลขในระบบนี้มีทั้งหมด 10 ตัว คือ เลข 0 ถึง 9 การนำค่าตัวเลขเหล่านี้มารวมกลุ่มกันทำให้เกิดค่าตัวเลขขึ้นมา ซึ่งจะมีค่ามากหรือน้อยขึ้นอยู่กับว่าค่าตัวเลขเหล่านั้นอยู่ตำแหน่งหลักใด เช่น 7,654 = (7 X 103) + (6 X 102) + (5 X 101) + (4 X 100) = 7,

4 5.2 ระบบเลขฐาน 5.2.2 ระบบเลขฐานสอง (Binary Number System) หมายถึงระบบเลขฐานที่ได้ถูกนำมาใช้กับระบบคอมพิวเตอร์ ประกอบด้วยตัวเลข 2 ตัว คือ 0 และ 1 ซึ่งเหมาะในการนำมาใช้กับระบบอิเล็กทรอนิกส์ที่ประกอบด้วยสถานะทางไฟฟ้า เปิด และปิด เท่านั้น ทำให้เลขฐานสองเป็นระบบเลขฐานที่คอมพิวเตอร์ทำการประมวลผลได้เร็วที่สุด เช่น ( )2

5 5.2 ระบบเลขฐาน 5.2.3 ระบบเลขฐานแปด (Octal Number System) หมายถึงระบบเลขฐานที่ประกอบด้วยตัวเลข 8 ตัว คือ 0 ถึง 7 สามารถนำมาใช้กับระบบคอมพิวเตอร์ได้ เช่น ในคอมพิวเตอร์ IBM 7090 ใช้ระบบเลขฐานแปดในการจัดเก็บข้อมูล เช่น (167)8 = ( )2 จะเห็นว่าค่าตัวเลขเดียวกันถ้าจัดเก็บโดยใช้ระบบเลขฐานแปด ใช้ 3 หลัก แต่ถ้าจัดเก็บโดยใช้ระบบเลขฐานสอง ต้องใช้ถึง 7 หลัก

6 5.2 ระบบเลขฐาน 5.2.4 ระบบเลขฐานสิบหก (Hexadecimal Number System) หมายถึงระบบเลขฐานที่ประกอบด้วยสัญลักษณ์ ดังนี้ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E และ F ซึ่งการใช้ระบบเลขฐานสิบหกทำให้ประหยัดปริมาณของหน่วยความจำในการจัดเก็บข้อมูล เช่น (6AB9)16 = ( )2

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

8 5.3 การแปลงระบบเลขฐาน 5.3.1 การแปลงเลขฐานอื่น ๆ เป็นเลขฐานสิบ การแปลงเลขฐานอื่น ๆ เป็นเลขฐานสิบ วิธีที่ง่ายที่สุด คือ วิธีใช้หลักการคูณด้วยเลขประจำฐาน ตัวอย่างที่ 5.1 จงแปลงเลข (167)8 เป็นเลขฐานสิบ (167)8 = (1 X 82) + (6 X 81) + (7 X 80) = = (119)10

9 5.3 การแปลงระบบเลขฐาน ตัวอย่างที่ 5.2 จงแปลงเลข (110100)2 เป็นเลขฐานสิบ (110100)2 = (1 X 25) + (1 X 24) + (0 X 23) + (1 X 22) + (0 X 21) + (0 X 20) = = (52)10

10 5.3 การแปลงระบบเลขฐาน 5.3.2 การแปลงเลขฐานสิบเป็นเลขฐานอื่น ๆ การแปลงเลขฐานเลขฐานสิบเป็นเลขฐานอื่น ๆ ทำได้ด้วยวิธีการหารด้วยฐานที่ต้องการ จนกระทั้ง ได้ผลลัพธ์เป็นศูนย์ (0) แล้วนำเศษมาเรียงกันตามลำดับจากตัวสุดท้ายไปสู่ตัวแรก

11 ตัวอย่างที่ 5.3 จงแปลงเลข (119)10 เป็นเลขฐานแปด เศษ เศษ 6 0 เศษ 1 ดังนั้น (119)10 = (167)8

12 ตัวอย่างที่ 5.4 จงแปลงเลข (52)10 เป็นเลขฐานสอง เศษ เศษ เศษ เศษ เศษ 1 0 เศษ 1 ดังนั้น (52)10 = (110100)2

13 5.3.1 การแปลงเลขฐาน m เป็นเลขฐาน n (m และ n เป็นเลขฐานใด ๆ ที่ไม่ใช้ฐานสิบ) ทำได้โดยแปลงเลขเดิมให้เป็นฐานสิบก่อน แล้วจึงแปลงเลขฐานสิบที่ได้ให้เป็นเลขฐานที่ต้องการ ตัวอย่างที่ 5.5 จงแปลงเลข (167)8 เป็นเลขฐานสอง ขั้นตอนที่ 1 แปลง (167)8 ให้เป็นฐานเลขสิบก่อน (167)8 = (1 X 82) + (6 X 81) + (7 X 80) = = (119)10

14 ตัวอย่างที่ 5.5 จงแปลงเลข (167)8 เป็นเลขฐานสอง ขั้นตอนที่ 2 แปลง (119)10 ให้เป็นเลขฐานสอง (167)8 = (1 X 82) + (6 X 81) + (7 X 80) = = (119)10

15 ขั้นตอนที่ 2 แปลง (119)10 ให้เป็นเลขฐานสอง เศษ เศษ เศษ เศษ เศษ เศษ 1 0 เศษ 1 ดังนั้น (167)10 = ( )2

16 5.4 การบวกเลขในระบบเลขฐาน
การบวกเลขในระบบเลขฐานต่าง ๆ จำนวนเลขที่นำมาบวกกันนั้นจะต้องอยู่ในระบบเลขฐานเดียวกัน ถ้าตัวเลขที่นำมาบวกกันอยู่ในระบบเลขฐานต่างกัน ต้องแปลงให้อยู่ในระบบเลขฐานเดียวกันก่อน การบวก ใช้วิธีการเหมือนกับการบวกเลขฐานสิบ คือ เมื่อตัวเลขหลักใดหลักหนึ่งบวกกันแล้วมีค่ามากกว่าหรือเท่ากับระบบเลขฐานนั้น ๆ จะทดไปในตำแหน่งถัดไป

17 5.4 การบวกเลขในระบบเลขฐาน
ตัวอย่างที่ 5.6 จงบวกเลขต่อไปนี้ (1010)2 + (101)2 วิธีทำ

18 5.4 การบวกเลขในระบบเลขฐาน
1. หลักแรก = 1 ตัวทด 1 ตัวตั้ง ตัวบวก ผลลัพธ์

19 5.4 การบวกเลขในระบบเลขฐาน
2. หลักที่สอง = 1 ตัวทด 1 ตัวตั้ง ตัวบวก ผลลัพธ์

20 5.4 การบวกเลขในระบบเลขฐาน
3. หลักที่สาม = 1 ตัวทด 1 ตัวตั้ง ตัวบวก ผลลัพธ์

21 5.4 การบวกเลขในระบบเลขฐาน
4. หลักที่สี่ 1 ไม่มีตัวบวก ดึงลงมาได้เลย ดังนั้น (1010)2 + (101)2 = (1111)2 ตัวทด 1 ตัวตั้ง ตัวบวก ผลลัพธ์

22 5.4 การบวกเลขในระบบเลขฐาน
ตัวอย่างที่ 5.7 จงบวกเลขต่อไปนี้ (2564)8 + (742) 8 วิธีทำ 1. หลักแรก 2+4 = 6 ไม่เกิน 8 สามารถใส่ผลลัพธ์ได้เลย ตัวทด 2 5 6 4 ตัวตั้ง 7 ตัวบวก ผลลัพธ์

23 5.4 การบวกเลขในระบบเลขฐาน
2. หลักที่สอง 6+4 = 10 เกิน 8 อยู่ 2 จึงใส่ 2 ทด 1 1 ตัวทด 2 5 6 4 ตัวตั้ง 7 ตัวบวก ผลลัพธ์

24 5.4 การบวกเลขในระบบเลขฐาน
3. หลักที่สาม 5+7 = 12+1 (ตัวทด) = 13 ซึ่งเกิน 8 อยู่ 5 จึงใส่ 5 ทด 1 1 ตัวทด 2 5 6 4 ตัวตั้ง 7 ตัวบวก ผลลัพธ์

25 5.4 การบวกเลขในระบบเลขฐาน
4. หลักที่สี่ 2+1 (ตัวทด) = 3 ซึ่งไม่เกิน 8 สามารถใส่ผลลัพธ์ได้เลย ดังนั้น (2564)8 + (742) 8 = (3526)8 1 ตัวทด 2 5 6 4 ตัวตั้ง 7 ตัวบวก 3 ผลลัพธ์

26 5.4 การลบเลขในระบบเลขฐาน
การลบเลขในระบบเลขฐานต่าง ๆ จำนวนเลขที่นำมาลบกันนั้นจะต้องอยู่ในระบบเลขฐานเดียวกัน ถ้าตัวเลขที่นำมาลบกันอยู่ในระบบเลขฐานต่างกัน ต้องแปลงให้อยู่ในระบบเลขฐานเดียวกันก่อน การลบ ทำได้โดยตั้งหลักให้ตรงกันจากขวาไปซ้าย แล้วทำการลบเหมือนเหมือนวิธีการลบเลขในระบบเลขฐานสิบ คือ ถ้าตัวตั้งมากกว่าตัวลบก็ให้ลบแบบเลขฐานสิบ ถ้าตัวตั้งน้อยกว่าตัวลบให้ขอยืมหลักทางซ้ายมา 1

27 5.5 การลบเลขในระบบเลขฐาน
ตัวอย่างที่ 5.8 จงลบเลขต่อไปนี้ (10101)2 + (111)2 1. หลักแรก = 0 ตัวทด 1 ตัวตั้ง ตัวลบ ผลลัพธ์

28 5.5 การลบเลขในระบบเลขฐาน
2. หลักที่สอง ซึ่งตังตั้งมีค่าน้อยกว่าตัวลบ จึงยืมหลักทางซ้ายมา 1 ทำให้หลักทางซ้ายมีค่าเป็น 0 จากเดิมที่มีค่าเป็น 1 2 ตัวทด 1 ตัวตั้ง ตัวลบ ผลลัพธ์

29 5.5 การลบเลขในระบบเลขฐาน
3. หลักที่สาม ซึ่งตังตั้งมีค่าน้อยกว่าตัวลบ จึงยืมหลักที่สี่มา 1 แต่หลักที่สี่มีค่าเป็น 0 ดังนั้นจึงต้องยืมหลักที่ห้ามา 1 2 ตัวทด 1 ตัวตั้ง ตัวลบ ผลลัพธ์

30 5.5 การลบเลขในระบบเลขฐาน
4. หลักที่สี่ ไม่มีตัวลบ ดึงลงมาได้เลย ดังนั้น (10101)2 - (111)2 = (1110)2 2 ตัวทด 1 ตัวตั้ง ตัวลบ ผลลัพธ์

31 5.6 รหัสแทนข้อมูล (Data Representation)
รหัสแทนข้อมูล หมายถึง รหัสที่ใช้แทนตัวเลข ตัวอักษร หรือสัญลักษณ์พิเศษต่าง ๆ ที่มีใช้ในโปรแกรมคำสั่งข้อมูล เพื่อทำการประมวลผลด้วยคอมพิวเตอร์ ซึ่งรหัสข้อมูลแบ่งออกเป็น 2 ประเภท คือ รหัสภายนอกเครื่อง (External Code) หมายถึง รหัสที่ใช้สำหรับการบันทึกข้อมูลที่ยังอยู่ภายนอกเครื่องคอมพิวเตอร์ เช่น การบันทึกข้อมูลบนบัตรเจาะรู โดยใช้ลักษณะการเจาะรูแต่ละแถวแทนข้อมูล 1 ตัวอักษร

32 5.6 รหัสแทนข้อมูล (Data Representation)
5.6.2 รหัสภายในเครื่อง (Internal Code) หมายถึง รหัสที่ใช้แทนข้อมูลที่ถูกอ่านและบันทึกอยู่ในหน่วยความจำของเครื่องคอมพิวเตอร์ ซึ่งรหัสที่ใช้แทนข้อมูลภายในเครื่องคอมพิวเตอร์ มีหลายรูปแบบ คือ 1. รหัสบีซีดี (Binary Coded Decimal: BCD) เป็นรหัสที่ใช้เลขฐานสองแทนเลขฐานสิบ ใช้จำนวน 6 บิต เพื่อแทนข้อมูล 1 อักขระ ดังนั้นบีซีดีจึงสามารถสร้างรหัสที่มีความแตกต่างกันได้ 64 รหัส (26 = 64) การกำหนดรหัสบีซีดีสำหรับ 1 อักขระนี้ทำได้โดยแบ่งจำนวน 6 บิต ออกเป็น 2 ส่วน คือ

33 5.6 รหัสแทนข้อมูล (Data Representation)
Zone Bit ใช้ 2 Bit แรก Digit Bit ใช้ 4 Bit หลัง ข้อมูลที่เป็นตัวเลข ส่วนที่เป็น Zone Bit จะถูกกำหนดเป็น 00 เท่านั้น ส่วนที่เป็น Digit Bit ใช้บันทึกค่าของตัวเลขนั้น ๆ ในระบบเลขฐานสอง กรณีที่ตัวเลขมีค่ามากกว่า 1 หลัก สามารถกำหนดเป็นรหัสบิซีดี โดยแยกกำหนดครั้งละ 1 หลัก Zone Bit Digit Bit 1

34 5.6 รหัสแทนข้อมูล (Data Representation)
ตัวอย่างที่ 5.9 ค่า 9 แสดงเป็นรหัสบีซีดี ดังนี้ ตัวอย่างที่ 5.10 ค่า 374 แสดงเป็นรหัสบีซีดี ดังนี้ Zone Bit Digit Bit 1 000011 000111 000100 3 7 4

35 5.6 รหัสแทนข้อมูล (Data Representation)
ข้อมูลที่เป็นตัวอักษร การแทนข้อมูลที่เป็นตัวอักษรด้วยรหัสบีซีดี ทำได้ดังนี้ คือ ข้อมูล Zone Bit Digit Bit ตัวอักษร A-I 11 ค่าของข้อมูล นั้นในระบบเลขฐานสอง ตัวอักษร J-R 10 ตัวอักษร S-Z 00

36 5.6 รหัสแทนข้อมูล (Data Representation)
ตัวอย่างที่ 5.11 ข้อมูล DATA แสดงเป็นรหัสบีซีดี ดังนี้ ตัวอย่างที่ 5.12 ข้อมูล ZONE แสดงเป็นรหัสบีซีดี ดังนี้ 110100 110001 000011 D A T A 001001 100110 100101 110101 E Z O N

37 5.6 รหัสแทนข้อมูล (Data Representation)
2. รหัสเอ็บซีดิก (Extended Binary Coded Decimal: EBCDIC) เป็นรหัสที่ขยายมาจากรหัสบีซีดี มีใช้ในเครื่องคอมพิวเตอร์เมนเฟรมของบริษัทไอบีเอ็ม ใช้จำนวน 8 บิต เพื่อแทนข้อมูล 1 อักขระ ดังนั้นจึงสามารถสร้างรหัสที่มีความแตกต่างกันได้ 256 รหัส (28 = 256) ซึ่งกำหนดรหัสเอ็บซีดิกสำหรับ 1 อังขระ ทำได้โยแบ่งจำนวน 8 บิต ออกเป็น 2 ส่วน คือ Zone Bit ใช้ 4 Bit แรก และ Digit Bit ใช้ 4 Bit หลัง Zone Bit Digit Bit 1

38 5.6 รหัสแทนข้อมูล (Data Representation)
ข้อมูลที่เป็นตัวเลข การแทนข้อมูลที่เป็นตัวเลขด้วยรหัสเอ็บซีดิก ส่วนที่เป็น Zone Bit จะถูกกำหนดเป็น 1111 เท่านั้น ส่วนที่เป็น Digit Bit ใช้บันทึกค่าของตัวเลขนั้น ๆ ในระบบเลขฐานสอง กรณีที่ตัวเลขมีค่ามากกว่า 1 หลัก สามารถกำหนดเป็นเอ็บซีดิก โดยแยกกำหนดครั้งละ 1 หลัก ตัวอย่างที่ 5.13 ค่า 9 แสดงเป็นรหัสเอ็บซีดิก ดังนี้ Zone Bit Digit Bit 1

39 5.6 รหัสแทนข้อมูล (Data Representation)
ตัวอย่างที่ 5.14 ค่า 374 แสดงเป็นรหัสเอ็บซีดิก ดังนี้ ในเครื่องคอมพิวเตอร์บางประเภท เช่น ไมโครคอมพิวเตอร์ สามารถอินพุตข้อมูลหรือคำสั่งเข้าไปในรูปแบบของระบบเลขฐานสิบหก เพราะมีตัวแปลข้อมูลหรือคำสั่งให้อยู่ในรูปของระบบเลขฐานสองตัวแปลนี้เรียกว่า เอ็กซ์โหลดเดอร์ (Hexadecimal Loader) 3 7 4

40 5.6 รหัสแทนข้อมูล (Data Representation)
รหัสเอ็บซีดิกในรูปของระบบฐานสิบหก กำหนด Zone Bit เป็นเลขฐานสิบหก เช่น (1111)2 ด้วย (F)16 ตัวอย่างที่ 5.9 ค่า 9 แสดงเป็นรหัสบีซีดี ดังนี้ Zone Bit Digit Bit F 9

41 5.6 รหัสแทนข้อมูล (Data Representation)
ข้อมูลที่เป็นตัวอักษร การแทนข้อมูลที่เป็นตัวอักษรด้วยรหัสเอ็บซีดิก ทำได้ดังนี้ คือ ข้อมูล Zone Bit Digit Bit ฐานสอง ฐานสิบหก ตัวอักษร A-I 1100 C ค่าของข้อมูล นั้นในระบบเลขฐานสอง นั้นในระบบเลขฐานสิบหก ตัวอักษร J-R 1101 D ตัวอักษร S-Z 1110 E

42 5.6 รหัสแทนข้อมูล (Data Representation)
ตัวอย่างที่ 5.16 ข้อมูล DATA แสดงเป็นรหัสบีซีดี ดังนี้ ตัวอย่างที่ 5.17 ข้อมูล ZONE แสดงเป็นรหัสบีซีดี ดังนี้ D A T A E Z O N

43 5.6 รหัสแทนข้อมูล (Data Representation)
3. รหัสแอสกี (American Standard Coded Information Interchange: ASCII) เป็นรหัสที่ผู้ผลิตเครื่องคอมพิวเตอร์ยอมรับ เป็นรหัสที่ได้มาจากรหัส ISO 7-Bit International Alphabet No. 5 ขององค์การมาตรฐานระหว่างประเทศ รหัสแอสกีใช้จำนวน 7 บิต เพื่อแทนข้อมูล 1 อักขระ ดังนั้น จึงสามารสร้างรหัสที่มีความแตกต่างได้ 128 รหัส (27 = 128) แต่ปัจจุบันนี้ได้ปรับปรุงรหัสแอสกี โดยใช้จำนวน 8 บิต เพื่อแทนข้อมูล 1 อักขระ จึงสามารถรหัสที่มีความแตกต่างกันได้ 256 รหัส (28 = 256) โดยที่ 32 รหัสแรก คือ ถึง ใช้ทำหน้าที่เป็นคำสั่งควบคุม

44 5.6 รหัสแทนข้อมูล (Data Representation)
4. รหัสยูนิโค้ด (Unicode) เนื่องจากรหัสแทนข้อมูลที่มีกล่าวมาแล้วทั้ง 3 รูปแบบนั้น เพียงพอสำหรับการใช้งานภาษาอังกฤษเท่านั้น กรณีที่ต้องการแทนตัวอักษรของประเทศต่าง ๆ ทั่วโลกนั้นรหัสแทนข้อมูลทั้ง 3 รูปแบบนั้นไม่เพียงพอต่อการใช้งาน ดังนั้นจึงได้มีการกำหนดรหัสแทนข้อมูลยูนิโค้ดขึ้นมา โดยใช้จำนวน 16 บิต เพื่อแทนข้อมูล 1 อักขระ ซึ่งสามารถสร้างรหัสที่มีความแตกต่างกันได้ 65,536 รหัส (216 = 65,536) ปัจจุบันรหัสยูนิโค้ด ได้ใช้แทนค่าของข้อมูลภาษาต่าง ๆ มากกว่า 34,000 รหัส โดยที่รหัส 256 ตัวแรกจะตรงกับรหัสแอสกี

45


ดาวน์โหลด ppt บทที่ 5 ระบบเลขฐานและรหัสแทนข้อมูล

งานนำเสนอที่คล้ายกัน


Ads by Google