Saturday, July 18, 2015

ภาษาคอมพิวเตอร์ Computer Programming Language        

ภาษาคอมพิวเตอร์ Computer Programming Language
หมายถึง สัญลักษณ์ที่ผู้คิดพัฒนาภาษากำหนดขึ้นมา เพื่อใช้แทนการสื่อสาร / สั่งงาน ระหว่างมนุษย์กับเครื่องคอมพิวเตอร์และอุปกรณ์ต่อพ่วงอื่น ๆ การพัฒนาภาษาคอมพิวเตอร์เริ่มต้นจากการเขียนคำสั่งด้วยรูปแบบเลขฐานสอง และปัจจุบันพัฒนามาใช้คำสั่งที่เป็นข้อความภาษาอังกฤษ

         ประเภทของภาษาคอมพิวเตอร์


         แบ่งได้เป็น 5 ประเภท


           ภาษาเครื่อง(Machine Language)

           ภาษาแอสเซมบลี(Assembly Language)

           ภาษาระดับสูง(High-Level Language)

           ภาษาระดับสูงมาก(Very High-Level Language)

           ภาษาธรรมชาติ(Natural Language)

        ภาษาเครื่อง(Machine Language)


           -เป็นภาษาระดับต่ำ

           -ใช้คำสั่งที่ประกอบด้วยเลขฐานสอง(Binary Digit หรือ bit) เช่น 01010110 00011001

           -ใช้เลข 0 และ 1 เป็นสัญลักษณ์แทนสัญญาณไฟปิดและเปิด ตามลำดับ

           -ภาษาเครื่องเป็นภาษาที่คอมพิวเตอร์เข้าใจได้โดยตรง จึงไม่ต้องมีตัวแปลภาษา

           -โปรแกรมที่เขียนด้วยภาษาเครื่อง จะใช้ได้กับเครื่องคอมพิวเตอร์ที่ใช้พัฒนาโปรแกรมเท่านั้น
(machine -dependent)

         ภาษาแอสเซมบลี(Assembly Language)


           -เรียกอีกอย่างว่า “ภาษาสัญลักษณ์” เป็นภาษาระดับต่ำ

           -ใช้รหัสเป็นคำแทนคำสั่งภาษาเครื่อง เป็นคำสั่งสั้น ๆ ที่จดจำได้ง่าย เรียกว่า นิวมอนิกโค้ด(mnemonic code) เช่น
            A แทน การบวก(Add)
            C แทน การเปรียบเทียบ(Compare)
            MP แทน การคูณ(Multiply)
            STO แทน การเก็บข้อมูลในหน่วยความจำ(Store)
        โปรแกรมภาษาแอสเซมบลี ต้องทำการแปลด้วยโปรแกรมแปลภาษาที่เรียกว่า แอสเซมเบลอ(Assembler) ซึ่งจะแปลโปรแกรมต้นฉบับ(Source code)ที่เขียนด้วยภาษาแอสเซมบลี ให้เป็น ภาษาเครื่อง
        ภาษาระดับสูง(High-Level Language)

            -ใช้รูปแบบคำภาษาอังกฤษแทนรหัสคำสั่งต่าง ๆ และสามารถใช้นิพจน์ทางคณิตศาสตร์ได้
            -เป็นภาษาแบบโพรซีเยอร์ (Procedural Language)
            -โปรแกรมที่เขียนด้วยภาษาระดับสูง สามารถทำงานบนเครื่องคอมพิวเตอร์ต่างชนิดกันได้
            -โปรแกรมที่พัฒนาจากภาษาระดับสูง ต้องทำการแปลคำสั่งโปรแกรมต้นฉบับ(Source code) ที่เขียนด้วยภาษาระดับสูงให้เป็นภาษาเครื่อง
            -ตัวอย่างภาษาระดับสูงเช่น ภาษาเบสิก ภาษาปาสคาล ภาษาซี ภาษาโคบอล ภาษาฟอร์แทรน เป็นต้น
        ภาษาระดับสูงมาก(Very High-Level Language)

            -ใช้คำภาษาอังกฤษแทนคำสั่งงาน เช่นเดียวกับ ภาษาระดับสูง
            -เป็นภาษาแบบไม่เป็นโพรซีเยอร์ (non-procedural language)
            -เขียนง่ายและสะดวกกว่าภาษาระดับสูง
            -ตัวอย่างภาษาเช่น ภาษาSQL ที่ใช้ในฐานข้อมูล เป็นต้น
            -ภาษาระดับสูงมากไม่ได้ถูกออกแบบให้สามารถทำงานตามลำพัง จึงต้องทำงานร่วมกับภาษาอื่น ๆ

        ภาษาธรรมชาติ(Natural Language)

            -ภาษาธรรมชาติไม่สนใจรูปแบบคำสั่งหรือลำดับที่เคร่งครัด
            -ผู้ใช้สามารถพิมพ์สิ่งที่ต้องการในคอมพิวเตอร์เป็นคำหรือประโยคที่ผู้ใช้เข้าใจ คอมพิวเตอร์จะพยายามแปลคำหรือประโยคเพื่อทำตามคำสั่ง
            -ภาษาธรรมชาตินิยมนำมาประยุกต์งานด้าน ระบบผู้เชี่ยวชาญ(Expert System)

        ตัวอย่างภาษาคอมพิวเตอร์


        ภาษาฟอร์แทรน (FORTRAN : FORmular TRANslator)

            -ใช้สำหรับงานด้านคณิตศาสตร์ วิทยาศาสตร์ และ วิศวกรรมศาสตร์
            -พัฒนาขึ้นโดย บริษัท ไอบีเอ็ม(IBM)

        ภาษาโคบอล (COBOL : COmmon Business Oriented Language)

            -ใช้สำหรับงานด้านธุรกิจ เช่น การจัดเก็บ เรียกใช้และประมวลผลด้านบัญชี , คลังสินค้า , การรับและจ่ายเงิน เป็นต้น             -พัฒนาโดย สถาบันมาตรฐานแห่งชาติของสหรัฐอเมริกา ร่วมมือกับบริษัทผู้ผลิต เครื่องคอมพิวเตอร์หลายบริษัท

        ตัวอย่างภาษาคอมพิวเตอร์


        ภาษาเบสิก (BASIC : Beginner’s All-purpose Symbolic Instruction Code)

            -ใช้งานได้หลายด้าน ทั้งด้านธุรกิจและงานอื่นๆ
            -พัฒนาโดย สถาบันมาตรฐานแห่งชาติของสหรัฐอเมริกา(American National Standard Institute : ANSI)

        ภาษาปาสคาล (PASCAL : ชื่อของ Blaise Pascal)

            -ใช้ในงานด้านการคำนวณทั่วไป ทั้งงานด้านวิทยาศาสตร์ ธุรกิจ หรือวิศวกรรม
            -พัฒนาโดย นายนิคลอส เวิร์ธ(Niklaus Wirth) แห่ง สถาบันเทคโนโลยีของรัฐ ประเทศสวิสเซอร์แลนด์

        ภาษาซี (C)

            -ใช้สำหรับงานด้านคณิตศาสตร์ วิทยาศาสตร์ และ วิศวกรรมศาสตร์
            -พัฒนาโดย นายเดนนิส ริชชี่(Dennis Ritchie) สนับสนุนโดยบริษัท เอทีแอนด์ที (AT&T)

        ภาษาเอดา (ADA : ชื่อของ Augusta Ada )

            -ใช้สำหรับงานด้านทหาร
            -สนับสนุนโดยกระทรวงกลาโหมประเทศสหรัฐอเมริกา

        ภาษาอัลกอ (ALGOL : ALGOrithmic Language)

            -ใช้สำหรับงานด้านวิทยาศาสตร์
            -ถูกพัฒนาต่อให้เป็นภาษา PL/1 และ PASCAL

        ภาษาพีแอลวัน (PL/1)

            -ใช้สำหรับงานทั่วไป ทั้งงานธุรกิจและงานการคำนวณ
            -ใช้กับเครื่องคอมพิวเตอร์ของบริษัท ไอบีเอ็ม

        ภาษาโลโก้ (LOGO)

            -นิยมใช้ในโรงเรียน เพื่อสอนทักษะการแก้ปัญหาให้กับนักเรียน

        ภาษาอาร์พีจี (RPG : Report Program Generator)

        ภาษาโพรล็อก(PLOLOG : PROgramming LOGic)
            -นิยมใช้ในงานด้านปัญญาประดิษฐ์(AI : Artificial Intelligent )

        ภาษาลิป (LISP : LISt Processing)

            -ใช้สำหรับงานธุรกิจ

        ตัวแปลภาษา(Translator Program)

            -หมายถึง โปรแกรมที่ทำหน้าที่แปลโปรแกรมต้นฉบับ(Source code) ที่เขียนขึ้น ให้เป็นภาษาเครื่องที่เป็นเลขฐานสองเพื่อให้เครื่องคอมพิวเตอร์ทำงานตามที่ต้องการ

        ประเภทของตัวแปลภาษา

            -โปรแกรมแปลภาษาแบบแอสเซมเบลอ (Assembler)
            -โปรแกรมแปลภาษาแบบคอมไพเลอร์(Compiler)
            -โปรแกรมแปลภาษาแบบอินเทอร์พรีเทอร์(Interpreter)

        Assembler

            -แปลเฉพาะภาษาแอสเซมบลีให้เป็นภาษาเครื่องเท่านั้น

        Compiler

            -แปลโปรแกรมต้นฉบับทั้งโปรแกรม ที่เขียนจากภาษาระดับสูง ให้เป็นออบเจ็กต์(Object Code)
            -Object code สามารถนำไปใช้ได้ทันที
            -ระหว่างการแปล หากพบข้อผิดพลาดที่เกิดจากการเขียนคำสั่ง จะแสดงข้อผิดพลาดและหยุดการแปล
            -เมื่อเกิดข้อผิดพลาดระหว่างการแปล ผู้เขียนโปรแกรมจะต้องแก้ไขและแปลใหม่อีกครั้ง
            -ตัวอย่างภาษาที่ใช้ compiler ได้แก่ FORTRAN , PASCAL , C , C++ เป็นต้น

        Interpreter

            -แปลโปรแกรมต้นฉบับทั้งโปรแกรม ที่เขียนจากภาษาระดับสูง ให้เป็นภาษาเครื่อง
            -แปล Source code ทีละคำสั่ง ให้เป็น Object code
            -ถ้าพบข้อผิดพลาดจะหยุดทำงาน และให้ดำเนินการแก้ไขคำสั่งที่ผิด จึงเริ่มประมวลผลใหม่
            -ตัวอย่างภาษาที่ใช้ Interpreter ได้แก่ ภาษา BASIC เป็นต้น

        การเขียนโปรแกรมเชิงวัตถุ

            -การโปรแกรมเชิงวัตถุ(Object Oriented Programming : OOP) คือ กระบวนการที่โปรแกรมถูกจัด การให้อยู่ในรูปของวัตถุ(Objects) ในแต่ละวัตถุประกอบด้วยคุณลักษณะ(Attribute) และเมธอด(method) ซึ่งเป็นฟังก์ชันที่เขียนขึ้นเพื่อจัดการข้อมูลของวัตถุนั้นๆ
            -คุณสมบัติที่สำคัญของ OOP คือ การซ่อนข้อมูล (Encapsulation) , การสืบทอด(Inheritance) และการพ้องรูป(Polymorphism)
            -ภาษาคอมพิวเตอร์ที่ใช้เขียน OOP ได้แก่ ภาษาจาวา(JAVA) , ภาษา C++ , ภาษา Smalltalk เป็นต้น

0 comments:

Post a Comment

Subscribe to RSS Feed Follow me on Twitter!