ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรม

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
รายละเอียดวิชา ง การงานพื้นฐาน4(คอมพิวเตอร์2)
Advertisements

Suphot Sawattiwong Function ใน C# Suphot Sawattiwong
Introduction to C Introduction to C.
ความรู้เบื้องต้นเกี่ยวกับภาษา c
โครงสร้างโปรแกรมภาษา C
การจัดการความผิดพลาด
ใบความรู้ 3 ระบบคอมพิวเตอร์.
ระบบปฏิบัติการ (Operating System : OS )
การจำลองความคิด รายวิชา ง40102 หลักการแก้ปัญหาและการโปรแกรม
วงจรพัฒนาระบบ (System Development Life Cycle)
แนะนำการเขียนโปรแกรมภาษา C Introduction to C Programming Language
การเขียนผังงาน.
ประเภทของโปรแกรมคอมพิวเตอร์
Intermediate Representation (รูปแบบการแทนในระยะกลาง)
ภาษาคอมพิวเตอร์ กฎเกณฑ์เกี่ยวกับคำศัพท์ ไวยากรณ์ และ หลักภาษาในการเขียนคำสั่งงานให้คอมพิวเตอร์ทำงานอย่างใดอย่างหนึ่งให้กับเราได้ มีหลากหลายชนิดต่างๆ กัน.
Lecture no. 1: Introduction to Computer and Programming
Lecture No. 3 ทบทวนทฤษฎีและแบบฝึกหัด
CS Assembly Language Programming
เรื่อง องค์ประกอบของคอมพิวเตอร์ จำทำโดย นาย เดชฤทธิ์ ร้อยพรหมมา
คอมพิวเตอร์เพื่องานอาชีพ
Utility (โปรแกรมอรรถประโยชน์)
ความหมาย และวิวัฒนาการ ของ ระบบปฏิบัติก าร.
บทที่ 1 ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรม GUI
ภาษาคอมพิวเตอร์.
ซอฟต์แวร์.
หน่วยที่ 1 ระบบคอมพิวเตอร์
เนื้อหา ประเภทของโปรแกรมภาษา ขั้นตอนการพัฒนาโปรแกรม
องค์ประกอบพื้นฐาน ของโปรแกรม Visual Basic
Computer&Technology Mahidol Wittayanusorn School
ความรู้เบื้องต้นเกี่ยวกับ JAVA
ขั้นตอนการแปลงไฟล์.
Surachai Wachirahatthapong
Operating System ฉ NASA 4.
SCC : Suthida Chaichomchuen
การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริธึม
การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริธึม
แนะนำการเขียนโปรแกรมภาษา C Introduction to C Programming Language
Introduction to Computer organization & Assembly Language
Introduction to C Language
วิธีการทางคอมพิวเตอร์
การออกแบบฐานข้อมูลและการบริหารธุรกิจ
องค์ประกอบทางด้านซอฟต์แวร์
ความรู้พื้นฐานการเขียนโปรแกรม
โปรแกรมภาษาจาวาเบื้องต้น Basic Java Programming 3(2-2-5)
เรื่ององค์ประกอบคอมพิวเตอร์
การแทนข้อมูล คอมพิวเตอร์เป็นอุปกรณ์อิเล็กทรอนิกส์ซึ่งใช้สัญญาณอิเล็กทรอนิกส์ในการทำงานเพื่อเก็บข้อมูล ประมวลผลและแสดงผลลัพธ์ การมองเห็นข้อมูลของคอมพิวเตอร์กับการมองเห็นข้อมูลของผู้ใช้จะไม่เหมือนกัน.
กิจกรรมที่ 1 ซอฟต์แวร์ระบบ จุดประสงค์ 1. บอกความหมายของซอฟต์แวร์
Geographic Information System
เครื่องมือและเครื่องทุ่นแรงในงานบัญชี
2.1 วิธีแก้ปัญหาด้วยคอมพิวเตอร์ (Computer problem solving methods)
ระบบคอมพิวเตอร์และการประมวลผล
การนำระบบเทคโนโลยีสารสนเทศมาสนับสนุนการทำงาน
การจัดการฐานข้อมูล.
เทคโนโลยีสารสนเทศเบื้องต้น
กิจกรรมที่ 1 ซอฟต์แวร์ระบบ จุดประสงค์ 1. บอกความหมายของซอฟต์แวร์
การแก้ปัญหาโปรแกรม (Flowchart)
บทที่ 1 ระบบคอมพิวเตอร์.
โครงสร้าง ภาษาซี.
Java Network Programming 1
คอมพิวเตอร์และระบบปฏิบัติการเบื้องต้น
ความรู้พื้นฐานเกี่ยวกับการโปรแกรมคอมพิวเตอร์
ระบบคอมพิวเตอร์ (computer system)
นาย เกียรติศักดิ์ แสนนวล โรงเรียนจักรคำคณาทรลำพูน
แนะนำการเขียนโปรแกรมภาษา C Introduction to C Programming Language
ซอฟต์แวร์ (Softwarre)
จัดทำโดย.... นางสาววริศรา ทาวรรณ์ เลขที่ 35 ชั้น ม.4/13
นายณัฐพล นาคะป่า เลขที่ 36 ชั้นมัธยมศึกษาปีที่ 4/7
2 มิ. ย 2547 โดย วชิราวุธ ธรรมวิเศษ 1 บทที่ 1 แนะนำเทคโนโลยีจาวา Introduction to Java Technology.
ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรม
สื่อการสอนรายวิชา ง30204 โปรแกรมภาษาชี ภาษาคอมพิวเตอร์และโปรแกรม
ใบสำเนางานนำเสนอ:

ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรม April 4, 2017 ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรม Kitsana Waiyamai 204111: Introduction to programming

Computer & Program Computers Program April 4, 2017 Computer & Program Computers อุปกรณ์ที่ใช้เพื่อการคำนวณด้วยความเร็วสูงและถูกต้องเที่ยงตรง อุปกรณ์ซึ่งสามารถถูกสั่งงาน(โปรแกรม)ให้ทำงานได้ตามต้องการ สามารถเก็บและเรียกข้อมูลจำนวนมากได้อย่างรวดเร็ว ประกอบด้วยองค์ประกอบทีมองเห็นจับต้องได้เรียกว่า ฮาร์ดแวร์ (Hardware) Program กลุ่มของชุดคำสั่งเพื่อให้คอมพิวเตอร์ปฏิบัติตาม โดยจะถูกเขียนขึ้นโดยใช้ภาษาสำหรับการโปรแกรมโดยเฉพาะ Kitsana Waiyamai 204111: Introduction to programming

ข้อมูลในระบบคอมพิวเตอร์ ลักษณะของข้อมูลจะเป็นบิต (Bit) มาประกอบกัน ข้อมูล 1 บิตมีเพียงสองสถานะ ใช้สัญลักษณ์ 1 หรือ 0 แทน ซึ่งตรงกับเลขฐานสอง (Binary number) โดยทั่วไปข้อมูลหนึ่งตัวอักษร (Character) หรือเรียกว่า 1 ไบต์(Byte) นั้นประกอบด้วยข้อมูล 8 บิต ดังนั้นข้อมูล 1 ไบต์มีความแตกต่างกัน 28 หรือ 256 แบบ

ข้อมูลในระบบคอมพิวเตอร์ ข้อมูลในคอมพิวเตอร์จะถูกเก็บอยู่ในรูปของ bit bit = binary digit (เลขฐานสอง) มีค่าเป็น 0 หรือ 1 (ตามสถานะของไฟฟ้า) byte = 8 bits ข้อมูล 1 byte ในเครื่องคอมพิวเตอร์อาจจะมีความหมายแทนข้อมูลได้หลากหลายประเภท ตัวอย่างเช่น ข้อมูล 1 byte เก็บค่าดังนี้ 011000012 ข้อมูลดังกล่าวอาจจะแทนอักขระ ‘a’ หรือแทนตัวเลข 97 ก็ได้ ขึ้นอยู่กับโปรแกรมคอมพิวเตอร์ ว่าจะตีค่า 1 byte นั้นเป็นอะไร

โปรแกรม / ซอฟต์แวร์ คือ? กลุ่มคำสั่งซึ่งบอกการทำงานเป็นขั้นตอนเพื่อสั่งให้คอมพิวเตอร์ทำงาน และให้ผลลัพธ์ตามคำสั่งนั้น โดยคำสั่งนี้เขียนอยู่ในรูปแบบของภาษาคอมพิวเตอร์

ชนิดของซอฟต์แวร์ ซอฟต์แวร์ระบบ ระบบปฏิบัติการ (OS) ซอฟต์แวร์จัดการอุปกรณ์ต่อพ่วง (Device Driver) ซอฟต์แวร์ประยุกต์ โปรแกรมสำเร็จรูป โปรแกรมที่พัฒนาขึ้นเอง

คอมพิวเตอร์จะทำงานกับภาษาเครื่องเท่านั้น April 4, 2017 Computer Languages กลุ่มของภาษาคอมพิวเตอร์: ภาษาเครื่อง Machine language รหัสไบนารี Binary Code ภาษาแอสเซมบลีAssembly language ภาษาระดับสูง High-Level Language คล้ายคลึงกับภาษามนุษย์ ไม่ยึดติดกับ hardware เคลื่อนย้ายได้ ตัวอย่าง: Pascal, C, C++, C#, Java, Fortran, VB คอมพิวเตอร์จะทำงานกับภาษาเครื่องเท่านั้น Kitsana Waiyamai 204111: Introduction to programming

ภาษาเครื่อง กำเนิดมาพร้อมกับคอมพิวเตอร์ April 4, 2017 ภาษาเครื่อง กำเนิดมาพร้อมกับคอมพิวเตอร์ เป็นภาษาที่เครื่องเข้าใจได้ โดยตรง เป็นที่มาของคำว่า code ซึ่งปัจจุบันหมายถึง ข้อความที่ประกอบขึ้นเป็นโปรแกรมในภาษาใด ๆ (program text) เป็นภาษาระดับต่ำ มนุษย์ทำความเข้าใจได้ยาก ทำงานเร็ว ตัวอย่างบางส่วนของโค้ด 00000010101111001010 00000010111111001000 00000011001110101000 บวกเลขในตำแหน่งที่ 10 กับเลขในตำแหน่งที่ 11 แล้วเก็บผลลัพธ์ไว้ในตำแหน่งที่ 12 Kitsana Waiyamai 204111: Introduction to programming

ภาษาสัญลักษณ์ Program April 4, 2017 ภาษาสัญลักษณ์ Program 1: M[0] := 0; 2: read(M[1]) 3: if M[1] > 0 then goto 5 4: goto 7 5: M[3] := M[0] - M[1]; 6: if M[3] > then goto 16 7: writeln(M[1]) 8: read(M[2]) 9: M[3] := M[2] - M[1]; 10: if M[3] > then goto 12 …. 16: halt เนื่องจากภาษาเครื่องเข้าใจยาก และภาษาอังกฤษใช้คำมากเกินกว่าที่จะใช้ในการแสดงความหมาย (verbose) สร้างภาษา Assembly โดยใช้สัญลักษณ์และชื่อแทนโค้ดจริง เป็นภาษาระดับต่ำที่อ่านเข้าใจได้ง่ายขึ้น เป็นภาษาที่ขึ้นอยู่กับเครื่อง Machine address A program = sequence of instructions - assignment - input/output - control flow input file = sequence of value by read instructions output file = sequence of value by write instructions Execution begin with first instruction flows from one to the next except goto, if Kitsana Waiyamai 204111: Introduction to programming

1:1 Assembly code Assembler Object code April 4, 2017 Kitsana Waiyamai 204111: Introduction to programming

High-Level Languages Procedural Language Object-Oriented Language Fortran Cobol Basic C Pascal Object-Oriented Language C++, Java, C#, VB Functional Language Lisp Logic Language Prolog

ภาษาระดับสูง ใช้สัญลักษณ์ที่คุ้นเคยและอ่านเข้าใจง่าย April 4, 2017 ภาษาระดับสูง ใช้สัญลักษณ์ที่คุ้นเคยและอ่านเข้าใจง่าย สามารถนำโปรแกรมไปรันบนเครื่องที่ต่างกันโดยทำการ แก้ไขโค้ดเล็กน้อยหรือไม่ต้องแก้ไขเลย (portability / machine independence) มีชุดคำสั่งโปรแกรมให้ใช้ (program libraries) มีการตรวจสอบข้อผิดพลาด (error) ในช่วงที่ทำการเขียน (implementation) Fortran is the first high level language. Unix orginally written in assembly was rewrite in C in 1973. - new users and programs - readability - portabiliy Kitsana Waiyamai 204111: Introduction to programming

ยุคของภาษาคอมพิวเตอร์ ภาษายุคที่ 1 เป็นภาษาเครื่อง ที่คำสั่งเป็นเลข 0,1 ภาษายุคที่ 2 เป็นภาษาสัญลักษณ์ หรือภาษาแอสแซมบลี ตัวอย่างคำสั่ง MOV BH,30

April 4, 2017 ภาษายุคที่ 3 เป็นภาษาแรกที่มีใช้คำสั่งคล้ายกับประโยคในภาษาอังกฤษ ทำให้ใช้งานง่ายกว่าภาษาในยุคก่อน มีคุณสมบัติ portable ทำให้สามารถนำ object code ที่สร้าง (compile) จากระบบหนึ่งไปใช้ระบบที่ต่างกันได้ ภาษาที่อยู่ในกลุ่มนี้ ได้แก่ FORTAN C COBOL C++ BASIC Java Pascal ActiveX Kitsana Waiyamai 204111: Introduction to programming

ภาษายุคที่ 4 เป็นภาษาเหมาะกับงานเฉพาะด้านและใช้งานง่ายกว่า 3GL April 4, 2017 ภาษายุคที่ 4 เป็นภาษาเหมาะกับงานเฉพาะด้านและใช้งานง่ายกว่า 3GL ใช้ลักษณะ text-based environment (คล้าย 3GL) โปรแกรมเมอร์สามารถใช้ visual environment ได้โดยใช้เครื่องมือทางด้านกราฟิก ทำให้สร้าง Prototype หรือ GUIของโปรแกรมได้รวดเร็ว ส่วนใหญ่เป็นโปรแกรมที่รวบรวมการจัดการฐานข้อมูลด้วย ภาษาที่อยู่ในกลุ่มนี้ ได้แก่ Visual Basic (VB) VisualAge Authoring environments Kitsana Waiyamai 204111: Introduction to programming

April 4, 2017 ภาษายุคที่ 5 เป็นภาษาที่รวมเอาปัญญาประดิษฐ์ (Artificial Intelligence) และระบบผู้เชี่ยวชาญ (Expert Systems) มาใช้ในการสร้างโปรแกรม? ระบบคิดและมีส่วนร่วมในการตัดสินใจของผู้ใช้? เป็นการหาคำตอบ, คำแนะนำที่เหมาะสำหรับคำถามที่ผู้ใช้ป้อน? Kitsana Waiyamai 204111: Introduction to programming

Language translator Hello World! _ …… Machine language Interpreter / Compiler …… main: pushl %ebp movl %esp, %ebp subl $8, %esp andl $-16, %esp movl $0, %eax subl %eax, %esp pushl $.LC0 …….. …. 00011000110001110 00110001110101111 00011111111110001 11011100001011011 …… Assembler class MainClass { public static void Main(string[] args) Console.WriteLine("Hello World!"); } Machine Machine language High-level language Assembly language Hello World! _

The translation Process Compiler Executable Program Source Program

Compiler อ่านทั้งโปรแกรมในครั้งเดียว แปลงให้เป็นไฟล์ที่สามารถใช้งานได้ (machine language) library Compiler Linker …. writeln(‘a’); writeln(‘b’); writeln(‘c’); object file Source a b c …. 0100100 0100101 0100101 ..... Exe file

Interpretation Method Process Source Program Interpreter (on computer) Output

Interpreter อ่านภาษาระดับสูง แปลคำสั่ง แล้วทำงานตามคำสั่งนั้นๆ ทำตามด้านบนทีละคำสั่ง Inter- preter a b c …. writeln(‘a’); writeln(‘b’); writeln(‘c’); 0100100 0100101 0100110 Source

กระบวนการพัฒนาโปรแกรม April 4, 2017 กระบวนการพัฒนาโปรแกรม การวิเคราะห์ความต้องการ / นิยามปัญหา (Needs analysis) การออกแบบระบบ (System Design) การดำเนินการ / พัฒนา (Development) การนำไปใช้ (Implementation) การบำรุงรักษา (Maintenance) Kitsana Waiyamai 204111: Introduction to programming