The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.
Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by นางสาวศิวมล สุวิชา, 2019-09-09 04:40:55

ศิวมล

ศิวมล

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

ในยคุ แรก ๆ การใชค้ อมพวิ เตอร์ใหท้ างานตามตอ้ งการน้นั ผเู้ ขียนโปรแกรมจะตอ้ งเขียนคาสงั่ ดว้ ย

ภาษาของเครื่องคอมพิวเตอร์ซ่ึงเรียกวา่ ภาษาเคร่ือง คาสั่งของภาษาเคร่ืองน้นั จะประกอบดว้ ยกลุ่มของ

ตวั เลขในระบบเลขฐานสอง เป็นภาษาเดียวเท่าน้นั ที่เครื่องคอมพวิ เตอร์เขา้ ใจไดโ้ ดยตรง ลกั ษณะของภาษา

เป็นภาษาที่ข้ึนอยกู่ บั ฮาร์ดแวร์ของคอมพิวเตอร์แต่ละระบบ โดยเขียนอยใู่ นรูปของรหสั ของระบบ

เลขฐานสอง ประกอบดว้ ย เลข 0 และเลข 1 ที่นามาเขียนเรียงติดต่อกนั ประโยคคาสั่งของภาษาเครื่องจะ

ประกอบดว้ ยส่วนที่ระบุใหค้ อมพิวเตอร์ทางานอะไร เช่น สง่ั ใหท้ าการบวกเลข สงั่ ใหท้ าการเคล่ือนยา้ ย

ขอ้ มลู เป็นตน้ และอีกส่วนเพือ่ บอกแหล่งขอ้ มูลที่จะนามาทางานตามที่ระบุในตอนแรก

โครงสร้างของคาส่ังในภาษาเครื่อง

คาสงั่ ในภาษาเคร่ืองจะประกอบดว้ ย 2 ส่วนคือ
1. โอเปอเรชนั โคด (Operation Code) เป็นคาสัง่ ที่สง่ั ใหเ้ ครื่องคอมพวิ เตอร์ปฏิบตั ิการ เช่น การบวก
(Addition) การลบ (Subtraction) เป็นตน้
2. โอเปอแรนด์ (Operands) เป็นตวั ท่ีระบุตาแหน่งที่เก็บของขอ้ มูลท่ีจะเขา้ คอมพวิ เตอร์เพ่อื นาไป
ปฏิบตั ิการตามคาส่ังในโอเปอเรชนั โคด

ยคุ ท่ี 2

2. ภาษาแอสเซมบลี

เป็นภาษาที่มีการใชส้ ญั ลกั ษณ์ขอ้ ความ (mnemonic codes) แทนกลุ่มของเลขฐานสอง เพ่ือใหง้ ่ายต่อ
การเขียนและการจดจามากกวา่ ภาษาเคร่ือง ตวั อยา่ งเช่นมีการใชส้ ญั ลกั ษณ์ตอ่ ไปน้ี

A ยอ่ มาจาก ADD หมายถึงการบวก S ยอ่ มาจาก SUBTRACT หมายถึงการลบ C ยอ่ มา
จาก COMPLARE หมายถึงการเปรียบเทียบ MP ยอ่ มาจาก MULTIPLY หมายถึงการคูณ ST ยอ่ มา
จาก SRORE หมายถึง การเก็บขอ้ มลู ไวใ้ นหน่วยความจา เป็นตน้

ถึงแมว้ า่ สัญลกั ษณ์เหล่าน้ีจะไม่ใช่คาที่มีความหมายในภาษาองั กฤษ แต่กท็ าใหน้ กั เขียนโปรแกรม
สามารถเขียนโปรแกรมไดส้ ะดวกสะบายมากข้ึน เน่ืองจากไมต่ อ้ งจดจา 0 และ1 ของเลขฐานสองอีก
นอกจากน้ี ภาษาแอสเซมบลียงั อนุญาตใหผ้ เู้ ขียนใชต้ วั แปรท่ีต้งั ข้ึนมาเองในการเกบ็ คา่ ขอ้ มมูลใด ๆ เช่น X,
Y, RATE หรือ TOTAL แทนการอา้ งอิงถึงตาแหน่งที่เก็บขอ้ มลู จริง ๆ ภายในหน่วยความจา ดงั ไดก้ ล่าวแลว้
วา่ เครื่องคอมพิวเตอร์จะรู้จกั เฉพาะภาษาเคร่ืองเทา่ น้นั ดงั น้นั จึงจาเป็ นท่ีจะตอ้ งมีการแปลโปรแกรม
ภาษาแอสเซมบลีน้นั ใหเ้ ป็ นภาษาเคร่ืองเสียก่อน เพ่อื ใหค้ อมพิวเตอร์สามารถทางานตามคาสง่ั ในโปรแกรม
ได้ การแปลภาษาแอสเซมบลีเป็นภาษาเคร่ืองน้นั จะตอ้ งมีตวั แปลภาษาแอสเซมบลีท่ีเรียกวา่ แอสเซมเบลอร์
(Assembler) เป็นตวั แปล ซ่ึงภาษาแอสเซมบลี 1 คาสั่งจะสามารถแปลเป็นภาษาเคร่ืองได้ 1 คาส่ังเช่นกนั
ดงั น้นั เขียนโปรแกรมภาษาแอสเซมบลี 10 คาสั่ง ก็จะถูกแปลเป็นภาษาเครื่อง 10 คาส่ังเช่นกนั จึงเห็นไดว้ า่
ภาษาแอสเซมบลีจะมีลกั ษณะท่ีเหมือนกบั ภาษาเครื่องคือ เป็นภาษาที่ข้ึนอยกู่ บั เครื่อง กล่าวคือเราไม่สามารถ
นาโปรแกรมท่ีเขียนดว้ ยแอสเซมบลีโปรแกรมเดียวกนั ไปใชใ้ นเครื่องต่างชนิดกนั ได้ และนอกจากน้ีผทู้ ี่จะ
เขียนโปรแกรมภาษาแอสเซมบลีไดจ้ ะตอ้ งมีความรู้ความเขา้ ใจในเร่ืองของฮาร์ดแวร์เป็ นอยา่ งดี เนื่องจาก
จะตอ้ งยงุ่ เกี่ยวกบั การใชง้ านหน่วยความจาท่ีเป็นงานหน่วยความจาท่ีเป็นรีจิสเตอร์ภายในตลอด ดงั น้นั จึง
เหมาะที่จะใชเ้ ขียนในงานท่ีตอ้ งการความเร็วในการทางานสูง เช่น งานทางดา้ นกราฟิ กหรืองานพฒั นา
ซอฟตแ์ วร์ระบบตา่ ง ๆ

อยา่ งไรกต็ ามถึงแมว้ า่ ภาษาน้ีจะง่ายกวา่ การเขียนดว้ ยภาษาเครื่อง แตก่ ย็ งั ถือวา่ เป็นภาษาช้นั ต่าที่ยงั
ยากต่อการเขียนและการเรียนรู้มากสาหรับผทู้ ี่ไม่ความรู้เก่ียวกบั ฮาร์ดแวร์เทา่ ใดนกั

ยุคที่ 3

3. ภาษาระดบั สูง

สามารถเรียกไดอ้ ีกอยา่ งวา่ เป็ นภาษารุ่นท่ี 3 (3rd Generation Languages หรือ 3GLs) เป็นภาษาที่ถูก
สร้างข้ึนมาเพ่อื ใหส้ ามารถเขียนและอ่านโปรแกรมไดง้ ่ายข้ึน เน่ืองจากมีลกั ษณะเหมือนภาษาองั กฤษทว่ั ๆ
ไป และที่สาคญั คือผเู้ ขียนโปรแกรมไมจ่ าเป็นตอ้ งมีความรู้เก่ียวกบั ระบบฮาร์ดแวร์แต่อยา่ งใด ตวั อยา่ งของ
ภาษาประเภทน้ีไดแ้ ก่ ภาษาฟอร์แทรน (FORTRAN) โคบอล (COBOL) เบสิก (BASIC) ปาสคาล
(PASCAL) ซี (C) เอดา (ADA) อยา่ งไรก็ตามโปรแกรมที่ถูกเขียนดว้ ยภาษาประเภทน้ีจะทางานได้ กต็ ่อเมื่อ
มีการแปลงใหเ้ ป็นภาษาเคร่ืองเสียก่อน ซ่ึงวธิ ีการแปลงจากภาษาช้นั สูงใหเ้ ป็นภาษาเครื่องน้นั จะทาไดโ้ ดย
ใชโ้ ปรแกรมท่ีเรียกวา่ คอมไพเลอร์ (Compiler) หรือ อินเตอร์พรีเตอร์ (Interpreter) อยา่ งใดอยา่ งหน่ึง โดย
ภาษาช้นั สูงแต่ละภาษาจะมีตวั แปลภาษาเฉพาะเป็นของตวั เอง

การเขียนโปรแกรมดว้ ยภาษาช้นั สูงน้นั นอกจากจะใหค้ วามสะดวกแก่ผเู้ ขียนเป็นอนั มากแลว้ ผเู้ ขียน
แทบจะไม่ตอ้ งมีความรู้เก่ียวกบั การทางานของระบบฮาร์ดแวร์ก็สามารถเขียนโปรแกรมส่ังใหเ้ คร่ือง
คอมพิวเตอร์ทางานได้ นอกจากน้ียงั มีขอ้ ดีอีกอยา่ งคือสามารถนาโปรแกรมท่ีเขียนน้ีไปใชง้ านบนเคร่ืองใดก็
ได้ คือมีลกั ษณะที่ไม่ข้ึนอยกู่ บั กบั เครื่อง (Hardware Indepent) เพยี งแตต่ อ้ งทาการการแปลโปรแกรมใหม่
เท่าน้นั แต่อยา่ งไรก็ตามภาษาเคร่ืองที่ไดจ้ ากการแปลภาษาช้นั สูงน้ีอาจเยนิ่ เยอ้ และไม่มีประสิทธิภาพเท่ากบั
การเขียนดว้ ยภาษาเครื่องหรือแอสเซมบลีโดยตรง

ภาษารุ่นท่ี 3 น้ีส่วนใหญจ่ ะจดั อยใู่ นกลุ่มของภาษาที่มีแบบแผน (Procedural language) เน่ืองจาก
ลกั ษณะการเขียนโปรแกรมจะมีโครงสร้างแบบแผนที่เป็นระเบียบ กล่าวคือ งานทุกอยา่ งผเู้ ขียนโปรแกรม
ตอ้ งเขียนโปรแกรมควบคุมการทางานเองท้งั หมด และตอ้ งเขียนคาสง่ั การทางานท่ีเป็ นข้นั ตอนทุกอยา่ ง ไม่
วา่ จะเป็นการสร้างแบบฟอร์มกรอกขอ้ มลู การประมวลผล หรือการสร้างรายงาน ซ่ึงโปรแกรมท่ีเขียนจะ
คอ่ นขา้ งซบั ซอ้ นและใชเ้ วลาในการพฒั นาค่อนขา้ งยาก

ยุคที่ 4
4. ภาษาระดับสูงมาก (Very high - Level Language)

สามารถเรียกไดอ้ ีกอยา่ งวา่ ภาษาในรุ่นท่ี 4 (4GLs: Fourth Generation Languages) ภาษาน้ีเป็นภาษา
ที่อยใู่ นระดบั ท่ีสูงกวา่ ภาษารุ่นที่ 3 มีลกั ษณะของภาษาในรุ่นท่ีเป็ นธรรมชาติคลา้ ย ๆ กบั ภาษาพดู ของมนุษย์
จะช่วยในเร่ืองของการสร้างแบบฟอร์มบนหนา้ จอเพอ่ื จดั การเก่ียวกบั ขอ้ มลู รวมไปถึงการออกรายงานซ่ึงจะ
มีการจดั การที่ง่ายมากไมย่ งุ่ ยากเหมือนภาษารุ่นที่ 3 ตวั อยา่ งของภาษาในรุ่นท่ี 4 ไดแ้ ก่ Informix-4GL,
Focus, Sybase, InGres เป็นตน้

ลกั ษณะของ 4GL มดี งั ต่อไปนี้

เป็นภาษาแบบ Nonprocedural ซ่ึงหมายความวา่ ผใู้ ชเ้ พียงแต่บอกวา่ ตอ้ งการอะไร แต่ไม่ตอ้ งบอกถึง
รายละเอียดวา่ ตอ้ งทาอยา่ งไร คอมพวิ เตอร์จะเป็นผจู้ ดั การใหเ้ องหมด ตวั อยา่ งเช่น ถา้ ตอ้ งการสร้าง
แบบฟอร์มการรับขอ้ มูลจากผใู้ ช้ ผเู้ ขียนโปรแกรมเพียงแต่ทาการออกแบบหนา้ ตาของแบบฟอร์มน้นั บน
โปรแกรมอิดิเตอร์ (Editor) ใดๆ และเกบ็ เป็นไฟลไ์ วเ้ ม่ือจะเรียกใชง้ านแบบฟอร์มน้นั เพียงแต่ใชค้ าส่ังเปิ ด
ไฟลน์ ้นั ข้ึนมาแสดงบนหนา้ จอคอมพิวเตอร์ไดโ้ ดยทนั ที ซ่ึงต่างจากภาษารุ่นท่ี 3 ซ่ึงเป็น
แบบ Procedural ผเู้ ขียนโปรแกรมจะตอ้ งเขียนรายละเอียดของโปรแกรมท้งั หมดวา่ ที่บรรทดั น้ีคอลมั น์น้ีจะ
ใหแ้ สดงขอ้ ความหรือขอ้ มลู อะไรออกมา ซ่ึงถา้ ต่อไปจะมีการปรับเปล่ียนหนา้ ตาของแบบฟอร์ม กจ็ ะเป็น
เร่ืองที่ยงุ่ ยากอยา่ งยงิ่ หรือในการสร้างรายงานดว้ ย 4GLs กส็ ามารถทาไดอ้ ยา่ งง่ายดายเพยี งแต่ระบุลงไปวา่
ตอ้ งการรายงานอะไร มีขอ้ มูลใดท่ีจะนามาแสดงบา้ ง โดยไมต่ อ้ งบอกถึงวธิ ีการสร้าง หรือการดึงขอ้ มูลแต่
อยา่ งใด 4GLs จะจดั การให้เองหมด

ส่วนใหญจ่ ะพบวา่ 4GLs มกั จะอยคู่ วบคูก่ บั ระบบฐานขอ้ มลู โดยผใู้ ชร้ ะบบฐานขอ้ มลู จะสามารถ
จดั การฐานขอ้ มลู ไดโ้ ดยผา่ นทาง 4GLs น้ี

ส่วนประกอบของภาษา 4GLs

โดยทวั่ ไปแลว้ 4GLs จะประกอบดว้ ยส่วนสาคญั 3 ส่วนดงั ต่อไปน้ี
เครื่องช่วยสร้างรายงาน (Report Generators) หรืออาจเรียกไดอ้ ีกอยา่ งวา่ เคร่ืองมือช่วยเขียนรายงาน
(Report Writer) เป็นโปรแกรมสาหรับผใู้ ช้ (end - users) ใหส้ ามารถสร้างรายงานอยา่ งง่ายไดด้ ว้ ยตนเอง
โดยผใู้ ชส้ ามารถกาหนดเง่ือนไขและขอ้ มลู ท่ีจะออกมาพิมพใ์ นรายงาน รวมไปถึงรูปแบบ (format) ของการ
พิมพไ์ ว้ โปรแกรมช่วยสร้างรายงานน้ีจะทาการพิมพร์ ายงานตามรูปแบบที่เรากาหนดไวใ้ ห้
ภาษาช่วยคน้ หาขอ้ มูล (Query Languages) เป็นภาษาท่ีช่วยในการคน้ หาหรือดึงขอ้ มูลจากฐานขอ้ มลู
ภาษาน้ีจะง่ายตอ่ การใชง้ านมาก เน่ืองจากจะอยใู่ นรูปแบบที่ใกลเ้ คียงกบั ภาษาองั กฤษมาก ตวั อยา่ งของภาษา
ช่วยคน้ หาขอ้ มลู น้ีไดแ้ ก่ ภาษา SQL (Structured Query Language)ภาษา QBE (Query - By -
Example) และ Intellect เป็นตน้

เครื่องมือช่วยสร้างโปรแกรม (Application Generators) 4GLs จะมีรูปแบบการเขียนโปรแกรม
เฉพาะตวั และสามารถเรียกใชเ้ คร่ืองมือช่วยสร้างโปรแกรมน้ีทาการแปลง 4GLs ใหก้ ลายเป็นโปรแกรมใน
ภาษารุ่นท่ี 3 ได้ เช่น ภาษาโคบอล หรือ ภาษาซี เป็นตน้ ซ่ึงอาจนาภาษาโคบอล หรือซีที่แปลงไดไ้ ปพฒั นา
ตอ่ เพื่อใชก้ บั งานที่มีความซบั ซอ้ นมาก ๆ ตอ่ ไปได้

ประโยชน์ของ 4GL

1. เป็นภาษาท่ีง่ายตอ่ การเรียนรู้ คาส่ังแต่ละคาสงั่ สื่อความหมายไดอ้ ยา่ งชดั เจน ดงั น้นั จึงสามารถใช้
เวลาในการศึกษาส้นั กวา่ ภาษารุ่นท่ี 3

2. ประหยดั เวลาในการเขียนโปรแกรมไดม้ าก เน่ืองจาก 1 คาสั่งของ 4GL ถา้ ตอ้ งเขียนดว้ ยภาษารุ่น
ท่ี 3 อาจตอ้ งเขียนถึง 100 กวา่ คาสงั่ ในการทางานแบบเดียวกนั

3. สนบั สนุนระบบจดั การฐานขอ้ มูล ทาใหส้ ามารถจดั การกบั ขอ้ มลู ไดอ้ ยา่ งสะดวกและรวดเร็ว
4. สามารถสร้างแบบฟอร์มเพอื่ จดั การกบั ขอ้ มูลในฐานขอ้ มูล และออกรายงานไดอ้ ยา่ งง่ายดาย ไม่
ยงุ่ ยาก
5. มีเครื่องมือการใชง้ านเพื่ออานวยความสะดวกในการเขียนโปรแกรมมากพอสมควร
6. สามารถทางานไดใ้ นลกั ษณะ Interactive คือมีการโตต้ อบกบั ผใู้ ชไ้ ดท้ นั ที

ยุคท่ี 5

5. ภาษาธรรมชาติ

เป็นภาษาในยคุ ที่ 5 ท่ีมีรูปแบบเป็นแบบ Nonprocedural เช่นเดียวกบั ภาษารุ่นที่ 4 การท่ีเรียกวา่
ภาษาธรรมชาติ เพราะจะสามารถสงั่ งานคอมพวิ เตอร์ไดโ้ ดยใชภ้ าษามนุษยโ์ ดยตรง ซ่ึงโดยทวั่ ไปคาสัง่ ที่
มนุษยป์ ้ อนเขา้ ไปในคอมพวิ เตอร์จะอยใู่ นรูปของภาษาพดู มนุษย์ ซ่ึงอาจมีรูปแบบที่ไม่แน่นอนตายตวั แต่
คอมพวิ เตอร์ก็สามารถแปลคาส่ัง เหล่าน้นั ใหอ้ ยใู่ นรูปแบบที่คอมพิวเตอร์เขา้ ใจได้ ถา้ ต้งั คาถามใดไม่
กระจา่ งกจ็ ะมีการถามกลบั เพ่อื ใหเ้ ขา้ ใจคาถามไดอ้ ยา่ งถูกตอ้ ง

ภาษาธรรมชาติน้ี ถูกสร้างข้ึนมาจากเทคโนโลยที างดา้ นระบบผเู้ ช่ียวชาญ (Expert System) ซ่ึงเป็น
งานที่อยใู่ นสาขาปัญญาประดิษฐ์ (Artificial Intelligence) ในการท่ีพยายามทาใหค้ อมพวิ เตอร์เปรียบเสมือน
กบั เป็นผเู้ ช่ียวชาญคนหน่ึงท่ีสามารถคิดและตดั สินใจไดเ้ ช่นเดียวกบั มนุษย์ คอมพิวเตอร์สามารถตอบคาถาม
ของมนุษยไ์ ดอ้ ยา่ งถูกตอ้ งพร้อมท้งั มีขอ้ แนะนาตา่ ง ๆ เพ่ือช่วยในการตดั สินใจของมนุษยไ์ ดอ้ ีกดว้ ย ระบบ
ผเู้ ช่ียวชาญน้ีจะใชก้ บั งานเฉพาะดา้ นใดดา้ นหน่ึงเช่น ในการแพทย์ ในการพยากรณ์อากาศ ในการวเิ คราะห์
ทางเคมี การลงทุน ฯลฯ ซ่ึงในการน้ีจะตอ้ งมีการเก็บรวบรวมขอ้ มลู ที่มีอยเู่ ป็นจานวนมหาศาลและใหผ้ ใู้ ช้
สามารถใชภ้ าษาธรรมชาติในการดึงขอ้ มลู จากฐานความรู้น้ีได้ ดงั น้นั เราจึงอาจเรียกระบบผเู้ ชี่ยวชาญน้ีไดอ้ ีก
อยา่ งวา่ เป็น ระบบฐานความรู้ (Knowledge Base System) อยา่ งไรก็ตามระบบผเู้ ช่ียวชาญไม่สามารถนามา
แทนท่ีการทางานของผเู้ ชี่ยวชาญที่เป็นมนุษยไ์ ด้ เน่ืองจากท้งั ระบบผเู้ ช่ียวชาญและมนุษยจ์ ะตอ้ งทางาน
ร่วมกนั โดยมนุษยจ์ ะนาขอ้ มลู ที่ไดจ้ ากระบบผเู้ ช่ียวชาญมาพจิ ารณาร่วมกบั วจิ ารญาณของตนเองเพือ่ ตดั สิน
ปัญหาท่ีซบั ซอ้ นอีกที อยา่ งไรกต็ ามระบบผเู้ ชี่ยวชาญน้ีเป็นคลื่นแห่งอนาคต ท่ีจะใชเ้ ป็นเคร่ืองมือช่วย
ตดั สินใจการทางานของมนุษยไ์ ดอ้ ยา่ งดีเยยี่ ม


Click to View FlipBook Version