7.1 โปรแกรมภาษาซี
ภาษาคอมพิวเตอร์ (Computer Languages)
ในการเขียนโปรแกรมนั้น ผู้ใช้จะต้องใช้ภาษาคอมพิวเตอร์เขียนโปรแกรมเรียกว่าซอฟต์แวร์ขึ้นมา ภาษาคอมพิวเตอร์นั้นจะมีตั้งแต่ละดับภาษาของเครื่องขึ้นมาจนถึงภาษาธรรมชาติ
ในการเขียนโปรแกรมนั้น ผู้ใช้จะต้องใช้ภาษาคอมพิวเตอร์เขียนโปรแกรมเรียกว่าซอฟต์แวร์ขึ้นมา ภาษาคอมพิวเตอร์นั้นจะมีตั้งแต่ละดับภาษาของเครื่องขึ้นมาจนถึงภาษาธรรมชาติ
ภาษาเครื่อง (Machine Languages) ภาษาที่เครื่องคอมพิวเตอร์เข้าใจมากที่สุด
ซึ่งจะเป็นลักษณะแบบเลขฐานสอง คือ 0 กับ 1
ภาษาสัญลักษณ์ (Symbolic Languages) เมื่อคอมพิวเตอร์ได้พัฒนาขึ้นมาเรื่อยๆและมีผู้ใช้มากขึ้น จึงมีคนมองเห็นว่าการที่จะเขียนโปรแกรมควบคุมคอมพิวเตอร์ด้วยภาษาเครื่องนั้น จะทำให้การพัฒนาทางด้านซอฟต์แวร์เป็นไปได้ช้า จึงได้มีการพัฒนาภาษาสัญลักษณ์ขึ้นเพื่อให้การเขียนโปรแกรมคอมพิวเตอร์สะดวกยิ่งขึ้น แต่การที่นำโปรแกรมนั้นไปใช้ จะต้องทำการเปลี่ยนภาษาสัญลักษณ์เป็นภาษาเครื่องก่อนเสมอ
ภาษาระดับสูง (High-Level Languages) เป็นภาษาที่พัฒนามาจากภาษาสัญลักษณ์อีกทีหนึ่ง แต่จะมีลักษณะที่คล้ายกับภาษามนุษย์มากยิ่งขึ้น การแปลงภาษาระดับให้เป็นภาษาเครื่องนั้นจะมีวิธีการเรียกว่าคอมไฟล์ ภาษาระดับได้แก่ FORTRAN COBOL และ ภาษาC
ภาษาธรรมชาติ (Natural Languages) ภาษาธรรมชาติก็คือภาษาที่มนุษย์พูดกัน เช่น ภาษาอังกฤษ ภาษาจีน เป็นต้น ซึ่งเครื่องคอมพิวเตอร์นั้นไม่สามารถที่จะเข้าใจได้เลย ในปัจจุบันยังไม่มีคนนิยมใช้กันมากนัก
ภาษาสัญลักษณ์ (Symbolic Languages) เมื่อคอมพิวเตอร์ได้พัฒนาขึ้นมาเรื่อยๆและมีผู้ใช้มากขึ้น จึงมีคนมองเห็นว่าการที่จะเขียนโปรแกรมควบคุมคอมพิวเตอร์ด้วยภาษาเครื่องนั้น จะทำให้การพัฒนาทางด้านซอฟต์แวร์เป็นไปได้ช้า จึงได้มีการพัฒนาภาษาสัญลักษณ์ขึ้นเพื่อให้การเขียนโปรแกรมคอมพิวเตอร์สะดวกยิ่งขึ้น แต่การที่นำโปรแกรมนั้นไปใช้ จะต้องทำการเปลี่ยนภาษาสัญลักษณ์เป็นภาษาเครื่องก่อนเสมอ
ภาษาระดับสูง (High-Level Languages) เป็นภาษาที่พัฒนามาจากภาษาสัญลักษณ์อีกทีหนึ่ง แต่จะมีลักษณะที่คล้ายกับภาษามนุษย์มากยิ่งขึ้น การแปลงภาษาระดับให้เป็นภาษาเครื่องนั้นจะมีวิธีการเรียกว่าคอมไฟล์ ภาษาระดับได้แก่ FORTRAN COBOL และ ภาษาC
ภาษาธรรมชาติ (Natural Languages) ภาษาธรรมชาติก็คือภาษาที่มนุษย์พูดกัน เช่น ภาษาอังกฤษ ภาษาจีน เป็นต้น ซึ่งเครื่องคอมพิวเตอร์นั้นไม่สามารถที่จะเข้าใจได้เลย ในปัจจุบันยังไม่มีคนนิยมใช้กันมากนัก
ขั้นตอนการรันโปรแกรมด้วยภาษา c
การพัฒนาโปรแกรมด้วยภาษา c นั้นมีขั้นตอนอยู่ 3 ขั้น ดังนี้
1.เขียนและแก้ไขโปรแกรม คือ การนำคำสั่งต่างๆของภา c มาเขียนเรียงต่อๆกันจนเป็นโปรแกรมที่ทำงานตามผู้ใช้ต้องการ โดยการเขียนจะเป็นตัวอักษร ซึ่งเมื่อเขียนเสร็จก็จะได้เป็น Source Files
2.คอมไฟล์โปรแกรม เมื่อได้ Source Files แล้วและเมื่อต้องการรันโปรแกรมใดๆผู้ใช้จะต้องทำการแปลง Source Files เหล่านั้น ให้เป็นภาษาเครื่องก่อน ซึ่งในขั้นตอนนี้เรียกว่า คอมไฟล์โปรแกรม ซึ่งจะได้ไฟล์ Object Module ด้วย
3.การลิงค์โปรแกรม ในภาษา c นั้นจะมีฟังก์ชั่นต่างๆที่เตรียมพร้อมมาให้ผู้ใช้ได้ใช้อยู่แล้ว เมื่อ คอมไฟล์โปรแกรมเสร็จแล้วไม่มีข้อผิดพลาดใด ตัวคอมไฟล์ (Compiler) จะทำการดึงโปรแกรมอื่นที่ถูกเรียกใช้จากโปรแกรมที่ทำการลิงค์เข้ามารวมในโปรแกรมที่สมบูรณ์
การพัฒนาโปรแกรมด้วยภาษา c นั้นมีขั้นตอนอยู่ 3 ขั้น ดังนี้
1.เขียนและแก้ไขโปรแกรม คือ การนำคำสั่งต่างๆของภา c มาเขียนเรียงต่อๆกันจนเป็นโปรแกรมที่ทำงานตามผู้ใช้ต้องการ โดยการเขียนจะเป็นตัวอักษร ซึ่งเมื่อเขียนเสร็จก็จะได้เป็น Source Files
2.คอมไฟล์โปรแกรม เมื่อได้ Source Files แล้วและเมื่อต้องการรันโปรแกรมใดๆผู้ใช้จะต้องทำการแปลง Source Files เหล่านั้น ให้เป็นภาษาเครื่องก่อน ซึ่งในขั้นตอนนี้เรียกว่า คอมไฟล์โปรแกรม ซึ่งจะได้ไฟล์ Object Module ด้วย
3.การลิงค์โปรแกรม ในภาษา c นั้นจะมีฟังก์ชั่นต่างๆที่เตรียมพร้อมมาให้ผู้ใช้ได้ใช้อยู่แล้ว เมื่อ คอมไฟล์โปรแกรมเสร็จแล้วไม่มีข้อผิดพลาดใด ตัวคอมไฟล์ (Compiler) จะทำการดึงโปรแกรมอื่นที่ถูกเรียกใช้จากโปรแกรมที่ทำการลิงค์เข้ามารวมในโปรแกรมที่สมบูรณ์
การรันโปนแกรม
เมื่อทำการลิงค์เสร็จแล้ว โปรแกรมนั้นก็พร้อมที่จะรัน และเมื่อรันโปรแกรมโดยใช้คำสั่งของระบบปฏิบัติงานโปรแกรมนั้นจะถูกโหลดลงสู่หน่วยคำสั่งหลักจากนั้นก็จะทำการรันการกระทำนี้เรียกว่า Loader
เมื่อทำการลิงค์เสร็จแล้ว โปรแกรมนั้นก็พร้อมที่จะรัน และเมื่อรันโปรแกรมโดยใช้คำสั่งของระบบปฏิบัติงานโปรแกรมนั้นจะถูกโหลดลงสู่หน่วยคำสั่งหลักจากนั้นก็จะทำการรันการกระทำนี้เรียกว่า Loader
การพัฒนาโปรแกรม
ในการพัฒนาโปรแกรมขึ้นมาซักโปรแกรมหนึ่งนั้น ไม่ใช่มาถึงจะเขียนโปรแกรมได้เลย การพัฒนานั้นจะมีขั้นตอนที่เรียกว่า System Development Life Cycle
1.หาความต้องการของระบบ (System Requirements) คือ การศึกษาและเก็บความต้องการของผู้ใช้โปรแกรม ว่ามีความต้องการอะไรบ้าง
2.วิเคราะห์ (Analysis) คือ การนำเอาความต้องการของผู้ใช้โปรแกรมมาวิเคราะห์ว่าจะพัฒนาเป็นโปรแกรมตามที่ผู้ใช้ต้องการได้หรือไม่ถ้าทำได้จะทำได้มากน้อยเพียงใด3.ออกแบบ (Design) คือ เมื่อสรุปได้แล้วว่าโปรแกรมที่จะสร้างมีลักษณะใดขั้นตอนต่อมาคือ การออกแบบการทำงานของโปรแกรมให้เป็นไปตามความต้องการที่วิเคราะห์ไว้การออกแบบอาจจะออกแบบเป็นผังงานก็ได้
4.เขียนโปรแกรม (Code) คือ เมื่อได้ผังงานแล้ว ต่อมาก็เป็นการเขียนโปรแกรมตามผังงานออกแบบไว้
5.ทดสอบ (System Test) คือเมื่อเขียนโปรแกรมเสร็จแล้ว จะต้องมีการทดสอบเพื่อหาข้อผิดพลาดต่างๆ เช่น ตรงตามที่ผู้ใช้ต้องการหรือไม่ ถ้าพบข้อผิดพลาดก็กลับไปทำออกแบบอีกครั้ง
6.ดูแล (Maintenance) เมื่อโปรแกรมผ่านการทดสอบแล้ว และผู้ใช้ได้นำโปรแกรมดังกล่าวไปใช้ ผู้พัฒนาจะต้องคอยดูแล เนื่อจากอาจมีข้อผิดพลาดที่หาไม่พบในขั้นตอนการทดสอบโปรแกรม
ในการพัฒนาโปรแกรมขึ้นมาซักโปรแกรมหนึ่งนั้น ไม่ใช่มาถึงจะเขียนโปรแกรมได้เลย การพัฒนานั้นจะมีขั้นตอนที่เรียกว่า System Development Life Cycle
1.หาความต้องการของระบบ (System Requirements) คือ การศึกษาและเก็บความต้องการของผู้ใช้โปรแกรม ว่ามีความต้องการอะไรบ้าง
2.วิเคราะห์ (Analysis) คือ การนำเอาความต้องการของผู้ใช้โปรแกรมมาวิเคราะห์ว่าจะพัฒนาเป็นโปรแกรมตามที่ผู้ใช้ต้องการได้หรือไม่ถ้าทำได้จะทำได้มากน้อยเพียงใด3.ออกแบบ (Design) คือ เมื่อสรุปได้แล้วว่าโปรแกรมที่จะสร้างมีลักษณะใดขั้นตอนต่อมาคือ การออกแบบการทำงานของโปรแกรมให้เป็นไปตามความต้องการที่วิเคราะห์ไว้การออกแบบอาจจะออกแบบเป็นผังงานก็ได้
4.เขียนโปรแกรม (Code) คือ เมื่อได้ผังงานแล้ว ต่อมาก็เป็นการเขียนโปรแกรมตามผังงานออกแบบไว้
5.ทดสอบ (System Test) คือเมื่อเขียนโปรแกรมเสร็จแล้ว จะต้องมีการทดสอบเพื่อหาข้อผิดพลาดต่างๆ เช่น ตรงตามที่ผู้ใช้ต้องการหรือไม่ ถ้าพบข้อผิดพลาดก็กลับไปทำออกแบบอีกครั้ง
6.ดูแล (Maintenance) เมื่อโปรแกรมผ่านการทดสอบแล้ว และผู้ใช้ได้นำโปรแกรมดังกล่าวไปใช้ ผู้พัฒนาจะต้องคอยดูแล เนื่อจากอาจมีข้อผิดพลาดที่หาไม่พบในขั้นตอนการทดสอบโปรแกรม
ภาษาคอมพิวเตอร์ หมายถึง ภาษาใดๆ
ที่ผู้ใช้งานใช้สื่อสารกับคอมพิวเตอร์ หรือคอมพิวเตอร์ด้วยกัน แล้วคอมพิวเตอร์สามารถทำงานตามคำสั่งนั้นได้
คำนี้มักใช้เรียกแทนภาษาโปรแกรม แต่ความเป็นจริงภาษาโปรแกรมคือส่วนหนึ่งของภาษาคอมพิวเตอร์เท่านั้น
และมีภาษาอื่นๆ ที่เป็นภาษาคอมพิวเตอร์เช่นกัน ยกตัวอย่างเช่น HTML เป็นทั้งภาษามาร์กอัปและภาษาคอมพิวเตอร์ด้วย
แม้ว่ามันจะไม่ใช่ภาษาโปรแกรม หรือภาษาเครื่องนั้นก็นับเป็นภาษาคอมพิวเตอร์
ซึ่งโดยทางเทคนิคสามารถใช้ในการเขียนโปรแกรมได้ แต่ก็ไม่จัดว่าเป็นภาษาโปรแกรม
ภาษาคอมพิวเตอร์สามารถแบ่งออกเป็นสองกลุ่มคือ ภาษาระดับสูง (high level) และภาษาระดับต่ำ (low level) ภาษาระดับสูงถูกออกแบบมาเพื่อให้ใช้งานง่ายและสะดวกสบายมากกว่าภาษาระดับต่ำ
โปรแกรมที่เขียนถูกต้องตามกฎเกณฑ์และไวยากรณ์ของภาษาจะถูกแปล(compile) ไปเป็นภาษาระดับต่ำเพื่อให้คอมพิวเตอร์สามารถนำไปใช้งานหรือปฏิบัติตามคำสั่งได้ต่อไป
ซอฟต์แวร์สมัยใหม่ส่วนมากเขียนด้วยภาษาระดับสูง แปลไปเป็นออบเจกต์โค้ด (object code) แล้วเปลี่ยนให้เป็นชุดคำสั่งในภาษาเครื่อง
ภาษาคอมพิวเตอร์อาจแบ่งกลุ่มได้เป็นอีกสองประเภทคือ
ภาษาที่มนุษย์อ่านออก (human-readable)
และภาษาที่มนุษย์อ่านไม่ออก (non human-readable) ภาษาที่มนุษย์อ่านออกถูกออกแบบมาเพื่อให้มนุษย์สามารถเข้าใจและสื่อสารได้โดยตรงกับคอมพิวเตอร์
ส่วนใหญ่เป็นภาษาอังกฤษ) ส่วนภาษาที่มนุษย์อ่านไม่ออกจะมีโค้ดบางส่วนที่ไม่อาจอ่านเข้าใจได้
ไม่มีความคิดเห็น:
แสดงความคิดเห็น