computer

24
ภภภภ ภภภภ ภภภภภภภภ ภภภภภภภภ ภภภ ภภภ

Upload: ruttana1999

Post on 12-Nov-2014

1.798 views

Category:

Education


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Computer

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

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

Page 2: Computer

ภาษาคอมพิ�วเตอร์ • คอมพิ�วเตอร์ จะสามาร์ถทำ�างานได้�จะ

ต�องม�การ์เขี�ยนโปร์แกร์มหร์!อซอร์ ฟแวร์ เพิ!$อส%$งให�คอมพิ�วเตอร์ ทำ�างาน โปร์แกร์ม

ต'าง ๆ ทำ�$เขี�ยนขี)*นมาน%*น จะต�องเขี�ยนไปตามกฎเกณฑ์ ขีองภาษาทำ�$คอมพิ�วเตอร์

เขี�าใจ เร์�ยกว'า ภาษาคอมพิ�วเตอร์ ภาษาคอมพิ�วเตอร์

Page 3: Computer

ภาษาคอมพิ�วเตอร์ ภาษาคอมพิ�วเตอร์ • สามาร์ถแบ่�งออกได้�เป็�น สามาร์ถแบ่�งออกได้�เป็�น 5 5 ยุ�คค�อยุ�คค�อ 1. 1. ภาษาเคร์!$อง ภาษาเคร์!$อง (Machine language) (Machine language)

2. 2. ภาษาแอสเซมบลี� ภาษาแอสเซมบลี� (Assembly language) (Assembly language)

3. 3. ภาษาชั้%*นส2ง ภาษาชั้%*นส2ง - (High level language)- (High level language)หร์!อ ภาษาร์4 'นทำ�$ หร์!อ ภาษาร์4 'นทำ�$ 3 3 ((3GL:Third Generation3GL:Third Generation Language)Language)

4. 4. ภาษาชั้%*นส2งมาก ภาษาชั้%*นส2งมาก - (Very high level language) - (Very high level language) หร์!อภาษาร์4 'นทำ�$ หร์!อภาษาร์4 'นทำ�$ 44 (4GL)(4GL)

5. 5. ภาษาธร์ร์มชั้าต� ภาษาธร์ร์มชั้าต� (Natural language) (Natural language) หร์!อภาษาร์4 'นทำ�$ หร์!อภาษาร์4 'นทำ�$ 55 (5GL)(5GL)

Page 4: Computer

1. 1. ภาษาเคร์!$องภาษาเคร์!$อง (Machine language)

•เป6นภาษาพิ!*นฐานทำ�$คอมพิ�วเตอร์ สามาร์ถเขี�าใจได้� แต'ลีะค�าส%$งปร์ะกอบ

ขี)*นจากกลี4'มต%วเลีขี 0 แลีะ 1 ซ)$งเป6นเลีขีฐานสอง

Page 5: Computer

2. 2. ภาษาแอสเซมบลี� ภาษาแอสเซมบลี� (Assembly language) (Assembly language)

• เป6นภาษาทำ�$ใชั้�ส%ญลี%กษณ ขี�อความ แทำนกลี4'มขีองต%วเลีขีฐานสอง เพิ!$อให�ง'ายต'อ

การ์เขี�ยนแลีะการ์จด้จ�ามากขี)*น การ์ทำ�างานขีองโปร์แกร์มจะต�องทำ�าการ์แปลีภาษาแอสเซมบลี�ให�เป6นภาษาเคร์!$อง โด้ยใชั้�ต%วแปลี

ทำ�$เร์�ยกว'า แอสเซมเบลีอร์ (Assembler)

Page 6: Computer

3. 3. ภาษาชั้%*นส2ง ภาษาชั้%*นส2ง - (High level language)- (High level language) หร์!อภาษาร์4 'นทำ�$ หร์!อภาษาร์4 'นทำ�$ 3 3

((3GL:Third Generation Language)3GL:Third Generation Language)

• ถ2กสร์�างขี)*นมาเพิ!$อให�เขี�ยนโปร์แกร์มได้�ง'ายขี)*น โด้ยม�ลี%กษณะเหม!อนก%บภาษาอ%งกฤษทำ%$วไป ผู้2�เขี�ยนไม'จ�าเป6นต�องม�ความร์2 �เก�$ยวก%บฮาร์ แวร์ แต'อย'างใด้

ภาษาน�*จ�าเป6นต�องม�ต%วแปลีภาษาเคร์!$องเชั้'นก%น เร์�ยกต%วแปลีน�*ว'า คอมไพิเลีอร์ (compiler) หร์!อ อ�นเตอร์

พิร์�เตอร์ (Interpreter) อย'างใด้อย'างหน)$ง• ต%วอย'างขีองภาษาชั้%*นส2ง เชั้'น ภาษาปาสคาลี ภาษาซ�

ภาษโคบอลี ภาษเบส�ก ภาษาฟอร์ แทำร์น

Page 7: Computer

4. 4. ภาษาชั้%*นส2งมาก ภาษาชั้%*นส2งมาก - (Very high level language) - (Very high level language)

หร์!อภาษาร์4 'นทำ�$ หร์!อภาษาร์4 'นทำ�$ 44 (4GL)(4GL)

• เป6นภาษาทำ�$ม�ลี%กษณะคลี�ายภาษาพิ2ด้ตามปกต�ขีองมน4ษย ภาษาน�*จะชั้'วยให�การ์เขี�ยนโปร์แกร์มเร์<วมากขี)*นกว'าภาษาในร์4 'นทำ�$ 3 เน!$องจากม�เคร์!$องม!อทำ�$ชั้'วยในการ์สร์�างแบบฟอร์ มหน�าจอ เพิ!$อจ%ด้การ์ก%บขี�อม2ลีร์วมไปถ)งการ์ออกร์ายงาน เมน2ต'าง ๆ

• ต%วอย'างขีองภาษาชั้%*นส2งมากได้�แก' informix-4GL,

MAGIC , Delphi , Power Builder ฯลีฯ

Page 8: Computer

5. 5. ภาษาธร์ร์มชั้าต�ภาษาธร์ร์มชั้าต� (Natural language) (Natural language) หร์!อภาษาร์4 'นทำ�$ หร์!อภาษาร์4 'นทำ�$

55 (5GL)(5GL)

• เป6นภาษาทำ�$สามาร์ถส%$งงานคอมพิ�วเตอร์ โด้ยใชั้�ร์2ปแบบขีองภาษามน4ษย ได้�เลีย ค�าส%$งอย2'ในร์2ปแบบทำ�$ไม'แน'นอนตายต%ว แต'คอมพิ�วเตอร์ จะทำ�าการ์แปลีให�ออกมาในร์2ปทำ�$คอมพิ�วเตอร์ เขี�าใจได้� ภาษาน�*ถ2กสร์�างขี)*นมาจากเทำคโนโลีย�ทำางด้�านร์ะบบผู้2�เชั้�ยวชั้าญ (Expert system)

• ต%วอย'างภาษาในร์4 'นทำ�$ 5 ได้�แก' ภาษา PROLOG เป6นต�น

Page 9: Computer

ขี%*นตอนการ์เขี�ยนโปร์แกร์มคอมพิ�วเตอร์

1. การ์ว�เคร์าะห ป>ญหา(Analysis the problem)

2 . ออกแบบโปร์แกร์ม (Design a program)

3 . การ์เขี�ยนโปร์แกร์มด้�วยภาษาคอมพิ�วเตอร์ (Coding program)

4 . การ์ตร์วจสอบขี�อผู้�ด้พิลีาด้ขีองโปร์แกร์ม (Testing and Debugging)

5 . การ์ทำด้สอบความถ2กต�องขีองโปร์แกร์ม (Testing and Validating) 6. การ์ทำ�าเอกสาร์ปร์ะกอบโปร์แกร์ม(Documentation) 7. การ์บ�าร์4งร์%กษาโปร์แกร์ม (Program maintenance)

Page 10: Computer

• การ์ร์ะบ4ขี�อม2ลีออก– ก�าหนด้ว%ตถ4ปร์ะสงค ขีองงาน– ร์2ปแบบขีองผู้ลีลี%พิธ

• การ์ร์ะบ4ขี�อม2ลีเขี�า– ขี�อม2ลีทำ�$น�าเขี�าส2'คอมพิ�วเตอร์ ปร์ะกอบด้�วย

อะไร์บ�าง• การ์ก�าหนด้ว�ธ�การ์ปร์ะมวลีผู้ลี

– ต�องทำร์าบส2ตร์หร์!อว�ธ�การ์ปร์ะมวลีผู้ลี

1. การ์ว�เคร์าะห ป>ญหา

Page 11: Computer

ต%วอย'าง ต�องการ์หาพิ!*นทำ�$ขีองสามเหลี�$ยม

ก�าหนด้ว!ตถ�ป็ร์ะสงค การ์ค�านวณหาพิ�$นที่&'สามเหลี่&'ยุมข้�อม*ลี่เข้�า 1. ความยุาวฐาน 2. ความส*งร์*ป็แบ่บ่ผลี่ลี่!พิธ์ ความยุาวฐาน = ………………..ความส*ง = ……………………..พิ�$นที่&'สามเหลี่&'ยุม = ………………………

ข้!$นตอนการ์ป็ร์ะมวลี่ผลี่ 1. ป็.อนความยุาวฐาน

2. ป็.อนความส*ง 3. ค�านวณพิ�$นที่&'สามเหลี่&'ยุม จากส*ตร์

พิ�$นที่&'สามเหลี่&'ยุม = ½ x ความยุาวฐาน x ความส*ง

Page 12: Computer

2. 2. การ์ออกแบบโปร์แกร์มการ์ออกแบบโปร์แกร์ม• เคร์!$องม!อทำ�$ชั้'วยในการ์ออกแบบโปร์แกร์มเชั้'น ผู้%ง

งาน, ร์ห%สจ�าลีอง,แผู้นภ2ม�โคร์งสร์�าง , ฮ�โปชั้าร์ ต• ผู้%งงาน (Flowchart ) ค!อแผู้นภาพิแสด้งขี%*นตอนการ์

ทำ�างานขีองโปร์แกร์มหร์!อร์ะบบร์วมทำ%*งการ์ไหลีขีองขี�อม2ลีต%*งแต'แร์กจนได้�ผู้ลีลี%พิธ ตามต�องการ์

• ปร์ะโยชั้น ขีองผู้%งงาน– ชั้'วยลี�าด้%บขี%*นตอนการ์ทำ�างาน ให�เขี�ยนโปร์แกร์มได้�ไม'ส%บสน– ชั้'วยในการ์ตร์วจสอบแลีะแก�ไขีโปร์แกร์มเม!$อเก�ด้ขี�อผู้�ด้

พิลีาด้– ชั้'วยให�สามาร์ถศึ)กษาการ์ทำ�างานขีองโปร์แกร์มได้�อย'าง

ร์วด้เร์<ว

Page 13: Computer

2. การ์ออกแบบโปร์แกร์ม(ต'อ)

• ปร์ะเภทำขีองผู้%งงาน แบ'งได้�เป6น 2 แบบค!อ1. ผู้%งงานร์ะบบ (System Flowchart)

– แสด้งขีอบเขีตขีองร์ะบบทำ%*งหมด้– แสด้งขี�อม2ลีเขี�าถ2กเก<บอย2'ทำ�$ใด้บ�าง ใชั้�ส!$อบ%นทำ)กขี�อม2ลีแบบ

ใด้– ปร์ะมวลีผู้ลีแลีะแสด้งผู้ลีลี%พิธ ทำ�$ใด้

2. ผู้%งงานโปร์แกร์ม (Program Flowchart)

- แสด้งลี�าด้%บขี%*นตอนการ์ทำ�างานขีองโปร์แกร์มหน)$งๆ

Page 14: Computer

ร์2ปแสด้งส%ญลี%กษณ ขีองผู้%งร์2ปแสด้งส%ญลี%กษณ ขีองผู้%งงานโปร์แกร์มงานโปร์แกร์ม

เร์�'มต�น/จบ่งาน

การ์ต!ด้ส�นใจเลี่�อก

แที่นการ์ก�าหนด้ค�าหร์�อค�านวณค�า

อ�านข้�อม*ลี่เข้�าหร์�อแสด้งข้�อม*ลี่โด้ยุไม�ร์ะบ่�ชน�ด้ส�'อข้�อม*ลี่ที่&'ใช�

จ�ด้เช�'อมต�อ

ข้3$นหน�าใหม�

แสด้งผลี่ลี่!พิธ์ บ่นจอภาพิ

ลี่*กศร์แสด้งที่�ศที่าง

แสด้งผลี่ลี่!พิธ์ ที่างเคร์�'องพิ�มพิ

Page 15: Computer

ว�ธ�เขี�ยนผู้%งงานทำ�$ด้�ว�ธ�เขี�ยนผู้%งงานทำ�$ด้�• ใชั้�ส%ญลี%กษณ ตามทำ�$ก�าหนด้• สามาร์ถแสด้งทำ�ศึทำางการ์ไหลีขีองขี�อม2ลีจากบนลีงลี'าง ซ�ายไปขีวา• ค�าอธ�บายส%*น กะทำ%ด้ร์%ด้ เขี�าใจง'าย

• ม�ลี2กศึร์แสด้งทำ�ศึทำางเขี�าออกทำ4กแผู้นภาพิ• ไม'ควร์โยงเส�นไกลีก%นมากๆ ควร์ใชั้�ส%ญลี%กษณ เชั้!$อมต'อแทำน• ควร์ทำด้สอบความถ2กต�องก'อนน�าไปเขี�ยนโปร์แกร์ม

Page 16: Computer

ต%วอย'าง ผู้%งงานการ์เขี�ยนแลีะส'งจด้หมาย

เข้&ยุนจม.

จ�าหน�าซอง

ใส�ซองจม.

พิ!บ่จม.

ป็6ด้ซองจม.

1

1

ม&แสตมป็7หร์�อไม�

ซ�$อแสตมป็7

ต�ด้แสตมป็7

ส�งจม.

ม& ไม�ม&เร์�'มต�น

จบ่งาน

Page 17: Computer

ต%วอย'าง2 ผู้%งงานการ์หาพิ!*นทำ�$สามเหลี�$ยม

ป็.อนความยุาวฐาน

ค�านวณหาพิ�$นที่&'สามเหลี่&'ยุม จากส*ตร์= ½ x ฐาน x ส*ง

เร์�'มต�น

จบ่งาน

ป็.อนความส*ง

พิ�มพิ พิ�$นที่&'สามเหลี่&'ยุม

Page 18: Computer

3. 3. การ์เขี�ยนโปร์แกร์มด้�วยการ์เขี�ยนโปร์แกร์มด้�วยภาษาคอมพิ�วเตอร์ ภาษาคอมพิ�วเตอร์

• เป6นการ์น�าผู้%งงานทำ�$เขี�ยนไว�มาแปลีงเป6นโปร์แกร์มภาษาคอมพิ�วเตอร์

• โด้ยผู้%งงานไม'ได้�ขี)*นก%บภาษาใด้จ)งสามาร์ถเลี!อกใชั้�ภาษาได้�ตามต�องการ์

Page 19: Computer

4. 4. การ์ตร์วจสอบขี�อผู้�ด้พิลีาด้การ์ตร์วจสอบขี�อผู้�ด้พิลีาด้ขีองโปร์แกร์มขีองโปร์แกร์ม

ปร์ะเภทำขีองขี�อผู้�ด้พิลีาด้• Syntax error

– เก�ด้จากการ์เขี�ยนไวยากร์ณ ขีองภาษาผู้�ด้– ตร์วจพิบได้�ในขีณะทำ�าการ์แปลี (compile ) โปร์แกร์ม– สามาร์ถแก�ไขีได้�ง'ายทำ�$ส4ด้– เชั้'น a:=10;

writtln(a);Syntax error

Writeln(a);

Page 20: Computer

4. 4. การ์ตร์วจสอบขี�อผู้�ด้พิลีาด้ขีองการ์ตร์วจสอบขี�อผู้�ด้พิลีาด้ขีอง โปร์แกร์ม โปร์แกร์ม ((ต'อต'อ))

• Run-time error– เป6นความผู้�ด้พิลีาด้ขีองโปร์แกร์มในร์ะหว'างการ์ปฎ�บ%ต�งาน– ตร์วจไม'พิบในขีณะทำ�าการ์แปลีโปร์แกร์ม– เชั้'น ค�าส%$ง 1/x โด้ยก�าหนด้ให� x>=0 แลีะ x <=10 ซ)$งการ์หาร์

ด้�วย 0 จะทำ�าให�เก�ด้ขี�อผู้�ด้พิลีาด้ตอน Run-time (ซ)$งในการ์แปลีจะไม'พิบขี�อผู้�ด้พิลีาด้)

• Logical error

– เก�ด้จากการ์ต�ความหมายขีองป>ญหาผู้�ด้ไป– เป6นขี�อผู้�ด้พิลีาด้ทำ�$แก�ไขีได้�ยากทำ�$ส4ด้– เชั้'น x = b เขี�ยน x = b/2*a ต�ความเป6น x = b*a จะผู้�ด้ ทำ�$ถ2กต�อง

เป6น

x = b/(2*a)

2a 2

Page 21: Computer

4. 4. การ์ตร์วจสอบขี�อผู้�ด้พิลีาด้ขีองการ์ตร์วจสอบขี�อผู้�ด้พิลีาด้ขีอง โปร์แกร์ม โปร์แกร์ม ((ต'อต'อ))

• การ์ตร์วจสอบด้�วยตนเอง– เป6นการ์ตร์วจสอบทำ�ลีะขี%*นขีองโปร์แกร์มด้�วยตนเอง– อาจเจอ syntax error หร์!อ logical error

• การ์ตร์วจสอบด้�วยการ์แปลีโปร์แกร์ม– โด้ยใชั้�ต%วแปลีภาษา (Compiler หร์!อ Interpreter)– อาจเจอ syntax error

– ไม'สามาร์ถตร์วจเจอ Logical error แลีะ Run-time error ได้�

Page 22: Computer

5. 5. การ์ทำด้สอบความถ2กต�องการ์ทำด้สอบความถ2กต�องขีองโปร์แกร์มขีองโปร์แกร์ม

• ทำด้สอบว'าโปร์แกร์มให�ผู้ลีลี%พิธ ออกมาถ2กต�อง ตามทำ�$ต�องการ์หร์!อไม'

• โด้ยการ์ป@อนขี�อม2ลีสมมต�หลีาย ๆ ค'าทำ�$เป6นไปได้�เขี�าไปแลี�วด้2ผู้ลีลี%พิธ ว'าถ2กต�องหร์!อไม'

Page 23: Computer

6. 6. การ์ทำ�าเอกสาร์ปร์ะกอบการ์ทำ�าเอกสาร์ปร์ะกอบโปร์แกร์มโปร์แกร์ม

1 . เอกสาร์ปร์ะกอบโปร์แกร์มส�าหร์%บผู้2�ใชั้�

(User Documentation)

2. เอกสาร์ปร์ะกอบส�าหร์%บผู้2�เขี�ยนโปร์แกร์ม

(Technical Documentation)

Page 24: Computer

7. 7. การ์บ�าร์4งร์%กษาโปร์แกร์มการ์บ�าร์4งร์%กษาโปร์แกร์ม

• หลี%งจากทำ�$ม�การ์ใชั้�งานโปร์แกร์มไปนาน ๆ แลี�ว อาจต�องม�การ์ปร์%บปร์4งแก�ไขี

โปร์แกร์มให�ตร์งตามความต�องการ์ขีองผู้2�ใชั้�ทำ�$อาจเปลี�$ยนแปลีงไป