เนื้อหาวิชา : 1 : ความรู้พื้นฐานทางด้านคอมพิวเตอร์
ข้อ 11. ข้อใดคือส่วนประกอบหลักของคอมพิวเตอร์
1 : หน่วยรับข้อมูล หน่วยประมวลผลกลาง หน่วยความจำหลัก หน่วยเก็บข้อมูลสำรอง และหน่วยแสดงผล
2 : หน่วยรับข้อมูล หน่วยประมวลผลกลาง หน่วยความจำหลัก หน่วยความจำสำรอง และหน่วยแสดงผล
3 : หน่วยรับข้อมูล หน่วยประมวลผลกลาง หน่วยความจำหลัก และหน่วยแสดงผล
4 : หน่วยประมวลผลกลาง หน่วยความจำหลัก หน่วยเก็บข้อมูลสำรอง และหน่วยแสดงผล
เฉลย: 1
อธิบาย: Input → CPU → Memory → Storage → Output
ข้อ 12. จงพิจารณาว่าข้อความใดกล่าวถูกต้องสำหรับการทำงานของคำสั่งต่อไปนี้
double d = 9.9; int i = 2; i = (int)d;
1 : ชนิดของข้อมูลตัวแปร d มีการเปลี่ยนแปลง
2 : ค่าที่จัดเก็บในตัวแปร d มีการเปลี่ยนแปลง
3 : ค่าที่จัดเก็บในตัวแปร i มีการเปลี่ยนแปลง
4 : ค่าที่จัดเก็บในตัวแปร i และ d มีการเปลี่ยนแปลง
เฉลย: 3
อธิบาย:
i = (int)d; คำสั่งในภาษาซี คือการแปลงค่า d เป็นจำนวนเต็มชั่วคราว แล้วนำไปเก็บใน i ทำให้ค่า i เปลี่ยนจาก 2 เป็น 9 แต่ d ยังเป็น 9.9 เหมือนเดิม
Note:
i = (int)d; ในภาษา C/C++ หมายถึงการ แปลงชนิดข้อมูล (Type Casting)
● d เป็นตัวแปรชนิด double (หรือ floating-point)
● (int) คือการ cast ค่า d ให้กลายเป็นชนิด int
● ผลลัพธ์คือ i จะได้รับค่าเป็นจำนวนเต็ม โดย ตัดทศนิยมทิ้ง ไม่ใช่การปัดเศษ
▶ จากหนังสือ การเขียนโปรแกรมภาษาซี โดย วิจักษณ์ ศรีสัจจะเลิศวาจา, ดุษฎี ประเสริฐฐิติพงษ์ ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่
ข้อ 13. คำสั่งใดที่ทำการเปลี่ยนแปลงค่าที่จัดเก็บในตัวแปร x
1 : x +=3;
2 : y=x+3;
3 : x *=1;
4 : x /=1;
เฉลย: 1
อธิบาย:
x += 3 → x = x+3
หมายถึงนำค่า x เดิมบวก 3 แล้วเก็บกลับใน x จึงทำให้ค่า x เปลี่ยนแน่นอน
ส่วน x *= 1 → x = x*1
x /= 1 → x = x/1
ค่า x ยังเท่าเดิม
ข้อ 14. ข้อใดคือหน้าที่ของ Compiler
1 : ช่วยติดต่อกับอุปกรณ์คอมพิวเตอร์
2 : ช่วยแก้ไขรหัสคำสั่งโปรแกรมให้ถูกต้อง
3 : ช่วยจัดสรรทรัพยากรภายในระบบคอมพิวเตอร์ให้กับโปรแกรมต่าง ๆ
4 : ช่วยแปลคำสั่งภาษาโปรแกรมต่าง ๆ ให้คอมพิวเตอร์เข้าใจและทำงานได้
เฉลย: 4
อธิบาย: Compiler มีหน้าที่แปลโปรแกรมที่เขียนด้วยภาษาระดับสูงให้เป็นภาษาเครื่องหรือรูปแบบที่คอมพิวเตอร์นำไปทำงานได้
Note: Compiler = ตัวแปลภาษาโปรแกรม
ข้อ 15. ข้อใดต่อไปนี้คือความหมายของโปรแกรม
1 : ชุดคำสั่งเพื่อทำให้คอมพิวเตอร์ปฏิบัติงาน
2 : สัญลักษณ์ที่สื่อความหมายให้เครื่องคอมพิวเตอร์และคนสามารถสื่อสารกันได้โดยผ่านกรรมวิธีที่กำหนดขึ้น
3 : ชุดของเลขฐานสองอาทิ 01101011 ที่คอมพิวเตอร์เข้าใจ
4 : ถูกทุกข้อ
เฉลย: 4
อธิบาย: โปรแกรมคือชุดคำสั่งที่ทำให้คอมพิวเตอร์ทำงาน และคำสั่งเหล่านั้นอาจถูกเขียนด้วยภาษาที่มนุษย์เข้าใจ ก่อนแปลเป็นรหัสที่คอมพิวเตอร์เข้าใจ
ข้อ 16. เครื่องคอมพิวเตอร์ในยุคที่ 2 ใช้เทคโนโลยีใด
1 : ทรานซิสเตอร์ (Transistors)
2 : หลอดแก้วสุญญากาศ (Vacuum tubes)
3 : ไมโครโพรเซสเซอร์ (Microprocessors)
4 : วงจรรวม (Integrated circuits)
เฉลย: 1
อธิบาย: คอมพิวเตอร์ยุคที่ 2 ใช้ทรานซิสเตอร์แทนหลอดสุญญากาศ ทำให้เครื่องมีขนาดเล็กลง ใช้พลังงานน้อยลง และทำงานดีขึ้น
ข้อ 17. การประมวลคำสั่งในลักษณะการทำงานแบบสายท่อ (pipelining) สอดคล้องกับข้อใด
1 : การประมวลผลแบบแถวลำดับ (Array processing)
2 : การประมวลผลแบบขนาน (Parallel processing)
3 : สถาปัตยกรรม Von Neumann
4 : ระบบหลายตัวประมวลผล (Multiprocessing)
เฉลย: 3
อธิบาย:
● Pipelining: เป็นการเพิ่มความเร็วด้วยการ แบ่งลำดับขั้นตอน ทำงานสลับกันในท่อเดียว เหมือนแบ่งพนักงาน 1 คนทำ 5 ขั้นตอน เช่น เราไม่ต้องรอให้ขนมชิ้นแรกแพ็คเสร็จก่อนถึงจะเริ่มนวดแป้งชิ้นที่สอง แต่เราสามารถนวดแป้งชิ้นที่สองไปพร้อมกับที่กำลังอบชิ้นแรกได้ เป็นวิธีการจัดการทรัพยากรที่มีอยู่หนึ่งเดียวให้มีประสิทธิภาพสูงขึ้น
● Array/Parallel/Multiprocessing: เป็นการนำ CPU หลายตัวมาช่วยกันทำไปพร้อมๆ กัน เหมือนการแบ่งคน 4 คนมาช่วยกันทำอาหารคนละเมนูในครัวเดียวกัน
● Von Neumann: คือสถาปัตยกรรมการออกแบบที่กำหนดว่าคอมพิวเตอร์ต้องมี CPU, หน่วยความจำ (ที่เก็บทั้งข้อมูลและคำสั่ง), และระบบ Bus เชื่อมต่อกัน โดยหัวใจสำคัญคือ การทำงานเป็นลำดับขั้นตอน (Sequential Processing) คือ ดึงคำสั่งมา (Fetch) -> แปลคำสั่ง (Decode) -> ประมวลผล (Execute) อย่างเป็นลำดับไปเรื่อยๆ จนจบคำสั่งหนึ่ง แล้วค่อยเริ่มคำสั่งถัดไป
สถาปัตยกรรม Von Neumann สอดคล้องกับ การประมวลผลคำสั่ง แบบ (pipelining) โดยแนวคิดคือ CPU ทำงานกับคำสั่งเป็นลำดับขั้น เช่น ดึงคำสั่ง แปลคำสั่ง และประมวลผล
ข้อ 18. ข้อใดเป็นความแตกต่างระหว่าง Compiler และ Interpreter ที่ถูกต้อง
1 : Compiler ทำหน้าที่แปลภาษาคอมพิวเตอร์ทีละบรรทัด แต่ Interpreter จะแปลภาษาทั้งโปรแกรม
2 : Compiler แปลได้เฉพาะภาษาเครื่อง แต่ Interpreter จะแปลได้ทุกภาษา
3 : Compiler จะทำการแปลภาษาคอมพิวเตอร์ทั้งโปรแกรม แต่ Interpreter จะแปลภาษาคอมพิวเตอร์บรรทัดต่อบรรทัด
4 : ในการ Debug โปรแกรม ควรใช้ Compiler ในการแปลมากกว่า Interpreter เพราะจะหาข้อผิดพลาดได้ง่ายกว่า
เฉลย: 3
อธิบาย: Compiler = แปลทั้งโปรแกรม, Interpreter = แปลทีละบรรทัด
ข้อ 19. หลังจากที่ทำการเขียนโปรแกรมจนเสร็จเรียบร้อยแล้ว จะต้องคัดลอกไฟล์ใดหากต้องการนำโปรแกรมไปให้ผู้อื่นใช้งาน
1 : Executable File
2 : Source File
3 : Object File
4 : Library File
เฉลย: 1
อธิบาย: ถ้าต้องการให้ผู้อื่นใช้งานโปรแกรม ควรส่งไฟล์ที่รันได้โดยตรงหรือ Executable File เช่น .exe ไม่ใช่ไฟล์โค้ดต้นฉบับ
ข้อ 20. ข้อใดที่ไม่ใช่ส่วนประกอบของคอมพิวเตอร์
1 : คีย์บอร์ด
2 : เมาท์
3 : จอภาพ
4 : กล่องเก็บซอล์ฟแวร์
เฉลย: 4
อธิบาย: คีย์บอร์ด เมาส์ และจอภาพเป็นอุปกรณ์คอมพิวเตอร์ แต่กล่องเก็บซอฟต์แวร์ไม่ใช่ส่วนประกอบของคอมพิวเตอร์