วันจันทร์ที่ 24 ตุลาคม พ.ศ. 2554

ระดับของแบบชนิดข้อมูล (hierarchy of data types) ที่นำมาใช้กับคอมพิวเตอร์

ระดับของแบบชนิดข้อมูล
     ระดับของแบบชนิดข้อมูล (hierarchy of data types) หมายถึง  ระดับของ    ข้อมูลที่จำแนกตามแบบชนิดข้อมูลที่นำมาใช้กับเครื่องคอมพิวเตอร์    ซึ่งนักคอมพิวเตอร์จำแนกข้อมูลออกเป็น 3 ระดับ   ดังแสดงในตารางที่  2.1

            ตารางที่ 2.1  ระดับของแบบชนิดข้อมูล


ระดับแบบชนิดข้อมูลที่มา
2ข้อมูลในระดับความคิดสร้างโดยจินตนาการของนักเขียนโปรแกรม
เพื่อแก้ปัญหาที่ต้องการ
1ข้อมูลในระดับโปรแกรมสร้างด้วยภาษาคอมพิวเตอร์ระดับสูง
0ข้อมูลในระดับเครื่องฮาร์ดแวร์มีให้ใช้ได้


               2.2.1  ข้อมูลในระดับเครื่อง
                ข้อมูลในระดับเครื่อง (hardware data types) เป็นระดับของแบบชนิดข้อมูลที่บันทึกในหน่วยความจำ    ซึ่งข้อมูลจะถูกบันทึกด้วยรหัสแทนข้อมูลในภาษาเครื่อง   เช่น
                                 (1)  จำนวนเต็ม (integer)
                                 (2)  จำนวนจริง (real)
                                 (3)  อักขระ (character)
                   2.2.2  ข้อมูลในระดับโปรแกรม
                          ข้อมูลในระดับโปรแกรม (virtual data types)   เป็นระดับของแบบชนิดข้อมูลที่ดูเสมือนว่ามีจริง    แต่ความจริงเป็นการสร้างข้อมูลเทียมขึ้นมาใช้    โดยใช้ภาษาคอมพิวเตอร์ สร้าง (built - in) ขึ้นมาเพื่อให้ความสะดวกแก่ผู้ใช้    ทำให้สามารถใช้งานได้คล่องตัวขึ้น    ตัวอย่างข้อมูลเทียมในภาษาปาสคาลที่ใช้ตัวแปลเทอร์โบปาสคาลแบ่งออกเป็นชนิดต่าง ๆ ดังต่อไปนี้
   (1)  ข้อมูลแบบสเกลาร์ (scalar data types)  เป็นข้อมูลพื้นฐานในภาษาปาสคาล แบ่งออกเป็น 2 ประเภทดังนี้
 ข้อมูลแบบมาตรฐาน (standard data types)
-  จำนวนเต็ม (integer)
-  จำนวนจริง (real)
อักขระ (character)
สตริง (string)
บูลีน (boolean)
ข้อมูลแบบผู้ใช้กำหนด (user–defined data types)  เป็นแบบข้อมูลที่ผู้ใช้สามารถกำหนดเพิ่มขึ้นมาใช้เองได้   ซึ่งการกำหนดจะขึ้นอยู่กับภาษาที่ใช้   ตัวอย่างข้อมูลที่ผู้ใช้กำหนดในภาษาปาสคาลดังนี้
                                             Type       week_day  =  (mon, tue, wed, thu, fri);
                                                            traffic_light =  (red, yellow, green);
                                                            vowel         =  (‘A’, ‘E’, ‘I’, ‘O’, ‘U’)
                                                            score         =  0 . . 100;
                                                            up_letter    =  ‘A’ . . ‘Z’;           
(2)  ข้อมูลแบบโครงสร้าง (structure data types)  เป็นข้อมูลที่สร้างขึ้นจากข้อมูลแบบสเกลาร์   หรืออาจจะสร้างขึ้นมาจากข้อมูลแบบโครงสร้างด้วยกันเองก็ได้ (ยกเว้นไฟล์)   ดังนี้
                                           -  แถวลำดับ (array)   
                                           -  เซต (set)
                                           -  ระเบียนข้อมูล (record)
                                           -  แฟ้มข้อมูล (file)
(3)  ข้อมูลแบบพอยน์เตอร์ (pointer data types) 
2.2.3  ข้อมูลในระดับความคิด
    ข้อมูลในระดับความคิด (abstract  data  types)  เป็นระดับของแบบชนิดข้อมูลประเภทนามธรรมที่สร้างขึ้นจากจินตนาการของผู้ใช้   เป็นแบบชนิดข้อมูลที่ไม่มีรูปร่างหรือลักษณะให้เห็น    การอธิบายลักษณะของข้อมูลจะใช้สัญลักษณ์     ถ้าต้องการทำให้แบบชนิดข้อมูลที่เป็นนามธรรมเป็นข้อมูลที่เป็นรูปธรรม    ก็ต้องนำไปใช้จริงกับเครื่องคอมพิวเตอร์จริง (implement)    ข้อมูลในระดับความคิดแบ่งออกเป็น  2  ประเภท  คือ
 (1)  โครงสร้างข้อมูลแบบเชิงเส้น (linear  data structures)  เช่น
                                        -  ลิสต์ (list)
                                        -  สแตก (stack)
                                        -  คิว (queue)
                                        -  ดีคิว (deque)
 (2) โครงสร้างข้อมูลแบบไม่ใช่เชิงเส้น (non-linear data structures)     เช่น
                                        -  ทรี (tree)
                                        -  กราฟ (graph)
           จากข้อมูลในแต่ละระดับที่กล่าวมา   ข้อมูลในระดับที่ 2 (ข้อมูลในระดับความคิด)   นักเขียนโปรแกรม (programmer) เป็นผู้เขียนโปรแกรมสร้างข้อมูลขึ้นมาเพื่อใช้เป็นตัวเชื่อมความสัมพันธ์ไปสู่ข้อมูลในระดับที่ 1 (ข้อมูลในระดับโปรแกรม)   ส่วนโปรแกรมแปลภาษาทำหน้าที่เป็นตัวเชื่อมความสัมพันธ์จากข้อมูลในระดับที่ 1 ไปสู่ข้อมูลในระดับที่ 0 (ข้อมูลในระดับเครื่อง)   ซึ่งเป็นระดับที่เครื่องบันทึกข้อมูลโดยใช้รหัสแทนข้อมูลจริง

ไม่มีความคิดเห็น:

แสดงความคิดเห็น