More Related Content
Similar to หน่วยที่ 4 (17)
หน่วยที่ 4
- 3. แต่ถ้ามนุษย์ต้องการป้ อนโปรแกรมให้กับคอมพิวเตอร์เป็นเลขฐานสองนั้นจะ
ทาได้ยากมาก เพราะเป็นภาษาที่มนุษย์เข้าใจได้ยาก จึงได้มีการออกแบบตัวอักษร
ภาษาอังกฤษให้แทนคาสั่งรหัสเลขฐานสองเหล่านั้นเรียกว่า รหัสนีโมนิก
(mnemonic) ภาษาคอมพิวเตอร์ที่ใช้รหัสนีโมนิกในการเขียนโปรแกรมเรียกว่า
ภาษาแอสเซมบลี (Assembly Language) ต่อมาได้มีการพัฒนาชุดคาสั่งภาษาต่าง
ๆ ให้มีความใกล้เคียงกับภาษาที่มนุษย์เข้าใจเรียกว่าภาษาระดับสูง (High-level
Language) ซึ่งมีอยู่หลายภาษา ได้แก่ ภาษาซี ภาษาเบสิก ภาษาปาสคาล เป็นต้น
สาหรับภาษาแอสเซมบลีเป็นภาษาที่ทางานได้เร็วเพราะเข้าถึงหน่วยประมวลผลได้
เร็วที่สุดเราเรียกภาษานี้ว่าภาษาระดับต่า (Low-level Language)
- 5. การเขียนโปรแกรมด้วยภาษาแอสแซมบลีจะต้องใช้ตัวแปลภาษาให้เป็น
ภาษาเครื่อง ตัวแปลนี้เรียกว่า แอสเซมเบอร์ (Assembler) ขั้นตอนการแปลสามารถ
เขียนได้ดังรูป
สาหรับการเขียนโปรแกรมด้วยภาษาระดับสูงจะมีวิธีในการแปล 2 ประเภท
คือ การแปลคาสั่งทีละคาสั่งให้เครื่องทางานทีละคาสั่ง จากนั้นจึงแปลคาสั่งบรรทัด
ต่อไป เช่น การเขียนโปรแกรมด้วยภาษาเบสิก ตัวที่แปลภาษาประเภทนี้เรียกว่า
อินเตอร์พรีเตอร์ (Interpreter) การทางานของตัวอินเตอร์พรีเตอร์นี้จะแปล
ความหมายของคาสั่งทีละคาสั่ง ถ้าไม่พบข้อผิดพลาดเครื่องจะทาคาสั่งที่แปลได้
โปรแกรมต้นฉบับ
ภาษาแอสเซมบลี
โปรแกรม
แอสเซมเบอร์
รหัสภาษาเครื่อง
- 9. ภาษาฟอร์แทน (FORTRAN)
เป็นภาษาระดับสูงเกิดขึ้นเมื่อปี ค.ศ. 1950 คาว่า FORTRAN ย่อมาจากคา
ว่า FORmular TRANslator ภาษานี้เป็นภาษาที่มีประสิทธิภาพสูงในการคานวณ
เหมาะสาหรับการเขียนโปรแกรมประยุกต์ทางคณิตศาสตร์ที่ทางานบนเครื่อง
เมนเฟรม แต่ในปัจจุบันได้มีคอมไพล์เลอร์หลายตัวที่พัฒนาขึ้นสาหรับแปลภาษานี้บน
เครื่องคอมพิวเตอร์ทั่วไป
ภาษาโคบอล (COBOL)
ภาษานี้เกิดจากความร่วมมือของรัฐบาลสหรัฐกับองค์กรธุรกิจ และ
มหาวิทยาลัยต่าง ๆ ถูกประกาศใช้อย่างเป็นทางการเมื่อปี ค.ศ. 1960 ภาษานี้มีชื่อ
เต็มๆ ว่า Business Oriented Language เป็นภาษาที่ใช้เขียนโปรแกรมแบบ
โครงสร้าง (Structure Program) เหมาะสาหรับการพัฒนาโปรแกรมประยุกต์ทาง
ธุรกิจ การจัดเก็บข้อมูล งานทางด้านบัญชี และการเชื่อมต่อคอมพิวเตอร์ภายใน
องค์กร
- 10. ภาษาปาสคาล (PASCAL)
ภาษานี้เกิดขึ้นเมื่อปี 1970 ชื่อของภาษาเป็นการตั้งชื่อตามนักคณิตศาสตร์ที่
ประดิษฐ์เครื่องคานวณในยุคแรก ที่ชื่อ Blaise Pascal ภาษานี้เป็นภาษาระดับสูงที่ใช้
เขียนโปรแกรมเชิงโครงสร้างได้ ตัวแปลภาษาที่ได้รับความนิยมอย่างมาก คือ
โปรแกรมเทอร์โบปาสคาล
(Turbo Pascal) ของบริษัทบอร์แลนด์ ในปัจจุบันในประเทศได้ใช้โปรแกรมนี้การสอน
เขียนโปรแกรมเบื้องต้นให้กับนักเรียน นักศึกษาทั่วไป
ภาษาซี (C)
ภาษานี้พัฒนาขึ้นในห้องปฏิบัติการเบลล์ (Bell Laboratory) ของบริษัท เอที
แอนด์ที ในปี ค.ศ.1970 เพื่อใช้บนระบบปฏิบัติการยูนิกซ์ (Unix) ต่อมาได้มีตัวแปล
ภาษาออกมาหลายตัว และได้ถูกใช้อย่างแพร่หลายบนเครื่องคอมพิวเตอร์ทั่วไป
ภาษานี้เป็นภาษาที่มีความยืดหยุ่นสูง สามารถทางานบนระบบปฏิบัติการต่าง ๆ ได้
เป็นอย่างดี สามารถใช้ควบคุมฮาร์ดแวร์ได้โดย แต่ชุดคาสั่งจะมีกฎเกณฑ์และ
รายละเอียดต่าง ๆ จานวนมาก
- 11. ภาษาซีพลัสพลัส (C++)
ภาษานี้พัฒนาต่อมาจากภาษาซี โดยเพิ่มการเขียนโปรแกรมแบบ Class
เข้าไป ทาให้ภาษาซีมีความสามารถในการทางานสูงขึ้น สามารถนามาเขียนโปรแกรม
เชิงวัตถุ (Object-oriented pro-gramming) ได้ ทาให้ภาษานี้ได้รับความนิยมอย่าง
สูง แต่จะไม่เหมาะสาหรับผู้เริ่มต้นเขียนโปรแกรมเนื่องจากโครงสร้างภาษามีความ
ซับซ้อนมากขึ้น
วิชวลเบสิก (VISUAL BASIC)
ภาษานี้พัฒนาขึ้นโดยบริษัทไมโครซอฟต์ ชุดคาสั่งต่าง ๆ จะคล้ายกับภาษา
BASIC เดิม และเป็นภาษาที่ได้รับความนิยมอย่างมากในการเขียนโปรแกรมบนระบบ
ปฎิบัติการวินโดว์ เนื่องจากผู้เขียนโปรแกรมสามารถสร้างหน้าจอในการติดต่อกับผู้ใช้
ได้ง่าย ปัจจุบันภาษานี้ถูกนิยมใช้ในการเขียนโปรแกรมขนาดใหญ่ ๆ จานวนมาก
ภาษานี้เหมาะสาหรับผู้พัฒนาโปรแกรมแต่ไม่เหมาะกับผู้ที่จะเริ่มต้นเขียนโปรแกรม
- 12. ภาษาจาวา (JAVA)
ภาษานี้เกิดขึ้นในปี ค.ศ. 1990 โดยบริษัท Sun Microsystem ที่พัฒนาให้
เป็นภาษาสาหรับการเขียนโปรแกรมเชิงวัตถุ ภาษาจาวานี้สามารถทางานได้บนเครื่อง
คอมพิวเตอร์ทุกระบบ เนื่องจากเวลาทาการคอมไพล์ออกมาแล้วจะได้ข้อมูลแบบ
ไบต์โค้ด (Bytecode) เครื่องคอมพิวเตอร์ที่จะใช้ภาษานี้จะต้องติดตั้ง
Java Virtual Machine ก่อนเพื่อให้โปรแกรมทางานได้ ปัจจุบันภาษานี้ได้ถูกพัฒนา
มาหลายรูปแบบ มีทั้งการเขียนโปรแกรมบนระบบเครือข่าย การเขียนโปรแกรมบน
โทรศัพท์มือถือ เป็นต้น
- 14. 1. กาหนดและวิเคราะห์ปัญหา (Problem Definition and Problem Analysis)
2. เขียนผังงานและซูโดโค้ด (Pseudocoding)
3. เขียนโปรแกรม (Programming)
4. ทดสอบและแก้ไขโปรแกรม (Program Testing and Debugging)
5. ทาเอกสารและบารุงรักษาโปรแกรม (Program Documentation and
Maintenance)
- 15. การกาหนดและวิเคราะห์ปัญหา
ขั้นตอนนี้เป็นขั้นตอนแรกสุดที่นักเขียนโปรแกรมจะต้องทา การให้
คอมพิวเตอร์แก้ปัญหาต่างๆ ให้เรานั้น เราจะต้องมีแนวทางที่แก้ไขปัญหาที่เหมาะสม
ให้กับคอมพิวเตอร์ เพื่อให้การทางานเป็นไปอย่างมีประสิทธิภาพ ถ้าหากผู้ที่เขียน
โปรแกรมไม่สามารถทาความเข้าใจกับปัญหาที่ต้องการแก้ไขได้ การนาคอมพิวเตอร์
มาใช้ในการแก้ปัญหาต่าง ๆ ก็ไม่สามารถทาได้ การกาหนดและวิเคราะห์ปัญหามี
ขั้นตอนย่อย ๆ ดังนี้
กาหนดขอบเขตของปัญหา
โดยกาหนดรายละเอียดให้ชัดเจนว่าจะให้คอมพิวเตอร์ทาอะไรตัวแปร
ค่าคงที่ที่ต้องใช้เป็นลักษณะใด ถ้าหากเราไม่กาหนดขอบเขตของปัญหา จะทาให้
คอมพิวเตอร์ตัดสินใจได้ยากว่าข้อมูลต่าง ๆ ที่เกิดขึ้นนั้นถูกหรือผิด
- 16. กาหนดลักษณะของข้อมูลเข้าและออกจากระบบ
(Input/Output Specification)
โดยต้องรู้ว่าข้อมูลที่จะส่งเข้าไปเป็นอย่างไร มีอะไรบ้าง เพื่อให้โปรแกรมทา
การประมวลผลและแสดงผลลัพธ์ เช่น การรับค่าจากคีย์บอร์ด การใช้เมาส์ การ
กาหนดปุ่มต่าง ๆ ลักษณะการแดงผลทางหน้าจอว่าจะให้มีรูปร่างอย่างไรโดยคานึงถึง
ผู้ใช้เป็นในการออกแบบโปรแกรม ตัวอย่างเช่นถ้าหากต้องการรับข้อมูลเข้าไป
ประมวลผล ก็ต้องพิจารณาว่าข้อมูลนั้นเป็นตัวอักษรหรือตัวเลข ถ้าเป็นตัวเลขก็ต้อง
พิจารณาต่อว่าเป็นเลขจานวนเต็มหรือทศนิยม เอาต์พุตที่แสดงออกทางจอภาพจะให้
แสดงทศนิยมกี่ตาแหน่งเป็นต้น
กาหนดวิธีการประมวลผล (Process Specification)
โดยต้องรู้ว่าจะให้คอมพิวเตอร์ประมวลผลอย่างไรจึงได้ผลลัพธ์ตามต้องการ
- 17. การเขียนผังงานและซูโดโค้ด
หลังจากที่ได้วิเคราะห์ปัญหาแล้ว ขั้นตอนต่อไปจะต้องใช้เครื่องมีช่วยในการ
ออกแบบโปรแกรมซึ่งยังไม่ได้เขียนเป็นโปรแกรมจริง ๆ แต่จะช่วยให้เขียนโปรแกรมได้
ง่ายขึ้น และทาให้ผู้อื่นนาโปรแกรมของเราไปพัฒนาต่อได้ง่ายขึ้น โดยเขียนเป็นลาดับ
ขั้นตอนการทางานของโปรแกรมที่เรียกว่า อัลกอริทึม (Algorithm) ซึ่งจะแสดง
ขั้นตอนการแก้ปัญหา โดยใช้ประโยคที่ชัดเจนไม่คลุมเครือ และมีรายละเอียดการ
ทางานพอสมควร เพียงพอที่จะนาไปเขียนเป็นโปรแกรมให้ทางานจริง โดยอัลกอริทึม
นั้นอาจเขียนให้อยู่ในรูปของรหัสจาลองหรือซูโดโค้ด (Pseudo-code) หรือเขียนเป็น
ผังงาน (Flowchart) ก็ได้โดยซูโดโค้ดจะเป็นคาอธิบายขั้นตอนการทางานของ
โปรแกรม เป็นคาย่อไม่มีรูปแบบเฉพาะตัว โดยในแต่ละส่วนจะเป็นแนวทางในการ
เขียนโปรแกรมซึ่งทาให้เขียนโปรแกรมเป็นภาษาต่าง ๆ ได้ง่ายขึ้น ส่วนผังงานจะใช้
สัญลักษณ์ต่าง ๆ แทนการทางานและทิศทางของโปรแกรม