43
บบบบบ 1 บบบบ บบบบบบบบบบบ บ.บบบบบบบบบ บบบบ บบบบบ บบบบบบบบบบบบบบบบ บบบบบบบบ บบบบบบบบบบบบบบบบบ

บทที่ 1 ภาษาคอมพิวเตอร์

Embed Size (px)

DESCRIPTION

บทที่ 1 ภาษาคอมพิวเตอร์. อ.กรรณิการ์ แก้วเชื้อ โปรแกรมเทคโนโลยีสารสนเทศ มหาวิทยาลัยราชภัฏสุราษฎร์ธานี. เนื้อหา. 1. 2. 3. 4. ประเภทของภาษาคอมพิวเตอร์. การแปลภาษาคอมพิวเตอร์. แนวทางการเลือกใช้ภาษาคอมพิวเตอร์. สรุป. เกริ่นนำ. - PowerPoint PPT Presentation

Citation preview

Page 1: บทที่  1  ภาษาคอมพิวเตอร์

บทท�� 1 ภาษาคอมพิ วเตอร์�อ.กร์ร์ณิ การ์� แก�วเชื้��อ

โปร์แกร์มเทคโนโลยี�สาร์สนเทศ

มหาว ทยีาล"ยีร์าชื้ภ"ฏส$ร์าษฎร์�ธาน�

Page 2: บทที่  1  ภาษาคอมพิวเตอร์

เน��อหา

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

การ์แปลภาษาคอมพิ วเตอร์�2.

แนวทางการ์เล�อกใชื้�ภาษาคอมพิ วเตอร์�3.

สร์$ป4.

Page 3: บทที่  1  ภาษาคอมพิวเตอร์

เกร์ �นน+า

ภาษาคอมพิ วเตอร์� (Computer Language) หมายีถึ-ง ส"ญล"กษณิ�ท��ผู้0�ค ดพิ"ฒนาภาษาก+าหนดข-�นมาเพิ��อใชื้�แทนค+าส"�งส��อสาร์ส"�งงาน ร์ะหว3างมน$ษยี�ก"บเคร์��องคอมพิ วเตอร์�และอ$ปกร์ณิ�ต3อพิ3วงอ��นๆ

Page 4: บทที่  1  ภาษาคอมพิวเตอร์

พิ"ฒนาการ์ของภาษาคอมพิ วเตอร์�

เลขฐานสองเลขฐานสอง ข�อความภาษาอ"งกฤษข�อความภาษาอ"งกฤษ

X = 5 + 6

PRINT X

10101010

00000001

00001001

Page 5: บทที่  1  ภาษาคอมพิวเตอร์

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

ปร์ะเภทของภาษาท��จั"ดว3า

เป8นภาษาร์ะด"บต+�า

ภาษาคอมพิ วเตอร์�

(Computer Language)

ปร์ะเภทของภาษาท��จั"ดว3า

เป8นภาษาร์ะด"บส0ง

ปร์ะเภทของภาษาท��ท+างานภายีใต�ร์ะบบปฏ บ"ต Windows

• ภาษาเครื่�อง• ภาษาแอส

เซมบลี�

ภาษาฟอรื่�แทรื่น ภาษาเบส�ก ภาษาโคบอลี ภาษาปาสคาลี ภาษาซ� ภาษาเอดา ภาษาพี�แอลีวั�น

• โปรื่แกรื่มภาษาเชิ�งวั�ตถุ"

Page 6: บทที่  1  ภาษาคอมพิวเตอร์

ปร์ะเภทของภาษาท��จั"ดว3าเป8นภาษาร์ะด"บต+�า

1 .ภาษาเครื่�อง (Machine Language) เป#นภาษาท�เขี�ยนเป#นรื่หั�สเลีขีฐานสอง ซ(งคอมพี�วัเตอรื่�สามารื่ถุเขี)าใจได)ท�นท� กลี-าวัค�อ จะใชิ)เฉพีาะเลีขี 0 แลีะ 1 เท-าน�0น เขี�ยนสลี�บก�นไปมาเพี�อใชิ)เป#นรื่หั�สส�งงานใหั)เครื่�องคอมพี�วัเตอรื่�ท1างานตามต)องการื่

2.ภาษาแอสเซมบลี� (Assembly Language) หัรื่�อภาษาส�ญลี�กษณ์� (Symbolic language) จะอย4-ในรื่4ปขีองส�ญลี�กษณ์� โดยการื่น1าต�วัอ�กษรื่ย-อหัรื่�อส�ญลี�กษณ์�ต-างๆมาใชิ)เขี�ยนแทนต�วัค1าส�ง ซ(งจะท1าใหั)สามารื่ถุจ1าแลีะเขี�ยนค1าส�งต-างๆได)ง-ายขี(0นกวั-าภาษาเครื่�อง

Page 7: บทที่  1  ภาษาคอมพิวเตอร์

ปร์ะเภทของภาษาท��จั"ดว3าเป8นภาษาร์ะด"บส0ง

พิ"ฒนาเม��อ

ภาษาคอมพิ วเตอร์�

ค$ณิล"กษณิะเด3น

1957 FORTRAN (FORmular

TRANslation)

เป#นภาษาท�ปรื่ะย"กต�ใชิ)ในงานค1านวัณ์ทางคณ์�ตศาสตรื่�หัรื่�อการื่ค1านวัณ์แบบส4ตรื่

1960 ALGOL (ALGOrithmicLanguage)

เป#นภาษาท�ม�ควัามย�ดหัย"-นกวั-าภาษาFORTRAN โดยเน)นการื่ค1านวัณ์ เพี�อแก)ป7ญหัาทางคณ์�ตศาสตรื่�แลีะเป#นต)นแบบขีองการื่พี�ฒนาภาษาต-าง ๆ หัลีายภาษา

Page 8: บทที่  1  ภาษาคอมพิวเตอร์

ปร์ะเภทของภาษาท��จั"ดว3าเป8นภาษาร์ะด"บส0ง

พิ"ฒนาเม��อ

ภาษาคอมพิ วเตอร์�

ค$ณิล"กษณิะเด3น

1964 BASICBeginner’s All-purpose Symbolic

Instruction Code

เป8นภาษาท��ง3ายีต3อการ์ใชื้�งานและถึ0กออกแบบมาส+าหร์"บผู้0�เร์ �มต�นเร์�ยีนร์0�การ์ใชื้�ภาษาคอมพิ วเตอร์�และยี"งสามาร์ถึน+าไปปร์ะยี$กต�ใชื้�งานได�ท"�งทางด�านธ$ร์ก จั บร์ หาร์ คณิ ตศาสตร์� การ์ค+านวณิทางสถึ ต และการ์เข�ยีนกร์าฟิ;ก เป8นต�น

1969 PASCAL

ต�0งชิ�อเป#นเก�ยรื่ต�แก-

เบลีส� ปาสคาลี (Blasé Pascal)

เป#นภาษาโครื่งสรื่)าง (Structured language) ท�ใหั)ผลีลี�พีธ์�ท�แน-นอนแลีะแม-นย1า ซ(งถุ4กเรื่�ยกวั-าเป#น ภาษาแห3งร์ะบบแบบแผู้น (Systematic language) หร์�อเป8นภาษาท��ม�ร์ะเบ�ยีบส0งมาก

Page 9: บทที่  1  ภาษาคอมพิวเตอร์

ปร์ะเภทของภาษาท��จั"ดว3าเป8นภาษาร์ะด"บส0ง

พิ"ฒนาเม��อ

ภาษาคอมพิ วเตอร์�

ค$ณิล"กษณิะเด3น

1972 C เป#นภาษาท�พี�ฒนามาจากภาษา B

แลีะเป#นภาษาท�ได)รื่วัมเอาขี)อด�ขีองภาษาต-าง ๆ เชิ-น ภาษา Pascal LISP แลีะ CPL

จนกลีายเป#นภาษาโครื่งสรื่)างท�ม�ปรื่ะส�ทธ์�ภาพีในด)านการื่น1าไปปรื่ะย"กต�ใชิ)ก�บงานได)หัลีากหัลีาย

1983 ADA

ต�0งชิ�อเป#นเก�ยรื่ต�แก-

เลีด�0เอดา ออก"สตา (Lady Ada

Augusta Lovelace)

เป#นภาษาท�ถุ4กพี�ฒนาขี(0นมาใชิ)ในกรื่ะทรื่วังกลีาโหัมขีองสหัรื่�ฐอเมรื่�กา ลี�กษณ์ะขีองภาษาจะคลี)ายก�บภาษา Pascal แต-ซ�บซ)อนกวั-า

Page 10: บทที่  1  ภาษาคอมพิวเตอร์

ปร์ะเภทของภาษาท��ท+างานภายีใต�ร์ะบบปฏ บ"ต Windows

เป#นภาษาในกลี"-มน�0เน)นการื่พี�ฒนารื่ะบบงานในรื่4ปแบบฐานขี)อม4ลี ในส-วันการื่ออกแบบรื่4ปแบบการื่แสดงผลี สามารื่ถุสรื่)างสรื่รื่ค�ในเชิ�งงานกรื่าฟ;กได)อย-างสวัยงาม สามารื่ถุใชิ)อ"ปกรื่ณ์�ปรื่ะเภทเมาส�ในการื่ป<อนขี)อม4ลีเขี)ารื่ะบบ แลีะเลี�อกค1าส�งงานส-วันต�ดต-อก�บผ4)ใชิ)ได)

Page 11: บทที่  1  ภาษาคอมพิวเตอร์

ต"วแปลภาษาคอมพิ วเตอร์�ต"วแปร์ภาษา (Translator

Program) เป#นส-วันท�ใชิ)ในการื่แปลีรื่หั�สค1าส�งขีองภาษาคอมพี�วัเตอรื่�ท�พี�ฒนาขี(0นมาเพี�อแปลีงใหั)เป#นเลีขีฐานสอง (ภาษาเครื่�อง)

Page 12: บทที่  1  ภาษาคอมพิวเตอร์

ต"วแปลภาษาคอมพิ วเตอร์�ล"กษณิะการ์ท+างานของต"วแปร์ภาษาการื่เขี�ยนโปรื่แกรื่มด)วัยภาษาท�ใชิ)ภาษาเครื่�อง จะ

ถุ4กเรื่�ยกวั-า โปร์แกร์มต�นฉบ"บ (Source Program) เม�อบ�นท(กโปรื่แกรื่มลีงส�อบ�นท(กขี)อม4ลี เครื่�องจะก1าหันดชิน�ดขีองโปรื่แกรื่ม (Type) ตามขี)อก1าหันดขีองแต-ลีะภาษาท�สรื่)างโดยอ�ตโนม�ต� เชิ-น ภาษาซ�จะม�ชิน�ดเป#น C หัรื่�อภาษา C++ ท�จะม�ชิน�ดเป#น CPP ม�หัน)าท�แปลีชิ"ดค1าส�งท�ใชิ)ในรื่4ปแบบค1าส�งท�ภาษาน�0น ๆ ก1าหันดไวั) ใหั)เป#นโปร์แกร์มภาษาเคร์��อง (Object Program) ซ(งเป#นภาษาเด�ยวัท�เครื่�องคอมพี�วัเตอรื่�สามารื่ถุปฏิ�บ�ต�ตามค1าส�งได) หัลี�งจากแปลีโปรื่แกรื่มต)นฉบ�บแลี)วั เครื่�องคอมพี�วัเตอรื่�ก>จะท1าการื่สรื่)างโปรื่แกรื่มเพี�มขี(0นอ�ก 1 โปรื่แกรื่ม ใหั)ม�ชิน�ดขีองโปรื่แกรื่มเป#นชิน�ด .EXE หัรื่�อ .OBJ เพี�อใชิ)ท1างานในลี�กษณ์ะขีองภาษาต-อไป

Page 13: บทที่  1  ภาษาคอมพิวเตอร์

ในการื่พี�ฒนาซอฟต�แวัรื่�คอมพี�วัเตอรื่�น�0น โปรื่แกรื่มเมอรื่�จะเขี�ยนโปรื่แกรื่มในภาษาคอมพี�วัเตอรื่�แบบต-าง ๆ ตามแต-ควัามชิ1านาญขีองแต-ลีะคน โปรื่แกรื่มท�ได)จะเรื่�ยกวั-า โปรื่แกรื่มต)นฉบ�บหัรื่�อซอรื่�สโปรื่แกรื่ม (source program) ซ(งมน"ษย�จะอ-านโปรื่แกรื่มต)นฉบ�บน�0ได)แต-คอมพี�วัเตอรื่�จะไม-เขี)าใจค1าส�งเหัลี-าน�0น จ(งต)องม�การื่ใชิ)โปรื่แกรื่ม ต�วัแปลีภาษาคอมพี�วัเตอรื่� (Translator) ในการื่แปลีภาษาคอมพี�วัเตอรื่�ภาษาต-าง ๆ ไปเป#นภาษาเครื่�องโปรื่แกรื่มท�แปลีจากโปรื่แกรื่มต)นฉบ�บแลี)วัเรื่�ยกวั-า ออบเจคโปรื่แกรื่ม (object program) ซ(งจะปรื่ะกอบด)วัยรื่หั�สค1าส�งท�คอมพี�วัเตอรื่�สามารื่ถุเขี)าใจแลีะน1าไปปฏิ�บ�ต�ได)ต-อไป

Page 14: บทที่  1  ภาษาคอมพิวเตอร์

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

Assembler

Compiler

Interpreter

ต"วแปร์ภาษา

Page 15: บทที่  1  ภาษาคอมพิวเตอร์

โปร์แกร์มแปลภาษาแบบแอสเซมบล�

แอสเซมบลี� (assembler) เป#นต�วัแปลีภาษาท�ออกแบบมาเพี�อใชิ)แปลีค1าส�งเฉพีาะภาษาแอสเซมบลี�เท-าน�0น ซ(งจะท1าหัน)าท�แปลีรื่หั�สค1าส�งเป#นภาษาเครื่�อง

Page 16: บทที่  1  ภาษาคอมพิวเตอร์

โปร์แกร์มแปลภาษาแบบคอมไพิเลอร์�

คอมไพีเลีอรื่� (Compiler) ท1าหัน)าท�แปลีโปรื่แกรื่มต)นฉบ�บท�เขี�ยนด)วัยภาษารื่ะด�บส4ง เชิ-น ภาษาปาสคาลี ภาษาโคบอลี แลีะภาษาฟอรื่�แทรื่นใหั)เป#นภาษาเครื่�อง

หัลี�กการื่ท1างานจะแปลีโปรื่แกรื่มต)นฉบ�บ ท�0งโปรื่แกรื่มใหั)เป#นรื่หั�สออบเจ>กต� (Object Code) ในรื่ะหัวั-างการื่แปลีขี)อม4ลีรื่หั�ส หัากพีบขี)อผ�ดพีลีาด จะแสดงขี)อควัามแจ)งขี)อผ�ดพีลีาดท�จอภาพี แลีะหัย"ดการื่แปลี เม�อผ4)เขี�ยนโปรื่แกรื่มแก)ไขีขี)อผ�ดพีลีาดเรื่�ยบรื่)อยแลี)วัใหั)ท1าการื่แปลีใหัม- ถุ)าไม-ม�ขี)อผ�ดพีลีาดจะได)โปรื่แกรื่มใหัม-ท�เรื่�ยกวั-า โปร์แกร์มออบเจั>กต�

หัลี�งจากน�0นน1าโปรื่แกรื่มออบเจ>กต�ท�ได)ไปลี�งค�เขี)าก�บรื่ะบบหัรื่�อไลีบรื่าลี� ได)ผลีลี�พีธ์�มาเป#นภาษาเครื่�อง แลี)วัจ(งน1าภาษาเครื่�องไปส�งใหั)เครื่�องท1างานตามค1าส�ง

Page 17: บทที่  1  ภาษาคอมพิวเตอร์

โปร์แกร์มแปลภาษาแบบคอมไพิเลอร์� (Compiler)

ขี)อด�สามารื่ถุท1าการื่แปลีค1าส�งได)อย-างรื่วัดเรื่>วั

ขี)อเส�ยต)องเขี�ยนโปรื่แกรื่มใหั)ครื่บท"กส-วันขีองโคง

สรื่)างภาษาคอมพี�วัเตอรื่�ท�เลี�อกใชิ)งานก-อน

Page 18: บทที่  1  ภาษาคอมพิวเตอร์

โปร์แกร์มแปลภาษาแบบอ นเตอร์�พิร์�เตอร์�

อ�นเตอรื่�พีรื่�เตอรื่� (interpreter) เป#นโปรื่แกรื่มแปลีภาษาท�ท1าหัน)าท�แปลีโปรื่แกรื่มภาษารื่ะด�บส4งใหั)เป#นภาษาเครื่�อง เชิ-นเด�ยวัก�บคอมไพีเลีอรื่� แต-จะแปลีโปรื่แกรื่มพีรื่)อมก�บท1างานตามค1าส�งท�ลีะค1าส�งตลีอดไปท�0งโปรื่แกรื่ม ท1าใหั)การื่แก)ไขีโปรื่แกรื่มกรื่ะท1าได)ง-าย แลีะรื่วัดเรื่>วั การื่แปลีโดยใชิ)อ�นเตอรื่�พีรื่�เตอรื่�จะไม-สรื่)างโปรื่แกรื่มเรื่�ยกใชิ)งาน ด�งน�0นจะต)องท1าการื่ปรื่ะมวัลีผลีค1าส�งใหัม-ท"กครื่�0งท�ม�การื่เรื่�ยกใชิ)งาน ต�วัอย-างภาษาท�ใชิ)ต�วัแปลีอ�นเตอรื่�พีรื่�เตอรื่� เชิ-น ภาษาเบส�ก (BASIC)

Page 19: บทที่  1  ภาษาคอมพิวเตอร์

โปร์แกร์มแปลภาษาแบบอ นเตอร์�พิร์�เตอร์�

ข�อด� ค�อสามารื่ถุส�งแสดงผลีการื่ท1างานได)ท�นท� โดยไม-ต)องเขี�ยนชิ"ดค1าส�งใหั)จบท�0งโปรื่แกรื่ม ส-วันใหัญ-น�ยมใชิ)ก�บภาษาคอมพี�วัเตอรื่�ท�ม�รื่4ปแบบการื่เขี�ยนโปรื่แกรื่มแบบไม-ม�โครื่งสรื่)าง

ข�อเส�ยี ค�อจากการื่ท�ไม-ม�โปรื่แกรื่มท�แปลีรื่หั�สแลี)วัเก>บไวั) หัากเขี�ยนโปรื่แกรื่มยาวัมาก ๆ ก>จะท1าใหั)การื่ปรื่ะมวัลีผลีท1าได)ชิ)า หัากโปรื่แกรื่มเพีรื่าะต)องเรื่�มอ-านค1าส�งจากจ"ดเรื่�มขีองโปรื่แกรื่มท"กครื่�0งท�ม�การื่ปรื่ะมวัลีผลี

Page 20: บทที่  1  ภาษาคอมพิวเตอร์

แนวทางการ์เล�อกใชื้�ภาษาคอมพิ วเตอร์�การื่พี�ฒนารื่ะบบงานเด�ม เป#นการื่ท1างานด)วัยรื่ะบบ

คอมพี�วัเตอรื่� ต)องม�การื่พี�ฒนางานโปรื่แกรื่มขี(0นมาด)วัยการื่ใชิ)ภาษาคอมพี�วัเตอรื่� ป7จจ"บ�นม�มากมายหัลีายภาษา แนวัทางการื่เลี�อกใชิ)งานขีองแต-ลีะภาษาท�น�ยมใชิ)งาน ม�ด�งน�0

1. ภาษาแอสเซมบลี�2. ภาษาฟอรื่�แทรื่น3. ภาษาเบส�ก4. ภาษาโคบอลี5. ภาษาปาสคาลี6. ภาษาซ�7. ภาษาโปรื่แกรื่มเชิ�งวั�ตถุ"

Page 21: บทที่  1  ภาษาคอมพิวเตอร์

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

ภาษาแอสเซมบลี�ม�ลี�กษณ์ะขีองภาษาในรื่4ปขีองการื่ใชิ)รื่หั�สชิ-วัยจ1า (mnemonic code) แทนต�วัเลีขีฐานสองขีองภาษาเครื่�องจ�กรื่ ท1าใหั)เขี)าใจง-ายขี(0นกวั-าภาษาเครื่�อง หัรื่�อเรื่�ยกอ�กอย-างหัน(งวั-าเป#นภาษาส�ญลี�กษณ์� ซ(งม�โครื่งสรื่)างขีองภาษาใกลี)เค�ยงก�บภาษาเครื่�องจ�กรื่มาก ภาษาแอสเซมบลี�จะปรื่ะกอบด)วัย 2 ส-วัน ค�อ op-code หัรื่�อรื่หั�สต�วัด1าเน�นการื่ เชิ-น A แทนการื่บวัก (Add) แลีะ Openand หัรื่�อต�วัท�ถุ4กด1าเน�นการื่ ซ(งจะใชิ)ต�วัอ�กษรื่ภาษาอ�งกฤษแทนต1าแหัน-งท�อย4-ในหัน-วัยควัามจ1าท�เก>บขี)อม4ลีไวั) ต�วัอย-างเชิ-น

Page 22: บทที่  1  ภาษาคอมพิวเตอร์

ค+าส"�งของภาษาส"ญล"กษณิ�A X Y

ความหมายีของค+าส"�ง ค�อ ใหั)บวักค-าขี)อม4ลีท�อย4-ในหัน-วัยควัามจ1าต1าแหัน-งท� X ก�บค-าขี)อม4ลีท�อย4-ในหัน-วัยควัามจ1าต1าแหัน-งท� Y เขี)าด)วัยก�นA หัมายถุ(ง ใหั)บวักค-าขี)อม4ลีX หัมายถุ(ง ต1าแหัน-งในหัน-วัยควัามจ1าขีองค-าขี)อม4ลีต�วัต�0งY หัมายถุ(ง ต1าแหัน-งในหัน-วัยควัามจ1าขีองค-าขี)อม4ลีต�วัต�0งบวัก

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

Page 23: บทที่  1  ภาษาคอมพิวเตอร์

ข�อด�ของภาษาแอสเซมบล� เป#นภาษาท�เหัมาะส1าหัรื่�บการื่น1าไปใชิ)ในการื่เรื่�ยน

การื่สอน เพี�อศ(กษาการื่ท1างานขีองอ"ปกรื่ณ์�อ�เลี>คทรื่อน�กส�ในรื่ะบบการื่ท1างานขีองคอมพี�วัเตอรื่� แลีะฝึAกท�กษะการื่เขี�ยนชิ"ดค1าส�งควับค"มการื่ท1างานขีองอ"ปกรื่ณ์�คอมพี�วัเตอรื่�

 ข�อจั+าก"ดของภาษาแอสเซมบล�1. เป#นภาษาท�ผ4)เขี�ยนต)องจ1าส�ญลี�กษณ์�ท�ใชิ)แทนค1า

ส�งต-าง ๆ รื่วัมท�0งต)องม�พี�0นฐานควัามรื่4 )ด)านอ�เลี>กทรื่อน�กส� ป7จจ"บ�นผ4)ใชิ)ภาษาแอสเซมบลี� จ(งเป#นกลี"-มผ4)ใชิ)งานเฉพีาะด)านแลีะม�จ1านวันไม-มาก

2. เม�อเปลี�ยนไปใชิ)เครื่�องคอมพี�วัเตอรื่�เครื่�องอ�นก>จะต)องเปลี�ยนชิ"ดค1าส�งตามชิน�ดขีองเครื่�องคอมพี�วัเตอรื่�ท�ใชิ)งานน�0นด)วัย

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

Page 24: บทที่  1  ภาษาคอมพิวเตอร์

เป#นภาษารื่ะด�บส4งท�ใชิ)เขี�ยนค1าส�งงานเพี�อควับค"มการื่ท1างานขีองเครื่�องคอมพี�วัเตอรื่�ขีนาดใหัญ- เชิ-น เครื่�องเมนเฟรื่ม (Mainframe Computer) เป#นภาษาท�ใชิ)แก)ป7ญหัาด)านวั�ทยาศาสตรื่�แลีะคณ์�ตศาสตรื่� ภาษา FORTRAN จ(งเหัมาะส1าหัรื่�บเขี�ยนโปรื่แกรื่มเก�ยวัก�บส4ตรื่ สมาการื่ หัรื่�อฟ7งก�ชิ�นทางวั�ทยาศาสตรื่�แลีะคณ์�ตศาสตรื่� ต�วัอย-างขีองภาษา FORTRAN บางส-วันม�ด�งน�0

ภาษาฟิอร์�แทร์น (FORTRAN)

Page 25: บทที่  1  ภาษาคอมพิวเตอร์

READ XIF((X.GT.0) .AND. (X.LT.100)) THEN PRINT *, ‘VALUE OF X IS :’,XELSE PRINT * , ‘X IS NOT BETWEEN 0 AND

100’ความหมายีของค+าส"�งงาน READ X หัมายถุ(ง การื่อ-านค-าลีงในต�วัแปรื่ชิ�อ XIF((X.GT.0) .AND. (X.LT.100)) THEN หัมายถุ(ง การื่ตรื่วัจ

สอบค-า X ท�อ-านค-าเขี)ามาวั-าอย4-รื่ะหัวั-า 0-100 หัรื่�อไม- ถุ)าใชิ-ใหั)ท1าค1าส�งหัลี�ง THEN ถุ)าไม-ใชิ-ใหั)ท1าค1าส�งหัลี�ง ELSEPRINT *, ‘VALUE OF X IS :’,X หัมายถุ(ง ใหั)พี�มพี�ท�0งปรื่ะโยค

ด)วัยขี)อควัามท�ก1าหันดแลี)วัตามด)วัยค-าขีองต�วัแปรื่ X ท�อ-านเขี)ามาPRINT * , ‘X IS NOT BETWEEN 0 AND 100’ หัมาย

ถุ(ง พี�มพี�ท�0งปรื่ะโยคโดยแสดงค-าขีอง X ก-อนปรื่ะโยคขี)อควัาม

ภาษาฟิอร์�แทร์น (FORTRAN)

Page 26: บทที่  1  ภาษาคอมพิวเตอร์

ข�อด�ของภาษาฟิอร์�แทร์น เป#นภาษาท�ม�ค1าส�งงานเน)นปรื่ะส�ทธ์�ภาพีด)านการื่

ค1านวัณ์ วั�ทยาศาสตรื่�แลีะคณ์�ตศาสตรื่� รื่วัมท�0งค1าส�งควับค"มการื่ท1างานขีองอ"ปกรื่ณ์�เครื่�องเมนเฟรื่ม

ข�อจั+าก"ดของภาษาฟิอร์�แทร์น เน�องจากค1าส�งงานเหัมาะส1าหัรื่�บการื่ควับค"มการื่

ท1างานขีองเครื่�องคอมพี�วัเตอรื่�ขีนาดใหัญ- เม�อน1ามาปรื่ะย"กต�ใชิ)ก�บเครื่�องคอมพี�วัเตอรื่�ขีนาดเลี>ก จะต)องปรื่�บใชิ)ค1าส�งมากมาย รื่วัมท�0งเม�อม�การื่เปลี�ยนเครื่�องปรื่ะมวัลีผลีก>ต)องเปลี�ยนรื่4ปแบบค1าส�งท"กครื่�0ง

ภาษาฟิอร์�แทร์น (FORTRAN)

Page 27: บทที่  1  ภาษาคอมพิวเตอร์

เป#นภาษารื่ะด�บส4งท�พี�ฒนาขี(0นมา โดยม"-งเน)นการื่ควับค"มเครื่�องไมโครื่คอมพี�วัเตอรื่� ท�ใชิ)ในการื่เรื่�ยนการื่สอน เพี�อฝึAกท�กษะการื่เขี�ยนโปรื่แกรื่มควับค"มการื่ท1างานขีองเครื่�องคอมพี�วัเตอรื่� รื่4ปแบบค1าส�งงานปรื่ะย"กต�มาจากขี)อควัามภาษาอ�งกฤษท�ใชิ)ส�อสารื่ก�นในชิ�วั�ตปรื่ะจ1าวั�นท�ใชิ)งานก�นอย4-แลี)วั ท1าใหั)การื่เขี�ยนค1าส�งงานง-ายขี(0น ต�วัอย-างเชิ-น

ภาษาเบส ก (BASIC)

Page 28: บทที่  1  ภาษาคอมพิวเตอร์

INPUT XIF X > 0 AND X < 100 THEN PRINT “VALUE OF X IS :” ; XELSE PRINT “X IS NOT BETWEEN 0 AND 100”END IFความหมายีของค+าส"�งงานINPUT X หัมายถุ(ง การื่อ-านค-าลีงในต�วัแปรื่ชิ�อ XIF X > O AND X < 100 THEN หัมายถุ(ง การื่ตรื่วัจสอบค-า X ท�อ-านค-าเขี)ามาวั-าอย4-รื่ะหัวั-า 0-100 หัรื่�อไม- ถุ)าใชิ-ใหั)ท1าค1าส�งหัลี�ง THEN ถุ)าไม-ใชิ-ใหั)ท1าค1าส�งหัลี�ง ELSEPRINT “VALUE OF X IS : “; X หัมายถุ(ง การื่ตรื่วัจสอบค-า X ท�อ-านค-าเขี)ามาวั-าอย4-รื่ะหัวั-า 0-100 หัรื่�อไม- ถุ)าใชิ-ใหั)ท1าค1าส�งหัลี�ง THEN ถุ)าไม-ใชิ-ใหั)ท1าค1าส�งหัลี�ง ELSEPRINT “X IS NOT BETWEEN 0 AND 100” หัมายถุ(ง พี�มพี�ท�0งปรื่ะโยคโดยแสดงค-าขีอง X ก-อนปรื่ะโยคขี)อควัาม

Page 29: บทที่  1  ภาษาคอมพิวเตอร์

ข�อด�ของภาษาเบส ก ค�อชิ"ดค1าส�งงานม�รื่4ปแบบการื่ใชิ)งานง-ายแลีะ

ส�0น ท1าใหั)ผ4)ใชิ)งานสะดวักในการื่น1าไปใชิ)งานในด)านการื่พี�ฒนารื่ะบบงาน แลีะงานอ�น ๆ ท�วัไป ท�0งด)านงานค1านวัณ์ในรื่ะบบงานทางธ์"รื่ก�จ แลีะงานด)านวั�ทยาศาสตรื่� อ�กท�0งย�งเหัมาะส1าหัรื่�บผ4)เรื่�มฝึAกท�กษะการื่เขี�ยนโปรื่แกรื่มอ�กด)วัย

ข�อจั+าก"ดของภาษาเบส ก ค�อเป#นภาษาท�ม�รื่4ปแบบขีองภาษาแบบ “ไม-ม�

โครื่งสรื่)าง” ซ(งไม-เหัมาะก�บรื่ะบบงานขีนาดใหัญ- ๆ

ภาษาเบส ก (BASIC)

Page 30: บทที่  1  ภาษาคอมพิวเตอร์

เป#นภาษาคอมพี�วัเตอรื่�รื่ะด�บส4งในย"คแรื่ก ท�ม�การื่ออกแบบการื่เขี�ยนโปรื่แกรื่มแบบโครื่งสรื่)าง (Structured Program) เน)นการื่เขี�ยนค1าส�งควับค"มการื่ท1างานขีองคอมพี�วัเตอรื่�ขีนาดใหัญ- เชิ-น “คอมพี�วัเตอรื่�รื่" -นเมนเฟรื่มแลีะม�น�” เหัมาะส1าหัรื่�บงานทางด)านธ์"รื่ก�จแลีะพีาณ์�ชิยกรื่รื่มท�ม�การื่ปรื่ะมวัลีผลีขี)อม4ลีจ1านวันมาก ต�วัอย-างลี�กษณ์ะการื่เขี�ยนค1าส�ง ม�ด�งน�0

ภาษาโคบอล (COBOL)

Page 31: บทที่  1  ภาษาคอมพิวเตอร์

IDENTIFICATION DIVISION.PROGRAM-ID. SIMPLE_PROGRAM.ENVIRONMENT DIVISION.CONFIGURATION SECTION.INPUT-OUTPUT SECTION.FILE-CONTROL. SELECT data ASSIGN TO DISK.DATA DIVISION.FILE SECTION.PROCEDURE DIVISION.…

ภาษาโคบอล (COBOL)

Page 32: บทที่  1  ภาษาคอมพิวเตอร์

ความหมายีของค+าส"�งงานภาษาโคบอลีเป#นภาษาท�ม�โครื่งสรื่)างทางภาษาท�

ชิ�ดเจนโดยม�การื่แบ-งส-วันขีองโปรื่แกรื่มเป#น 4 ส-วัน หัรื่�อ 4 Divisions ซ(งในแต-ลีะ Division ก>สามารื่ถุแบ-งเป#น section ได)อ�กตามควัามจ1าเป#นท�ต)องใชิ)งานในโปรื่แกรื่ม

ส1าหัรื่�บการื่ใชิ)ภาษาโคบอลีเขี�ยนโปรื่แกรื่มน�0นผ4)เขี�ยนโปรื่แกรื่ม (Programmer) จะต)องเขี�ยนโปรื่แกรื่มยาวัมาก ท1าใหั)เม�อเก�ดขี)อผ�ดพีลีาดขี(0นขีณ์ะท1าการื่แปรื่ชิ"ดค1าส�ง ม�กจะหัาต1าแหัน-งท�ผ�ดพีลีาดขีองค1าส�งได)ยาก

ภาษาโคบอล (COBOL)

Page 33: บทที่  1  ภาษาคอมพิวเตอร์

ข�อด�ของภาษาโคบอล ค�อ เป#นภาษาคอมพี�วัเตอรื่�ท�เหัมาะส1าหัรื่�บการื่น1าไป

พี�ฒนารื่ะบบงานทางด)านธ์"รื่ก�จท�ใชิ)ก�บเครื่�องคอมพี�วัเตอรื่�ขีนาดใหัญ- ท�ไม-ใชิ-ไมโครื่คอมพี�วัเตอรื่� โดยเฉพีาะรื่ะบบงานท�ต)องม�การื่พี�มพี�รื่ายงานเป#นปรื่ะจ1า หัรื่�อใชิ)ก�บรื่ะบบงานท�ม�การื่เชิ�อมการื่ท1างานไปย�งเครื่�องคอมพี�วัเตอรื่�หัลีายเครื่�อง

ข�อจั+าก"ดของภาษาโคบอล ค�อ ไม-เหัมาะส1าหัรื่�บการื่น1าไปพี�ฒนารื่ะบบงานก�บ

เครื่�องคอมพี�วัเตอรื่�ขีนาดเลี>ก ชิ"ดค1าส�งต)องเขี�ยนยาวัมาก แลีะแก)ไขียาก ใชิ)เวัลีาในการื่พี�ฒนาโปรื่แกรื่มนาน อ�กท�0งย�งท1าใหั)การื่แก)ไขีขี)อผ�ดพีลีาดขีองโปรื่แกรื่มท1าได)ยากอ�กด)วัย

ภาษาโคบอล (COBOL)

Page 34: บทที่  1  ภาษาคอมพิวเตอร์

เป#นภาษารื่ะด�บส4งท�ได)รื่�บการื่พี�ฒนาเพี�อใหั)สามารื่ถุน1ามาใชิ)ก�บเครื่�องคอมพี�วัเตอรื่�ขีนาดเลี>กได) แลีะเป#นภาษาท�ม�ลี�กษณ์ะโปรื่แกรื่มแบบโครื่งสรื่)าง น�ยมน1าไปใชิ)ในการื่พี�ฒนารื่ะบบงานท�วัไปอย-างกวั)างขีวัาง รื่วัมท�0งงานทางด)านการื่เขี�ยนโปรื่แกรื่มเก�ยวัก�บ ส4ตรื่ สมการื่ แลีะฟ7งก�ชิ�นทางด)านวั�ทยาศาสตรื่�แลีะคณ์�ตศาสตรื่� เพีรื่าะการื่เขี�ยนค1าส�งงานง-าย ใชิ)เวัลีาน)อยในการื่ศ(กษาวั�ธ์�การื่เขี�ยนค1าส�งงาน ต�วัอย-างขีองค1าส�งงานในภาษาปาสคาลีม�ด�งน�0

ภาษาปาสคาล (PASCAL)

Page 35: บทที่  1  ภาษาคอมพิวเตอร์

PROGRAM sample;USES CRT;VAR a , b , c : INTEGER;BEGIN readLn ( a ); readLn ( b ); C := a + b; writeln (c);END.ความหมายีของค+าส"�งงาน จากต�วัอย-างโปรื่แกรื่มแสดงใหั)เหั>นถุ(งโครื่งสรื่)างขีองภาษาปาสคาลีท�ม�การื่ก1าหันดจ"ดเรื่�มต)นแลีะจ"ดส�0นส"ดท"กครื่�0ง ท1าใหั)ภาษาปาสคาลีถุ4กเรื่�ยกวั-าเป#น ภาษาแบบโคร์งสร์�างท��ม�ความเป8นร์ะเบ�ยีบอยี3างมาก โปรื่แกรื่มต�วัอย-างน�0เป#นการื่อ-านขี)อม4ลี ผ-านทางค�ย�บอรื่�ด เพี�อน1าขี)อม4ลีเขี)ามาท1าการื่ปรื่ะมวัลีผลี แลี)วัจ(งแสดงผลีลี�พีธ์�ออกทางจอภาพี

Page 36: บทที่  1  ภาษาคอมพิวเตอร์

ข�อด�ของภาษาปาสคาล ค�อเป#นภาษาท�ม�ลี�กษณ์ะเป#นโครื่งสรื่)าง ท1าใหั)ง-ายต-อ

การื่ศ(กษาวั�ธ์�การื่ใชิ)งาน เหัมาะส1าหัรื่�บงานท�วัไป ท�0งงานทางด)านธ์"รื่ก�จ แลีะงานด)านการื่ค1านวัณ์ทางวั�ทยาศาสตรื่� คณ์�ตศาสตรื่�แลีะวั�ศวักรื่รื่ม จ(งน�ยมน1าไปใชิ)ในการื่เรื่�ยนการื่สอนส1าหัรื่�บผ4)เรื่�มต)นเขี�ยนโปรื่แกรื่ม

ข�อจั+าก"ดของภาษาปาสคาล เน�องจากเป#นภาษาท�ถุ4กออกแบบมาส1าหัรื่�บใชิ)ในการื่

เรื่�ยนการื่สอนท1าใหั)ภาษาปาสคาลีขีาดค"ณ์สมบ�ต�หัลีาย ๆ อย-างในการื่น1าไปใชิ)งานจรื่�ง

ภาษาปาสคาล (PASCAL)

Page 37: บทที่  1  ภาษาคอมพิวเตอร์

เป#นภาษารื่ะด�บส4ง ท�ม�ลี�กษณ์ะโปรื่แกรื่มแบบโครื่งสรื่)างอ�กภาษาหัน(งท�ได)รื่�บควัามน�ยมน1าไปใชิ)ในงานพี�ฒนารื่ะบบงาน เน�องจากม�ค1าส�งในการื่เขี)าถุ(งการื่ท1างานขีองอ"ปกรื่ณ์�อ�เลี>กทรื่อน�กส�ในรื่ะบบการื่ท1างานขีองคอมพี�วัเตอรื่�โดยตรื่ง ต�วัอย-างค1าส�งงานขีองภาษาซ�ม�ด�งน�0

ภาษาซ� (C)

Page 38: บทที่  1  ภาษาคอมพิวเตอร์

# include <stdio.h>void main() {

printf(“Hello world”);getch();

}ความหมายีของค+าส"�งงาน หัมายถุ(งการื่ส�งใหั)พี�มพี�ค1าวั-า “Hello world” ออกทางจอภาพี จากน�0นใหั)รื่อรื่�บการื่ป<อนค-าใด ๆ 1 ค-า จากค�ย�บอรื่�ดจ(งจะจบการื่ท1างานขีองโปรื่แกรื่ม

ภาษาซ� (C)

Page 39: บทที่  1  ภาษาคอมพิวเตอร์

ข�อด�ของภาษาซ� ค�อ เป#นภาษารื่ะด�บส4งท�เหัมาะส1าหัรื่�บการื่พี�ฒนา

รื่ะบบงานเชิ�งค1านวัณ์ท�วัไป นอกจากน�0ภาษาซ�ย�งเป#นภาษาท�สามารื่ถุเขี)าถุ(งอ"ปกรื่ณ์�ขีองรื่ะบบคอมพี�วัเตอรื่�ได)โดยตรื่ง แลีะม�ค1าส�งท�สามารื่ถุเชิ�อมโยงการื่ใชิ)งานก�บโปรื่แกรื่มภาษาแอสเซมบลี�ได) ท1าใหั)ภาษาซ�เป#นภาษาท�ม�ปรื่ะส�ทธ์�ภาพีการื่ในการื่ปรื่ะมวัลีผลีงานได)อย-างรื่วัดเรื่>วั ท1าใหั)ภาษาซ�เหัมาะส1าหัรื่�บงานผลี�ตซอฟต�แวัรื่�ส1าเรื่>จรื่4ป

ข�อจั+าก"ดของภาษาซ� ค�อ ม�บางค1าส�งท�คลี)ายภาษาส�ญลี�กษณ์� จ(งยากต-อ

การื่จ1า รื่วัมท�0งม�รื่4ปแบบค1าส�งกฎเกณ์ฑ์�การื่ใชิ)งานมาก จ(งอาจจะไม-เหัมาะส1าหัรื่�บผ4)เรื่�มต)นเขี�ยนโปรื่แกรื่ม

ภาษาซ� (C)

Page 40: บทที่  1  ภาษาคอมพิวเตอร์

ค�อภาษาท�ม�กลีไกสน�บสน"นการื่สรื่)างวั�ตถุ" หัรื่�อเรื่�ยกอ�กอย-างหัน(งวั-ารื่ะบบ เพี�อใชิ)ในการื่สรื่)างโปรื่แกรื่มเชิ�งวั�ตถุ" (Object-Oriented Programming) ท�ปรื่ะกอบขี(0นจากรื่ะบบท�ท1างานเก�ยวัขี)องก�นจ1านวันมาก ภาษา Smalltalk ท�พี�ฒนาโดยกลี"-มน�กค)นควั)าขีองบรื่�ษ�ท Xerox น�บวั-าเป#นภาษาท�เน)นการื่เขี�ยนโปรื่แกรื่มเชิ�งวั�ตถุ"อย-างแท)จรื่�งเป#นภาษาแรื่ก นอกจากน�0 ภาษาซ�ก>ได)ถุ4กพี�ฒนาใหั)เป#นโปรื่แกรื่มเชิ�งวั�ตถุ"ด)วัยเชิ-นก�น โดยใชิ)ชิ�อวั-า ภาษา C++ ซ(งพี�ฒนาขี(0นโดย Bjarne Stroutrup จากบรื่�ษ�ท AT&T นอกจากน�0 ภาษา FORTRAN90, Ada95, Modula-3 แลีะ Prolog II ก>ถุ4กพี�ฒนาใหั)สน�บสน"นโปรื่แกรื่มเชิ�งวั�ตถุ"ด)วัยเชิ-นก�น แต-ภาษา Eiffel แลีะภาษา Smalltalk ก>เป#นอ�กภาษาหัน(งท�ถุ4กออกแบบมาโดยเน)นการื่ค�ดแบบเชิ�งวั�ตถุ"เป#นหัลี�ก ซ(งท1าใหั)ผ4)ใชิ)ต)องค�ดแลีะเขี�ยนโปรื่แกรื่มเป#นเชิ�งวั�ตถุ"ท�0งหัมดอย-างหัลี�กเลี�ยงไม-ได)

ภาษาโปร์แกร์มเชื้ งว"ตถึ$ (Object-Oriented Language)

Page 41: บทที่  1  ภาษาคอมพิวเตอร์

ข�อด�ของภาษาโปร์แกร์มเชื้ งว"ตถึ$ ค�อสามารื่ถุพี�ฒนารื่ะบบงานขีนาดใหัญ- ท�ม�ลี�กษณ์ะการื่เขี�ยน

โปรื่แกรื่มแบบแบ-งเป#นส-วันย-อย หัรื่�อเรื่�ยกวั-า “โมด4ลี” ภาษาในกลี"-มน�0ม�การื่ออกแบบค1าส�งงานในรื่4ปแบบขีองเครื่�องม�ออ1านวัยควัามสะดวัก ท�เรื่�ยกวั-า “ท4ลี” เพี�อใหั)ผ4)เขี�ยนโปรื่แกรื่มสามารื่ถุคลี�กเมาส�เพี�อเลี�อกค1าส�งงานได)อย-างสะดวัก แลีะรื่วัดเรื่>วั โดยไม-ต)องจดจ1าค1าส�งท"กค1าส�งแลีะม�ค1าส�งงานท�เอ�0อต-อการื่แสดงผลีในลี�กษณ์ะกรื่าฟ;กได)อย-างสวัยงาม แลีะม�ปรื่ะส�ทธ์�ภาพี

ข�อจั+าก"ดของภาษาโปร์แกร์มเชื้ งว"ตถึ$ ค�อ ค1าส�งงานจะม�ลี�กษณ์ะเชิ�งกรื่าฟ;ก ส-งผลีใหั)รื่4ปแบบการื่

เขี�ยนค1าส�งม�ขี)อควัามการื่ส�งงานท�ม�ควัามยาวัมาก รื่ายลีะเอ�ยดรื่4ปแบบการื่น1าค1าส�งงานไปใชิ)งานม�มาก แลีะหัลีายลี�กษณ์ะรื่วัมท�0งการื่วั�เครื่าะหั�รื่ะบบงานพี�ฒนาโปรื่แกรื่มเปลี�ยนไปเป#นการื่มองเชิ�งวั�ตถุ" ด�งน�0นการื่ใชิ)งานโปรื่แกรื่มกลี"-มน�0ใหั)ม�ปรื่ะส�ทธ์�ภาพี ผ4)ใชิ)งานควัรื่ม�พี�0นฐานควัามรื่4 )ในท�กษะการื่เขี�ยนโปรื่แกรื่มด)วัยภาษารื่ะด�บส4งมาก-อน

ภาษาโปร์แกร์มเชื้ งว"ตถึ$ (Object-Oriented Language)

Page 42: บทที่  1  ภาษาคอมพิวเตอร์

www.themegallery.com

Page 43: บทที่  1  ภาษาคอมพิวเตอร์

แบบฝึAกห"ด1. ใหั)น�กศ(กษาน�ยามควัามหัมายขีองค1าวั-า ภาษา“

คอมพี�วัเตอรื่� ตามควัามค�ดขีองน�กศ(กษา”2. การื่พี�จารื่ณ์าค�ดเลี�อกใชิ)ภาษาคอมพี�วัเตอรื่�ในการื่

พี�ฒนารื่ะบบงานน�0น ผ4)ด1าเน�นการื่พี�ฒนาโปรื่แกรื่มต)องวั�เครื่าะหั�ค�ดเลี�อกโดยใชิ)องค�ปรื่ะกอบใดบ)าง

3. ในการื่พี�ฒนาภาษาคอมพี�วัเตอรื่�ขี(0นมาใชิ)งานน�0น เหั>นได)วั-าม�การื่พี�ฒนาต�วัแปลีภาษาขี(0นมาใชิ)งานด)วัย ใหั)น�กศ(กษาอธ์�บายถุ(งควัามส1าค�ญขีองต�วัแปลีภาษาท�ม�ต-อภาษาคอมพี�วัเตอรื่�

4. อธ์�บายลี�กษณ์ะการื่ท1างานขีองต�วัแปลีภาษาปรื่ะเภทคอมไพีเลีอรื่�

5. อธ์�บายลี�กษณ์ะการื่ท1างานขีองต�วัแปลีภาษาปรื่ะเภทอ�นเตอรื่�พีรื่�เทอรื่�