5 คะแนน โดย GN⁺ 2024-11-02 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

แนะนำเกม Nand

  • เกม Nand เป็นเกมที่เริ่มจากคอมโพเนนต์พื้นฐานแล้วค่อย ๆ สร้างคอมพิวเตอร์ขึ้นมา
  • ในแต่ละเลเวลจะมีโจทย์ให้สร้างคอมโพเนนต์ที่ทำงานตามสเปกที่กำหนด
  • คอมโพเนนต์นี้สามารถนำไปใช้เป็นบล็อกสำหรับประกอบในเลเวลถัดไปได้
  • ไม่จำเป็นต้องมีความรู้พื้นฐานด้านสถาปัตยกรรมคอมพิวเตอร์หรือซอฟต์แวร์มาก่อน และไม่ต้องใช้ทักษะคณิตศาสตร์ที่เกินกว่าการบวกและการลบ
  • อาจต้องใช้ความอดทน และบางโจทย์อาจใช้เวลาพอสมควรกว่าจะหาคำตอบได้

โจทย์แรก: สร้างคอมโพเนนต์ Nand

  • โจทย์: ต้องเชื่อมอินพุตเข้ากับเอาต์พุต เพื่อให้เมื่ออินพุต a และ b เป็น 1 ทั้งคู่ เอาต์พุตจะเป็น 0
  • 1 หมายถึงมีกระแสไฟฟ้าไหล และ 0 หมายถึงไม่มีกระแสไฟฟ้าไหล
  • อินพุต V จะมีกระแสคงที่ที่เป็น 1 อยู่เสมอ

สเปกที่แน่นอน

  • ความสัมพันธ์ระหว่างอินพุตและเอาต์พุต:
    • เมื่อ a = 0, b = 0 เอาต์พุต = 1
    • เมื่อ a = 0, b = 1 เอาต์พุต = 1
    • เมื่อ a = 1, b = 0 เอาต์พุต = 1
    • เมื่อ a = 1, b = 1 เอาต์พุต = 0

สรุปโดย GN⁺

  • NandGame เป็นเครื่องมือที่มีประโยชน์สำหรับทำความเข้าใจแนวคิดพื้นฐานของสถาปัตยกรรมคอมพิวเตอร์
  • ผ่านเกมนี้สามารถเรียนรู้การทำงานของลอจิกเกตได้อย่างเป็นธรรมชาติ
  • เครื่องมือการเรียนรู้ที่มีลักษณะคล้ายกัน ได้แก่ TinkerCAD Circuits และ Logisim
  • เกมนี้ต้องอาศัยความอดทน และสามารถช่วยพัฒนาทักษะการแก้ปัญหาได้

1 ความคิดเห็น

 
GN⁺ 2024-11-02
ความคิดเห็นจาก Hacker News
  • ชอบเกม และเคยสนุกกับการซื้อบอร์ดพัฒนา FPGA ขนาดเล็กมาสร้างชุดคำสั่งของตัวเองและ soft CPU
    • เลือกบอร์ด iCE40 เพราะรองรับโอเพนซอร์สได้ดีพอสมควรและราคาถูก
  • เคยเล่นเกมคล้ายกันชื่อ Turing Complete และมันคล้ายกับหนังสือ Nand2Tetris มาก
  • ข้อมูลเกี่ยวกับ NandGame:
    • NandGame – เกมสร้างคอมพิวเตอร์ตั้งแต่ศูนย์ ซึ่งถูกพูดถึงมาหลายครั้ง
    • เป็นกระบวนการสร้างคอมพิวเตอร์แบบเดียวกับ Nand2Tetris โดย Nand2Tetris ใช้ HDL แบบข้อความ ส่วน NandGame ใช้อินเทอร์เฟซแบบกราฟิก
    • ทั้งสองแบบทั้งสนุกและให้ความรู้ แต่คิดว่า NandGame สนุกกว่า
    • ถ้าทำ Nand2Tetris จบ ก็จะมีแบบฝึกเพิ่มเติมที่ช่วยให้ทำงานกับซอฟต์แวร์คอมพิวเตอร์ในระดับสูงขึ้นได้
  • เคยเรียนเอกวิศวกรรมอิเล็กทรอนิกส์ แต่ตอนนี้ทำงานสายซอฟต์แวร์แล้ว และลืมความรู้เก่าไปเยอะ
    • สามารถสร้าง half adder ได้สำเร็จด้วยการลองผิดลองถูก
  • หลังจากสร้างเกต NAND แล้ว ก็จะได้โครงสร้างที่คล้ายกับโครงข่ายประสาท
    • เมื่อพิจารณาความหมายของอินพุต/เอาต์พุต ก็สงสัยว่าจะฝึกโครงข่ายประสาทด้วยวิธีอื่นที่ไม่ใช่ backpropagation ได้หรือไม่
  • ไม่มีความรู้ด้านนี้เลย และต้องการคำอธิบายว่าชิ้นส่วนแต่ละอย่างทำหน้าที่อะไร
    • สงสัยเกี่ยวกับบทบาทของรีเลย์ ความหมายของ "c" และ "in" รวมถึงเหตุผลที่ต้องมีแหล่งจ่ายไฟแยกต่างหาก
  • สงสัยว่าวันที่สามารถเล่น Doom ได้บนหน้านี้จะมาถึงเมื่อไร
  • ขอแนะนำเกมชื่อ MHRD และอยากให้ทุกคนได้ลองสักครั้ง
  • โปรเจกต์นี้ดูยอดเยี่ยมมาก และรู้สึกเสียดายที่อ่านหนังสือไม่จบจนถึงท้ายเล่ม
    • อยากลองทำอะไรอีกหลายอย่าง