วันศุกร์ที่ 2 ตุลาคม พ.ศ. 2552

ประวัติความเป็นมาของภาษาซี

ภาษาซีพัฒนาขึ้นโดย เดนนิส ริตชี แห่งศูนย์วิจัยเบลล์(Bell Laboratory) มลรัฐนิวเจอร์ซี สหรัฐอเมริกาในปี พ.ศ.2515 โดยได้รับแนวคิดมาจากภาษาบี (B Language) และมีพัฒนาการ ดังนี้- พ.ศ.2503 กำเนิดภาษา Algol 60พัฒนาโดยองค์การ International Committee)- พ.ศ.2506กำเนิดภาษา CPL (Combined Programming Language) พัฒนาโดยมหาวิทยาลัย Cambridge)- พ.ศ.2510กำเนิดภาษา BCPL (Basic Combined Programming Language) พัฒนาโดย Martin Richards มหาวิทยาลัย Cambridge)- พ.ศ.2513กำเนิดภาษา B (B Language) พัฒนาโดย Ken Tompson แห่ง Bell Laboratory)- พ.ศ.2515กำเนิดภาษา C (C Language) พัฒนาโดย Dennis Ritchie)โครงสร้างพื้นฐานของภาษาซีภาษาซีเป็นภาษาโครงสร้างที่มีรูปแบบไวยากรณ์แน่นอน มีคำสั่งให้เลือกใช้งานตามลักษณะงานต่าง ๆ จำนวนมาก โครงสร้างของภาษาซีจะพิจารณาโปรแกรมเป็นส่วนย่อยหลาย ๆ ส่วนมาประกอบกันเข้าเป็นโปรแกรม เรียกส่วน ย่อย ๆ นั้นว่า ฟังก์ชัน (Function) ดังนั้นในโปรแกรมภาษาซีจึงประกอบด้วยฟังก์ชันหลายฟังก์ชันส่วนหนึ่งเป็นฟังก์ชันที่กำหนดตามไวยากรณ์ของภาษา และอีกส่วนหนึ่งเป็นฟังก์ชันที่ผู้เขียนโปรแกรมสร้างขึ้นก่อนที่จะเริ่มต้นเขียนโปรแกรมภาษาซี เรามารู้จักกับโครงสร้างของภาษาซี เพื่อให้เข้าใจถึงลักษณะ รูปแบบและหน้าตาของการเขียนโปรแกรมภาษาซี ดังนี้ ส่วนประกอบของโปรแกรมภาษาซี จะมีลักษณะที่เหมือนกัน แต่อาจจะแบ่งหรือกำหนดเป็นส่วนย่อยที่เรียกชื่อต่างกันไป ในที่นี้จะขอแบ่งโครงสร้างพื้นฐานของภาษาซีออกเป็น 3 ส่วน ดังนี้# header ส่วนที่ 1{ /* เริ่มโปรแกรม */ main( ) ส่วนที่ 3 declaration ส่วนที่ 2 คำสั่งต่าง ๆ ………}ส่วนที่ 1 ส่วนหัวโปรแกรม (#header) เป็นส่วนแรกของโปรแกรมภาษาซีที่กำหนดไว้ก่อนที่จะมีการประมวลผลในโปรแกรมเรียกว่าพรีโพรเซสเซอร์(Preprocessor) เพื่ออ้างถึงไฟล์บางไฟล์ที่ไม่มีอยู่ในโปรแกรมที่ผู้เขียนโปรแกรมเขียนขึ้นโดยที่จะต้องนำไฟล์เฮดเดอร์(#header)นั้นมารวมกับไฟล์ที่เขียนขึ้นเอง ในโปรแกรมภาษาซีที่ใช้งานจริงอาจจะมีการเรียกใช้ไฟล์เฮดเดอร์มากกว่า 1 ไฟล์ส่วนใหญ่ไฟล์เฮดเดอร์จะเกี่ยวกับฟังก์ชันของการจัดการ เช่นฟังก์ชันที่เกี่ยวกับการรับและแสดงผลข้อมูล หรือด้านกราฟิก เป็นต้น ดังนั้นส่วนหัวโปรแกรมนี้จึงเป็นส่วนที่ระบุให้ซีคอมไพเลอร์เตรียมการทำงานที่กำหนดในส่วนนี้ไว้ โดยหน้าคำสั่งจะมีเครื่องหมาย # เช่น # include เป็นการระบุให้นำไฟล์ stdio.h มารวมกับไฟล์ที่เขียนขึ้นนี้ เพื่อที่จะสามารถใช้คำสั่งที่อยู่ในไฟล์นี้มาใช้งานได้ #define start 10เป็นการกำหนดค่าคงที่ให้กับตัวแปร start โดยให้มีค่าเป็น 10 คำสั่ง #include เรียกว่า คอมไพล์เลอร์ไดเรคทีพ (Compiler directive)เป็นคำสั่งพิเศษสำหรับช่วยในการคอมไพล์โปรแกรมภาษาซี คำสั่งนี้เรียกมาจากส่วนอื่น จึงไม่ต้องลงท้ายด้วยเครื่องหมาย Semicolon ( ; ) แต่ต้องเขียนติดกัน ห้ามเว้นวรรคระหว่าง # กับ คำสั่ง ส่วนที่ 2 ส่วนประกาศตัวแปร (declaration) ส่วนนี้เป็นการกำหนดชนิดของข้อมูลที่ต้องการใช้ในโปรแกรม ปกติจะอยู่ที่ส่วนต้นของฟังก์ชัน ซึ่งจะอยู่ก่อนคำสั่งอื่น ๆ ตัวอย่างของการประกาศตัวแปร เช่น int num; หมายถึง การกำหนดตัวแปรชื่อ num ให้เป็นตัวแปรชนิดเลขจำนวนเต็ม (integer) เช่น 2 , 5 , 1001 ... float score; หมายถึง การกำหนดว่าตัวแปร score เป็นข้อมูลชนิดเลขมีจุดทศนิยม (floating point)ซึ่งอาจมีค่า 0.23, 1.34 , 13.04 , -21.002 , …. ส่วนที่ 3 ส่วนของตัวโปรแกรม (Body ) ส่วนนี้จะต้องเริ่มต้นด้วยฟังก์ชันmain ( ) แล้วใส่เครื่องหมายกำหนดขอบเขตเริ่มต้นของตัวโปรแกรมคือ { หลังจาก นั้นใส่คำสั่งหรือฟังก์ชันต่าง ๆ โดยแต่ละคำสั่งหรือฟังก์ชันนั้น ๆ จะต้องปิดด้วยเครื่องหมาย ; เมื่อต้องการจบโปรแกรมให้ใส่เครื่องหมาย } ปิดท้าย ในส่วนของตัวโปรแกรมนี้ส่วนใหญ่จะประกอบกด้วยฟังก์ชันที่ทำหน้าที่ในการรับข้อมูล ส่วนของการกำหนดค่าหรือคำนวณ และฟังก์ชันที่ใช้ในการแสดงผลข้อมูลหรืออาจจะเป็นฟังก์ชันย่อยที่เขียนขึ้นภายในเครื่องหมายวงเล็บปีกกา { }ที่เรียกว่า บล็อก ซ้อนอยู่ภายในอีกชั้นหนึ่งก็ได้เครื่องหมายต่าง ๆ ที่ควรทำความเข้าใจ { } - เป็นตัวกำหนดขอบเขตหรือบล็อกของฟังก์ชัน ( ) - เป็นการระบุตัวผ่านค่าหรืออาร์กิวเมนต์ให้กับฟังก์ชัน ถ้าภายในวงเล็บไม่มีข้อความใด ๆ แสดงว่าไม่มีตัวผ่านค่าที่ต้องการระบุสำหรับฟังก์ชันนั้น ๆ /*...*/ - เป็นการกำหนด comment หรือข้อความ ที่ไม่ต้องการให้คอมไพเลอร์ปฏิบัติงาน ซึ่งข้อความที่อยู่ภายใน เครื่องหมายนี้จะถือว่า ไม่ใช่คำสั่งปฏิบัติงานตัวอย่างโปรแกรมที่ 1# include /* ส่วนหัวโปรแกรม */# include void main( ) /* ส่วนตัวโปรแกรม */{ clrscr(); printf("Hello, Good morning. \n"); getch();}เมื่อสั่ง Compile และ Run จะได้ผลลัพธ์ ดังนี้ Hello, Good morning.

ANSI คืออะไร

สถาบันมาตรฐานแห่งชาติของสหรัฐอเมริกา หรือ แอนซี (American National Standard Institute - ANSI) คือองค์กรในสหรัฐอเมริกา มีหน้าที่กำหนดมาตรฐานของผลิตภัณฑ์ ก่อตั้งเมื่อวันที่ 19 ตุลาคม พ.ศ. 2461 (ค.ศ. 1918) โดยใช้ชื่อว่า American Engineering Standards Committee และได้มีการปรับปรุงในปี พ.ศ. 2461 (ค.ศ. 1928) โดยเปลี่ยนชื่อเป็น American Standards Association ในปี พ.ศ. 2489 (ค.ศ. 1946) ได้มีการจัดตั้งองค์กรนานาชาติขึ้นมา โดยมีประเทศ 25 ประเทศเข้าร่วม และสุดท้ายในปี พ.ศ. 2512 (ค.ศ. 1969) ได้เปลี่ยนชื่อมาเป็น American National Standard Institute หรือ ANSI ในปัจจุบัน

วันเสาร์ที่ 25 กรกฎาคม พ.ศ. 2552

ต่อจากโฟร์ชาร์จ


แบบฝึกหัดการเขียน โฟร์ชาร์จ


จงเขียนแผนผังงานให้รับข้อมูลตัวเลยเข้าไป1ตัวเก็บในตัวแปล x จากนั้นให้พิมพ์ตามเงื่อนไขต่อไปนี้

- ถ้า x มากกว่า 0 ให้เป็น "เลขบวก"

- ถ้า x น้อยกว่า 0 ให้เป็น "เลขลบ"

- ถ้า x เท่ากับ 0 ให้ "ค่าเป็นศูนย์"

วันเสาร์ที่ 20 มิถุนายน พ.ศ. 2552

7. การเขียนโปรแกรมควบคุมการทำงานของอุปกรณ์อิเล็กทรอนิกส์ ควรเลือกใช้ภาษาใด เพราะอะไร

ตอบ การเขียนโปรแกรมเพื่อควบคุมไมโครคอนโทรลเลอร์ (Microcontroller) และอุปกรณ์อิเล็กทรอนิกส์ต่างๆ ที่ใช้ในชีวิตประจำวัน เช่น ลิฟต์, จอแสดงผล, LED, หัวจ่ายปั๊มน้ำมัน,อุปกรณ์ควบคุมในโรงงาน หรือแม้กระทั่งงานสนุกๆอย่าง Robot ที่ฮิตกันมาก ซึ่งมีภาษาให้เลือกใช้ไม่ว่าจะเป็นภาษา (Assembly หรือ Visual Basic 6.0/2005.)

วันศุกร์ที่ 19 มิถุนายน พ.ศ. 2552

6. จงอธิบายลักษณะของภาษาคอมพิวเตอร์ ที่เรียกว่าภาษาธรรมชาติ

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

5. ผู้ใช้งานคอมพิวเตอร์สามารถแบ่งออกเป็นกี่ประเภท

ตอบ 1. ผู้ใช้งานคอมพิวเตอร์ User คือผู้ใช้งานคอมพิวเตอร์ทั่วไป สามารถทำงานตามหน้าที่ในหน่วยนั้นๆ เช่น การพิมพ์งาน การป้อนข้อมูลเข้าเครื่องคอมพิวเตอร์
2. ผู้จัดการระบบ
3. นักวิเคราะห์ระบบ
4. โปรแกรมเมอร์ คือผู้เขียนโปรแกรมต่างๆ ขึ้นมา เพื่อใช้ในระบบคอมพิวเตอร์

4.ซอฟแวร์ประยุกต์หมายถึงอะไร

ตอบ ซอฟแวร์ประยุกต์ได้รับความนิยมใช้งานอย่างแพร่หลายในทุกวงการ ความนิยมส่วนหนึ่งมาจากขีดความสามารถของซอฟแวร์ประยุกต์นั้นๆ เพราะซอฟแวร์ที่ผลิตออกจำหน่าย ต่างพยามยามแข่งขันกันหลายๆด้าน ซอฟแวร์ประยุกต์มีอยู่มากมายอาจแบ่งได้ 2 ประเภทต่างๆกัน คือ ซอฟแวร์ใช้งานทั่วไป และซอฟแวร์ใช้งานเฉพาะทาง

3.ระบบปฏิบัติการคอมพิวเตอร์หมายถึงอะไร

ตอบ ใช้ย่อว่า OS หมายถึงระบบปฏิบัติการที่ทำหน้าที่ควบคุมการทำงานของฮาร์ดแวร์ทั้งหมด รวมทั้งการปฏิบัติงานของโปรแกรมด้วยระบบปฏิบัติการของไมโครคอมพิวเตอร์ จะเรียกว่า ระบบปฏิบัติการแบบใช้จาน ที่มีชื่อโด่งดังอยู่ในขณะนี้ก็คือ MS DOS

2.ROM กับ RAM แตกต่างกันอย่างไร

ตอบ รอมเป็นหน่วยความจำที่บันทึกข้อมูลตายตัวไม่สามารถปรับเปลี่ยนได้ แม้วงจรจะไม่มีกระแสไฟฟ้ามาเลี้ยง ข้อมูลภายในยังอยู่ครบไม่หายไปไหน ซึ่งแตกต่างจาก แรม ตรงที่แรม เป็นหน่วยความจำที่เหมือนสมุดจดบันทึก เป็นหน่วยความจำชั่วคราวที่สามารถทดแทนข้อมูลและคำสั่งใหม่ๆได้ รวมทั้งสามารถขขยายความจุได้มากและข้อแตกต่างสุดท้ายคือ ข้อมูลในแรมจะสูญหายทั้งหมดทันที เมื่อปิดเครื่องหรือไฟดับ

วันอาทิตย์ที่ 7 มิถุนายน พ.ศ. 2552

ยุคของคอมพิวเตอร์ มีกี่ยุค อะไรบ้าง

ตอบ มี 5 ยุค
ยุคที่ 1. อยู่ระหว่างปีพ.ศ.2488 ถึง พ.ส. 2501 เป็นคอมพิวเตอร์ที่ใช้หลอดสูญญากาศซึ่งใช้กำลังไฟฟ้าสูง จึงมีปัญหาเรื่องความร้อนและไส้หลอดขาดย่อย ถึงแม้จะมีระบบระบายความร้อนที่ดีมาก การสั่งงานใช้ภาษาเครื่องซึ่งเป็นรหัสตัวเลขที่ยุ่งยากซับซ้อน เครื่องคอมพิวเตอร์ของยุคนี้มีขนาดใหญ่โต เช่น มาร์ควัน อีนิแวค ยูนิแวค
ยุคที่ 2. อยู่ระหว่างปีพ.ศ. 2502 ถึง พ.ศ.2506 เป็นคอมพิวเตอร์ที่ใช้ทรานซิสเตอร์ โดยมีแกนเฟอร์ไรท์เป็นหน่ว่ยความจำมีอุปกรณ์เก็บข้อมูลสำรองในรูปแบบของสื่อบันทึกแม่เหล็ก เช่น จานแม่เหล็ก ส่วนทางด้านซอฟแวร์ก็มีการพัฒนาดีขึ้น โดยสามารถเขียนโปรแกรมด้วยภาษาที่เขียนเป็นประโยคที่คนสามารถเข้าใจได้เช่น ภาษาฟอร์แทน ภาษาโคบอล เป็นต้น ภาษาระดับสูงนี้ได้มีการพัฒนาและใช้งานมาจนถึงปัจจุบัน
ยุคที่ 3. อยู่ระหว่างปี พ.ศ. 2507 ถึง พ.ศ. 2512 เป็นคอมพิวเตอร์ที่ใช้วงจรรวม โดยวงจรรวมแต่ละตัวจะมีทรานซิสเตอร์บรรจุอยู่ภายในมากมาย ทำให้เครื่องคอมพิวเตอร์ จะออกแบบซับซ้อนมากขึ้น และสามารถเป็นโปรแกรมย่อยๆ ในการกำหนดชุดคำสั่งต่างๆ ทางด้านซอฟแวร์ก็มีระบบควบคุมที่สามรถสูง ทั้งในรูประบบแบ่งเวลาการทำงานให้กับงานหลายๆอย่าง
ยุคที่ 4. อยู่ระหว่างปี พ.ศ. 2513 จนถึงปัจจุบัน เป็นยุคของคอมพิวเตอร์ที่ใช้วงจรรวมความจุสูงมาก เช่น ไมโครเซสเซอร์ที่บรรจุทรานซิสเตอร์นับหมื่นนับแสนตัว ทำให้ขนาดเครื่องคอมพิวเตอร์มีขนาดเล็กลง สามารถตั้งบนโต๊ะในสำนักงานหรือพกพาเหมือนกระเป๋าหิ้วไปในที่ต่างๆได้ ขณะเดียวกันระบบซอฟแวร์ก็ได้พัฒนาขีดความสามรถสูงขึ้นมาก มีโปรแกรมสำเร็จให้เลือกใช้กันมาก ทำให้เกิดความสะดวกในการใช้งานอย่างกว้างขวาง
ยุคที่ 5. เป็นคอมพิวเตอร์ที่มนุษย์พยามยามนำมาเพื่อช่วยในการตัดสินใจและแก้ปัญหาให้ดียิ่งขึ้น โดยจะมีการเก็บความรอบรู้เข้าไว้ในเครื่อง สามารถเรียกค้นและดึงความรู้ที่สะสมไว้มาใช้งานให้เกิดประโยชน์ คอมพิวเตอร์ยุคนี้เป็นผลจากวิชาการด้านปัญญา ประดิษฐ์ ประเทศต่างๆทั่วโลกไม่ว่าจะเป็นสหรัฐอเมริกา ญี่ปุ่น และประเทศในทวีปยุโรปกำลังสนใจค้นคว้าและพัฒนาทางด้านนี้กันอย่างจริงจัง