มีความรู้ความเข้าใจเกี่ยวกับความหมาย ความเป็นมาและยุคต่าง ๆ ของภาษา | ||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||
ภาษาโปรแกรมคอมพิวเตอร์(Computer Programming Language) คือ ชุดคำสั่งที่นักเขียนโปรแกรม หรือโปรแกรมเมอร์ (Programmer) เขียนโปรแกรมซอร์สโค้ด (Source Code) ที่ถูกต้องตามหลักไวยากรณ์ของภาษาโปรแกรมคอมพิวเตอร์ เพื่อให้สามารถติดต่อสื่อสาร ควบคุมการรับส่งข้อมูล และสั่งให้คอมพิวเตอร์ทำงานตามที่นักเขียนโปรแกรมต้องการได้ | ||||||||||||||||||||||||||||||
ภาษาโปรแกรมที่ใช้ในการพัฒนาโปรแกรมขึ้นมาใช้งานนั้น มีอยู่ด้วยกันหลายภาษา ยุคที่ 1 : ภาษาเครื่อง (Machine Language) ภาษาเครื่อง
เป็นภาษาโปรแกรมคอมพิวเตอร์ระดับต่ำที่สุด ซึ่งคอมพิวเตอร์เข้าใจ
ก่อนปี ค.ศ. 1952 มีการเขียนโปรแกรมคอมพิวเตอร์ด้วยภาษาเครื่องเพียงภาษาเดียว ดังนั้นนักเขียนโปรแกรมจึงไม่นิยมที่จะเขียนโปรแกรมด้วยภาษาเครื่อง
เพราะทำการ ข้อดีของภาษาเครื่อง คือสามารถเขียนโปรแกรมควบคุมการทำงานคอมพิวเตอร์ได้ ยุคที่ 2 ภาษาแอสเซมบลี ( Assembly Language) ภาษาแอสเซมบลี จัดอยู่ในภาษาระดับต่ำ และเป็นภาษาที่พัฒนาต่อมาจากภาษา
ตัวอย่างของคำสั่งภาษาแอสเซมบลี ดังตัวอย่าง เช่น CALL MySub ;transfer of control MOV AX, 5 ;data transfer ADD AX, 20 ;arithmetic JZ Next 1 ;logical (jump if zero) IN A 1, 20 ;input/output (read from hardware port) RET ;return เมื่อนักเขียนโปรแกรม เขียนโปรแกรมด้วยภาษาแอสเซมบลีแล้ว ต้องใช้ตัวแปล สรุปคำสั่งที่เขียนด้วยภาษาโปรแกรมคอมพิวเตอร์
ในยุคที่ 1 และที่ 2 จะต้องใช้ ยุคที่ 3 ภาษาระดับสูง ( High-level Language) ภาษาระดับสูงถือว่าเป็นภาษาโปรแกรมคอมพิวเตอร์ในยุคที่สาม
( Third-generation การเขียนโปรแกรมด้วยภาษาระดับสูงจะต้องใช้ตัวแปลภาษา ที่เรียกว่า คอมไพเลอร์ ตัวอย่างของภาษาคอมพิวเตอร์ระดับสูงได้แก่ ภาษา BASIC ภาษา COBOL ภาษา สรุปภาษาโปรแกรมคอมพิวเตอร์ในยุคที่ 3 มีการเขียนโปรแกรมที่ง่ายกว่าในยุคที่ 2 ยุคที่ 4 ภาษาระดับสูงมาก ( Very high-level Language) ภาษาระดับสูงมากเป็นภาษา โปรแกรมคอมพิวเตอร์ยุคที่สี่ ( Fourth-generation language) TABLE FILE SALES SUM UNITS BY MONTH BY CUSTOMER BY PRODUCT ON CUSTOMMER SUBTOTAL PAGE BREAK END ข้อดีของภาษาคอมพิวเตอร์ในยุคที่ 4 • การเขียนโปรแกรมจะสั้นและง่าย เพราะเน้นที่ผลลัพธ์ของงานว่าต้องการอะไร ตัวอย่างภาษาคอมพิวเตอร์ในยุคที่ 4ประกอบด้วย Report Generators, Query ภาษาที่ใช้สำหรับเรียกดูข้อมูลจากฐานข้อมูลได้เรียกว่า
ภาษาสอบถาม ( Query Report Generator หรือ Report Writer คือโปรแกรมสำหรับผู้ใช้ ( End user)
ที่ใช้สำหรับ Application Generators คือเครื่องมือของผู้เขียนโปรแกรมที่ใช้ในการสร้างโปรแกรม ยุคที่ 5 ภาษาธรรมชาติ ( Natural Language) ภาษาธรรมชาติจัดเป็นภาษาโปรแกรมคอมพิวเตอร์ยุคที่ห้า ( Fifth generation language) ตัวอย่างภาษาคอมพิวเตอร์ในยุคที่ 5 เช่น SUM SHIPMENTS BY STATE BY DATE ข้อดีของภาษาคอมพิวเตอร์ในยุคที่ 5 คือผู้เขียนโปรแกรมสามารถเขียนโปรแกรม | ||||||||||||||||||||||||||||||
ภาษาโปรแกรมในปัจจุบันนั้น มีมากมายหลายภาษาให้นักพัฒนาโปรแกรมได้เลือกใช้
ภาษา C ถูกพัฒนาขึ้นโดย Dennis Ritchie ในปี ค.ศ. 1972 ที่ห้องปฏิบัติการเบลล์ของ ภาษา C เป็นภาษาระดับสูงที่ได้รับความนิยมในหมู่นักเขียนโปรแกรมเป็นอย่างมาก ตัวอย่างการเขียนโปรแกรมด้วยภาษา C และ C++ #include <stdio.h> }
ภาษาเบสิก (Basic ย่อมาจาก Beginners All - purpose Symbolic Instruction Code) เป็น ตัวอย่างการเขียนโปรแกรมด้วยภาษา BASIC CLS PRINT “PLEASE ENTER A NUMBER” INPUT NUMBER DO WHILE NUMBER <> 999 SUM = SUM + NUMBER vCOUNTER = COUNTER + 1 PRINT “PLEASE ENTER THE NEXT NUMBER” INPUT NUMBER LOOP AVERAGE = SUM/COUNTER PRINT “THE AVERAGE OF THE NUMBER IS”; AVERAGE END
ภาษาโคบอล
เป็นภาษาระดับสูงที่ออกแบบมาตั้งแต่ปี ค.ศ. 1960 โดยสถาบันมาตรฐาน คำสั่งของภาษา COBOL จะคล้ายกับภาษาอังกฤษทำให้สามารถอ่านและเขียนโปรแกรม ตัวอย่างการเขียนโปรแกรมด้วยภาษา COBOL IF SALES-AMOUNT IS GREATER THAN SALES-QUOTA COMPUTE COMMISSION = MAX-RATE * SALES - AMOUNT ELSE COMPUTE COMMISSION = MIN-RATE * SALES - AMOUNT
ภาษาปาสคาล เป็นภาษาที่ได้รับการพัฒนาโดยนิคลอส เวิร์ธ (Niklaus Wirth)
แห่ง ตัวอย่างการเขียนโปรแกรมด้วยภาษา Pascal PROGRAM AVERAGE OF NUMBER: VAR COUNTER , NUMBER , SUM : INTEGER ; AVERAGE : REAL ; BEGIN SUM := 0 ; COUNTER := 0; WRITELN (‘PLEASE ENTER A NUMBER'); READLN ( NUMBER); WHILE NUMBER <> 999 DO BEGIN (* WHILE LOOP *) SUM := SUM + COUNTER; WRITELN (‘PLEASE ENTER THE NEXT NUMBER'); READ ( NUMBER); END ; (* WHILE LOOP *) AVERAGE := SUM / COUNTER; WRITELN (‘THE AVERAGE OF THE NUMBERS IS' , AVERAGE : 2 ); END.
ภาษา
Java เป็นภาษาระดับสูงในยุคที่ 4 ที่สนับสนุนการเขียนโปรแกรมเชิงวัตถุ ซึ่งเป็น class TestJava
ภาษา
Visual Basic เป็นภาษาระดับสูงในยุคที่ 4 พัฒนาโดยบริษัท Microsoft ในปี ตัวอย่างการเขียนโปรแกรมด้วยภาษา Visual Basic | ||||||||||||||||||||||||||||||
ตัวแปลภาษาโปรแกรมคอมพิวเตอร์ เป็นโปรแกรมที่ใช้ในการแปลความหมายของคำสั่งในภาษาคอมพิวเตอร์ชนิดต่าง ๆ ไปเป็นภาษาเครื่อง ซึ่งเป็นภาษาที่คอมพิวเตอร์เข้าใจ และทำงานตามคำสั่งได้ โดยโปรแกรมที่เขียนเป็นโปรแกรมต้นฉบับ หรือ ซอร์สโค้ด (Source code) ซึ่งโปรแกรมเมอร์เขียนคำสั่งตามหลักการออกแบบโปรแกรม และจำเป็นต้องใช้ตัวแปลภาษาคอมพิวเตอร์เพื่อตรวจสอบไวยากรณ์ของภาษาว่าเขียนถูกต้องหรือไม่ และทดสอบผลลัพธ์ว่าเป็นอย่างไร ซึ่งภาษาคอมพิวเตอร์ชนิดต่าง ๆ จะมีตัวแปลภาษาของตนเองโดยเฉพาะ โปรแกรมที่แปลจากโปรแกรมต้นฉบับแล้วจะเรียกว่า ออบเจ็คโค้ด ( Object code) ซึ่งเป็นภาษาเครื่องที่ประกอบด้วย รหัสคำสั่งที่คอมพิวเตอร์สามารถเข้าใจและนำไปปฏิบัติได้ต่อไป
ตัวแปลภาษาคอมพิวเตอร์ มีการใช้งานสำหรับการแปลภาษาคอมพิวเตอร์ชนิดต่าง ๆ แบ่งออกเป็น 3 ประเภท
เป็นตัวแปลภาษาแอสเซมบลีซึ่งเป็นภาษาระดับต่ำ ให้เป็นภาษาเครื่อง
เป็นตัวแปลภาษาคอมพิวเตอร์ระดับสูงไปเป็นภาษาเครื่อง โดยใช้หลักการแปลคำสั่งครั้งละ 1 คำสั่งให้เป็นภาษาเครื่อง แล้วนำคำสั่งที่เป็นภาษาเครื่องนั้นไปทำการประมวลผล และแสดงผลลัพธ์ทันที หากไม่พบข้อผิดพลาด หลังจากนั้นจะแปลคำสั่งถัดไปเรื่อย ๆ จนกว่าจะจบโปรแกรม ในระหว่างการแปลคำสั่ง ถ้าหากพบข้อผิดพลาดทางไวยากรณ์ของภาษา โปรแกรมอินเทอร์พรีเตอร์ก็จะหยุดการทำงานพร้อมแจ้งข้อผิดพลาดให้ทำการแก้ไข ซึ่งทำได้ง่ายและรวดเร็ว แต่ออบเจ็คโค้ดที่ได้จากการแปลคำสั่งโดยใช้อินเทอพรีเตอร์นั้นไม่สามารถเก็บไว้ใช้ใหม่ได้ จะต้องแปลโปรแกรมใหม่ทุกครั้งที่ต้องการใช้งาน ทำให้โปรแกรมทำงานได้ค่อนข้างช้า
เป็นตัวแปลภาษาคอมพิวเตอร์ระดับสูงไปเป็นภาษาเครื่อง โดยทำการตรวจสอบความถูกต้องของการเขียนคำสั่งทั้งหมดทั้งโปรแกรมให้เป็นออบเจ็คโค้ด แล้วจึงทำการแปลคำสั่งไปเป็นภาษาเครื่อง จากนั้นจึงทำทำการประมวลผลและแสดงผลลัพธ์ หากพบข้อผิดพลาดของการเขียนโปรแกรม หรือมีคำสั่งที่ผิดหลักไวยากรณ์ของภาษาคอมพิวเตอร์ โปรแกรมคอมไพเลอร์จะแจ้งให้โปรแกรมเมอร์ทำการแก้ไขให้ถูกต้องทั้งหมดก่อน แล้วจึงคอมไพล์ใหม่อีกครั้ง จนกว่าไม่พบข้อผิดพลาดถึงจะนำโปรแกรมไปใช้งานได้ ข้อดีของคอมไพเลอร์ คือ โปรแกรมออบเจ็คโค้ดที่ได้จะรวบรวมคำสั่งที่สำคัญในการรันโปรแกรม และได้โปรแกรมที่ทำงานเองได้ หรือ Execute Program ซึ่งสามารถทำงานได้ไม่จำกัด ไม่ต้องเสียเวลาในการแปลใหม่ทุกครั้ง ทำให้การทำงานของโปรแกรมเป็นไปอย่างรวดเร็ว จึงเป็นรูปแบบการแปลที่ได้รับความนิยมอย่างมาก ในปัจจุบัน มีหลักการแปลภาษาคอมพิวเตอร์แบบใหม่เกิดขึ้น คือ แปลจากซอร์สโค้ด ไปเป็นรหัสชั่วคราว หรือ อินเทอมีเดียตโค้ด ( Intermediate Code) ซึ่งสามารถนำไปทำงานได้ด้วย การใช้โปรแกรมในการอ่าน และทำงานตามรหัสชั่วคราวนั้น โดยโปรแกรมนี้จะมีหลักการทำงานคล้ายกับอินเทอพรีเตอร์ แต่จะทำงานได้เร็วกว่าเนื่องจากรหัสชั่วคราวจะใกล้เคียงกับภาษาเครื่องมาก มีข้อดีคือสามารถนำรหัสชั่วคราวนั้นไปใช้ได้กับทุก ๆ เครื่องมี่มีโปรแกรมตีความได้ทันที | ||||||||||||||||||||||||||||||