ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
ระบบคอมพิวเตอร์และการประมวลผล
4/5/2017 ระบบคอมพิวเตอร์และการประมวลผล องค์ประกอบของระบบคอมพิวเตอร์ ฮาร์ดแวร์ (Hardware) ซอฟต์แวร์ (Software) บุคลากรคอมพิวเตอร์ (Peopleware) การประมวลผลข้อมูล (Data processing) ข้อมูล (Data) และ ข้อสนเทศ (Information) การจัดองค์กรของข้อมูล (Data organization) วัฏจักรการประมวลผลข้อมูล ประเภทของการประมวลผล การแทนข้อมูลในหน่วยความจำ ระบบเลขฐานและการดำเนินการที่เกี่ยวข้อง การแทนอักขระ การแทนจำนวนเลข
2
ระบบเลขฐานและการดำเนินการที่เกี่ยวข้อง
4/5/2017 ระบบเลขฐานและการดำเนินการที่เกี่ยวข้อง ระบบเลขฐานต่างๆ (เน้น ฐาน 2 ฐาน 8 และ ฐาน 16) การแปลงเลขฐาน ความสัมพันธ์ของเลขฐาน 2 ฐาน 8 และฐาน 16
3
4/5/2017 ระบบเลขฐาน (ฐาน 2,8,10,16) Place Value ระบบเลขที่แต่ละหลักมีค่าประจำหลัก ค่าประจำหลัก คือ ค่าของเลขฐานนั้นๆ ยกกำลังตามตำแหน่งหลัก หลักขวาสุดมีค่ากำลังเริ่มจาก ศูนย์ Least significant digit : คือเลขในหลักขวาสุดและมีค่าประจำหลักน้อยที่สุด Most significant digit คือเลขในหลักสุดท้ายซึ่งอยู่ซ้ายสุดและมีค่าประจำหลักสูงสุด การเขียนเลขฐานต้องมีค่าฐานกำกับ ยกเว้นฐาน 10
4
ตัวเลขในฐานต่างๆ ฐาน 2 มีเลข 0,1
4/5/2017 ตัวเลขในฐานต่างๆ ฐาน 2 มีเลข 0,1 เช่น 1012 มีค่าเป็น 1x22 + 0x21 + 1x20 ฐาน 8 มีเลข 0,1,2,3,4,5,6,7 เช่น 1018 มีค่าเป็น 1x82 + 0x81 + 1x80 ฐาน 10 มีเลข 0,1,2,3,4,5,6,7,8,9 เช่น 101 มีค่าเป็น 1x x x100 ฐาน 16 มีเลข 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F เช่น มีค่าเป็น 1x x x160 AF16 มีค่าเป็น x x160
5
การแปลงเลขฐาน การแปลงเลขฐานใดๆ เป็น ฐาน 10
4/5/2017 การแปลงเลขฐาน การแปลงเลขฐานใดๆ เป็น ฐาน 10 การแปลงเลขฐาน 10 เป็น ฐานใดๆ การแปลงเลขฐาน 2 เป็น ฐาน 8 ฐาน 16 การแปลงเลขฐาน 8 ฐาน 16 เป็น ฐาน 2
6
การแปลงเลขฐานใดๆเป็นฐาน 10
4/5/2017 การแปลงเลขฐานใดๆเป็นฐาน 10 อาศัยค่าประจำหลัก คูณตัวเลขแต่ละหลัก นำผลคูณที่ได้มารวมกัน ต.ย = ( )10 ค่าประจำหลัก คือ (1x8)+(1x4)+(0x2)+(1x1) = 13
7
การแปลงเลขฐาน 10 เป็นฐานใดๆ
4/5/2017 การแปลงเลขฐาน 10 เป็นฐานใดๆ กรณี เลขจำนวนเต็ม ใช้หลัก MODULO คือ เลขฐาน 10 เป็นตัวตั้ง หารด้วยเลขฐานที่ต้องการแปลง เก็บเศษจากการหาร นำผลหารเป็นตัวตั้งของการหารเลขต่อไปจนกระทั้งผลลัพธ์ของการหารเป็น 0 นำเศษของการหารมาวางต่อกัน เศษตัวสุดท้ายเป็น Most significant digit
8
ตัวอย่างการแปลงเลขฐาน 10 เป็นฐานใดๆ
เลขจำนวนเต็ม 1310 = ( )2 = ( ) 4 ตอบ 13 2 ตอบ
9
การแปลงเลขฐาน 10 เป็นฐานใดๆ
4/5/2017 การแปลงเลขฐาน 10 เป็นฐานใดๆ กรณี เลขจำนวนจริง: การแปลงแบ่งเป็น 2 ส่วน ส่วนหน้าจุดทศนิยมใช้วิธี MODULO ส่วนเลขหลังจุดทศนิยม คูณเลขหลังจุดด้วยฐานที่ต้องการเปลี่ยน บันทึกเฉพาะเลขหน้าจุด ส่วนเลขหลังจุดนำมาคูณต่อ จนครบจำนวนตำแหน่งหลังจุดที่ต้องการ
10
ตัวอย่างการแปลงเลขฐาน 10 เป็นฐานใดๆ
เลขจำนวนจริง = ( )2 13 2 .4 x 2 = .8 x 2 = .6 x 2 = .2 x 2 =
11
ความสัมพันธ์ระหว่างเลขฐาน 2 ฐาน 8 และฐาน 16
12
การแปลงเลขฐาน 2 เป็น ฐาน 8 ฐาน 16
4/5/2017 การแปลงเลขฐาน 2 เป็น ฐาน 8 ฐาน 16 หลักการใช้การจัดกลุ่มบิต เลขฐาน 2 เป็น ฐาน 8 จัดกลุ่มละ 3 บิต เลขฐาน 2 เป็น ฐาน 16 จัดกลุ่มละ 4 บิต โดยเริ่มจากบิตที่อยู่ใกล้จุดทศนิยม หากกลุ่มสุดท้ายไม่ครบจำนวนบิตที่ต้องมีในแต่ละกลุ่ม ให้เติม 0
13
ตัวอย่างการแปลงเลขฐาน 2 เป็นฐาน 8
จำนวนเต็ม = ( 37 ) 8 (0*4)+(1*2)+(1*1) (1*4)+(1*2)+(1*1) 3 7
14
ตัวอย่างการแปลงเลขฐาน 2 เป็นฐาน 16
เลขจำนวนจริง = (1.C ) 16 (0*8)+(0*4)+(0*2)+(1*1) (1*8)+(1*4)+(0*2)+(0*1) 1 12 C
15
การแปลงเลขฐาน 8 ฐาน 16 เป็น ฐาน 2
4/5/2017 การแปลงเลขฐาน 8 ฐาน 16 เป็น ฐาน 2 ใช้หลักการกระจายเลขแต่ละหลักออกเป็น บิต เลขฐาน 8 หนึ่งหลัก กระจายเป็นเลขฐาน 2 ได้ 3 บิต เลขฐาน 16 หนึ่งหลัก กระจายเป็นเลขฐาน 2 ได้ 4 บิต
16
ตัวอย่างการแปลงเลขฐาน 8 ฐาน 16 เป็น ฐาน 2
กรณี เลขจำนวนเต็ม 738 =( ) 2 A316 = ( ) 2
17
ตัวอย่างการแปลงเลขฐาน 8 ฐาน 16 เป็น ฐาน 2
กรณี เลขจำนวนจริง 7.38 =( ) 2 A3.B16 = ( ) 2
18
การลบเลขฐาน แบบ Complement
4/5/2017 การคำนวณเลขฐาน การบวกเลขฐาน การลบเลขฐาน การลบเลขฐาน แบบ Complement
19
การบวกเลขฐาน การบวก เลขฐานสอง 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1
1 + 1 = 0 ทดไปยังหลักถัดไป 1 F31C16 + 235016 1166C16 + คำนวณไม่ได้เพราะไม่มีเลข 5 ในฐาน 5 5345 + 1235
20
การลบเลขฐาน การลบเลข - 4325 - 1435 2345
21
การหาคอมพลีเมนต์ (Complement)
คอมพลีเมนต์ของเลขจำนวนหนึ่ง หมายถึง จำนวนเลขที่คู่กับเลขนั้น เมื่อนำเลขทั้งสองจำนวน รวมกันจะได้เป็นจำนวนเต็มพอดี คอมพลีเมนต์ของเลขฐานใดๆ (ให้ R แทนฐาน) มี 2 ประเภท คือ คอมพลีเมนต์ที่ R และ คอมพลีเมนต์ที่ R-1 ฐาน R-1’s Comp R’s Comp ’s Comp ’s Comp ’s Comp ’s Comp ’s Comp ’s Comp
22
การหาค่าคอมพลีเมนต์ การหาคอมพลีเมนท์ ที่ R-1 ของเลขใดๆ
4/5/2017 การหาค่าคอมพลีเมนต์ การหาคอมพลีเมนท์ ที่ R-1 ของเลขใดๆ นำค่าสูงสุดของเลขนั้นๆลบด้วยเลขนั้น ผลที่ได้คือ คอมพลีเมนท์ของเลขจำนวนนั้น เลข 2910 มีค่าสูงสุด คือ 99 9 ’ Comp : = 70 เลข มีค่าสูงสุดคือ 1 ’ Comp : =
23
การหาค่าคอมพลีเมนท์ การหาคอมพลีเมนท์ ที่ R ของเลขใดๆ
4/5/2017 การหาค่าคอมพลีเมนท์ การหาคอมพลีเมนท์ ที่ R ของเลขใดๆ คอมพลีเมนต์ R = คอมพลีเมนต์ R นำค่าสูงสุดของเลขนั้นบวกด้วยเลขที่ทำให้เกิดการ เพิ่มหลักของค่าสูงสุด แล้วจึงลบด้วย เลขจำนวนนั้นอีกที่หนึ่ง เลข 2910 มี คอมพลีเมนท์ เป็น 10 ‘ Comp : (99 + 1) - 29 = 71 เลข มีคอมพลีเมนทเป็น 2 ‘Comp:( ) =
24
ข้อสังเกตุเกี่ยวกับคอมพลีเมนต์์
4/5/2017 ข้อสังเกตุเกี่ยวกับคอมพลีเมนต์์ การหา R-1 Complement คือ การนำเลขจำนวนนั้นลบออกจากเลขสูงสุด 1’ Complement ในเลขฐาน 2 คือ การเปลี่ยนค่าของแต่ละบิทให้ตรงกันข้าม ค่า R-1 Complement มีค่าน้อยกว่า R Complement อยู่ 1 เสมอ ณ หลักขวามือสุด 2’Comp = 1’ Comp + 1 ที่หลักขวามือสุด
25
การลบเลขแบบคอมพลีเมนต์์
4/5/2017 การลบเลขแบบคอมพลีเมนต์์ นำเลขตัวลบไปหาค่าคอมพลีเมนต์ นำคอมพลีเมนต์ที่หาได้ บวก กับเลขตัวตั้ง ผลลัพธ์ที่ได้ถ้ามีเลขเกินหลัก กรณี R’s Complement ให้ตัดทิ้ง กรณี R-1’s Complement ให้นำเลขที่เกินหลัก บวกกับผลลัพธ์ ผลที่ได้คือคำตอบ
26
ตัวอย่างการลบเลขแบบคอมพลีเมนต์
R-1’s Complement = ? = 1 = ? 1) = 301 2) 301 1 234 1 1 1
27
ตัวอย่างการลบเลขแบบคอมพลีเมนต์
คอมพลีเมนท์ ที่ R = ? 1) = 302 2) 302 1 234 = ? =
28
ตัวอย่างการลบเลขแบบคอมพลีเมนต์
กรณีที่ตัวตั้งมีค่าน้อยกว่าตัวลบ ผลลัพธ์ที่ได้เป็นค่าติดลบ มีวิธีลบดังนี้ นำตัวตั้งบวกด้วยคอมพลีเมนต์ของตัวลบ หากผลบวกมีจำนวนหลักเท่าเดิมแสดงว่าผลการบวกจะยังไม่เป็นผลลัพธ์ของการลบที่ต้องการ นำผลบวกที่ได้ ไปหาค่าคอมพลีเมนต์ แล้วเติมเครื่องหมาย ลบ จะได้เป็นผลลัพธ์ของการลบ = ? = 0100 0100
29
การแทนข้อมูลในหน่วยความจำ Data Representation
4/5/2017 การแทนข้อมูลในหน่วยความจำ Data Representation การแทนข้อมูลที่เป็นอักขระ (Representation of Characters) การแทนข้อมูลที่เป็นจำนวนเลข (Numeric Data Representation) เลขจำนวนเต็ม (Integer Representation) เลขที่มีจุดทศนิยม (Floating Point Representation)
30
การแทนข้อมูลที่เป็นอักขระ
4/5/2017 การแทนข้อมูลที่เป็นอักขระ รหัส BCD : Binary Coded Decimal Code รหัส EBCDIC: Extended Binary Coded Decimal Interchange Code รหัส ASCII : American Standard Code for Information Interchange
31
รหัส BCD ใช้ 6 บิตแทนอักขระ 1 ตัว
ระบบนี้แทนอักขระได้ 64 ตัว ( 26 รูปแบบ) C B A Digit bit Zone bit Check bit/ Parity bit
32
รหัส BCD การแทนรหัส BCD อักขระแบบตัวเลข (0 - 9) Zone Bit จะเป็น 00
4/5/2017 รหัส BCD การแทนรหัส BCD อักขระแบบตัวเลข (0 - 9) Zone Bit จะเป็น 00 อักขระแบบตัวอักษร หรือ สัญลักษณ์พิเศษ Zone bit เป็นค่าอื่นๆ
33
ตัวอย่างรหัส BCD
34
ระบบนี้แทนอักขระได้ 256 ตัว ( 28 รูปแบบ)
รหัส EBCDIC ใช้ 8 บิตแทนอักขระ 1 ตัว ระบบนี้แทนอักขระได้ 256 ตัว ( 28 รูปแบบ) P Zone bits Digit bits Parity bit
35
รหัส EBCDIC การบันทึกข้อมูลในระบบ EBCDIC มี 2 แบบ
4/5/2017 รหัส EBCDIC การบันทึกข้อมูลในระบบ EBCDIC มี 2 แบบ การบันทึกแบบ Zone Decimal การบันทึกแบบ Packed Decimal การบันทึกตัวเลขที่ไม่ระบุเครื่องหมาย Zone bits มีค่าเป็น หรือ F เช่น 9 แทนโดย การบันทึกเลขที่มีเครื่องหมาย Zone bits มีค่าเป็น 1100 หรือ C สำหรับเลขที่มีเครื่องหมายบวก และ 1101 หรือ D สำหรับเลขที่มีเครื่องหมายลบ
36
การแทนข้อมูลแบบ Packed Decimal
4/5/2017 การแทนข้อมูลแบบ Packed Decimal เป็นการเปลี่ยนลักษณะการเก็บรหัส EBCDIC ให้ใช้ในการคำนวณ การเปลี่ยนนี้จำนวนหลักสามารถยืดหยุ่นได้ ไม่ใช้กับตัวเลขที่เป็นจุดทศนิยม
37
วิธีการ PACK “-123” สลับส่วน Zone bit และ Digit bit ของไบต์ขวาสุด
วิธี Unpack ทำตรงกันข้าม กับการ Pack
38
4/5/2017 รหัส ASCII มี 2 ชนิด คือ 7 บิต กับ 8 บิต กำหนดให้ตัวเลขมีค่าน้อยกว่าตัวอักษร เป็นรหัสที่นิยมในปัจจุบัน ลักษณะคล้าย EBCDIC มี Zone bit เป็น 0101 และ 011 สำหรับตัวเลข มี 1010 และ 100 สำหรับตัวอักษร
39
รหัส EBCDIC และ ASCII
40
Parity bit หรือ Check bit
เป็นบิทที่ใช้ตรวจสอบการแทนรหัส มี 2 ระบบ Even Parity ระบบจำนวนคู่ ระบบนี้ต้องมีบิทที่เป็นเลข 1 ทั้งหมดมีจำนวนเป็นเลขคู่ Odd Parity ระบบจำนวนคี่ ระบบนี้ต้องมีบิทที่เป็นเลข 1 ทั้งหมดมีจำนวนเป็นเลขคี่
41
การแทนรหัสข้อมูลที่เป็นตัวเลข
4/5/2017 การแทนรหัสข้อมูลที่เป็นตัวเลข การแทนข้อมูลชนิดจำนวนเลข แบ่งออกเป็น 2 ประเภทคือ 1) การแทนเลขจำนวนเต็ม 2) การแทนเลขที่มีเศษส่วน (มีทศนิยม) การแทนข้อมูลแบบนี้กำหนดเนื้อที่ในหน่วย ความจำมีขนาดตายตัว (Fixed length word) สำหรับแทนตัวเลข 1 จำนวน Half-word ใช้เนื้อที่ 2 ไบต์ Full-word ใช้เนื้อที่ 4 ไบต์ Double-word ใช้เนื้อที่ 8 ไบต์
42
การแทนเลขจำนวนเต็ม Sign Magnitude / Pure binary code 2’s Complement
4/5/2017 การแทนเลขจำนวนเต็ม Sign Magnitude / Pure binary code 2’s Complement 1’s Complement
43
4/5/2017 Sign Magnitude ระบบนี้แบ่งโครงสร้างของเวิร์ดออกเป็น 2 ส่วน คือ ส่วนของเครื่องหมาย (Sign) และส่วนของขนาดของจำนวนเลข ซึ่งเรียกว่า Magnitude ในระบบที่กำหนดให้ 1 word = 32 bits กำหนดส่วนของการแทนดังนี้ บิตที่ 31 (ซ้ายสุด) จะเป็น Sign bit สำหรับแสดงเครื่องหมายว่าจำนวนนั้นเป็นจำนวนบวกหรือลบถ้าบิตนี้มีค่าเป็น 1 แสดงว่าเป็นเลขจำนวนลบ และถ้าเป็น 0 แสดงว่าเป็นเลขจำนวนบวก ส่วนบิต 0-30 จะแทนขนาดของเลขจำนวน (magnitude) ซึ่งขนาดของเลขจำนวนจะเป็นการเปลี่ยนเลขจำนวนนั้นจากฐานสิบเป็นฐานสองโดยตรง
44
Sign Magnitude MSB LSB บิตที่ 31 30 29 . . . 1 0 Sign 1 แทน บวก
บิตที่ Sign 1 แทน บวก 0 แทน ลบ Magnitude
45
ตัวอย่างการแทนค่าแบบ Sign Magnitude
แสดงการแทน 50 = ( )2 และ - 50 กำหนดให้ 1 Word = 4 Bytes = 32 bits MSB LSB 50 1 -50 บิตที่ Magnitude
46
การแทนค่าแบบ 2’s complement
4/5/2017 การแทนค่าแบบ 2’s complement เป็นระบบที่นิยมใช้ การแสดงจำนวนเลขในระบบนี้ เลขบวก แทนด้วยเลขฐานสองที่แปลงได้จากจำนวนเลขที่ต้องการแทน เลขลบ แทนด้วยค่า 2’s Complement ของเลขจำนวนนั้น
47
ตัวอย่าง การแทนค่า 2’s Complement
เช่น 28 = MSB LSB 28 + 1 - 28
48
Floating Point Representation
4/5/2017 Floating Point Representation การแทนแบบนี้จะเป็นการแทนในรูปแบบของการแทนเลขทางวิทยาศาสตร์ คือ คูณด้วย 10 ยกกำลัง (Exponential Form) โดยอยู่ในรูปแบบมาตรฐาน คือ ตัวเลขหน้าจุด เป็น 0 เลขในหลักแรกหลังจุดทศนิยม ต้องไม่ใช่ 0 ดังนั้นเลข 1 จำนวนจะถูกแบ่งออกเป็น 3 ส่วน คือ 1) fraction หรือ mantissa หมายถึง เลขที่อยู่หลังจุด (เป็นเศษ) 2) exponent หรือ characteristic หมายถึง เลขยกกำลัง ซึ่งเป็นได้ทั้งกำลังบวกและกำลังลบ 3) sign หมายถึง เครื่องหมายของเลขจำนวน
49
Floating Point Representation
R = +- M * B+- E เนื้อที่ในหน่วยความจำ 1 เวิร์ด จึงถูกแบ่งออกเป็น 3 ส่วน ดังนี้ บิตที่ S E M S Sign แทนเครื่องหมาย บวก ลบ ของจำนวนเลข E Exponent ส่วนที่ยกกำลัง M Mantissa เลขที่อยู่หลังจุด
50
ขั้นตอนการแทนเลข Floating point
4/5/2017 ขั้นตอนการแทนเลข Floating point เปลี่ยนเลขเป็นฐาน 16 Normalization เลขฐาน 16 (มีเลขหน้าจุดเป็น 0 เลขหลังจุดตัวแรกไม่ใช่ 0 และ ยกกำลัง) เปลี่ยน Sign, Exponent, Mantissa เป็นเลขฐาน 2 Sign : 1 แทนค่าลบ 0 แทนค่าบวก Mantissa : เปลี่ยนเป็นฐาน 2 เติมเลขจากขวา มา ซ้ายที่เหลือเติมศูนย์
51
ขั้นตอนการแทนเลข Floating point
Exponent เป็นได้ทั้งค่าบวก หรือ ลบ วิธีการแทนส่วนนี้สามารถใช้้วิธีเดียวกับการแทนเลขจำนวนเต็มก็ได้ ในที่นี้เนื่องจากส่วนนี้ใช้ 7 บิตในการแทน จึงใช้วิธี Excess 64 exponent 16 = true exponent16 แปลง exponent > exponent 2 :
52
ตัวอย่าง ทำ Floating point
> 1C16 1C16 = (+ 0.1C x 102)16 Sign ----> 0 Mantissa ----> Exponent ----> = >
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.