สารบัญ:

Farmer, Fox, Goose, Grain Puzzle: 6 ขั้นตอน
Farmer, Fox, Goose, Grain Puzzle: 6 ขั้นตอน

วีดีโอ: Farmer, Fox, Goose, Grain Puzzle: 6 ขั้นตอน

วีดีโอ: Farmer, Fox, Goose, Grain Puzzle: 6 ขั้นตอน
วีดีโอ: The River Crossing Riddle | The Maths Guy 2024, พฤศจิกายน
Anonim
ชาวนา, สุนัขจิ้งจอก, ห่าน, ปริศนาเมล็ดพืช
ชาวนา, สุนัขจิ้งจอก, ห่าน, ปริศนาเมล็ดพืช

เมื่อฉันยังเป็นเด็ก ฉันหยิบหนังสือที่เป็นบรรพบุรุษของฉันขึ้นมา ชื่อว่า The Scientific American Book Of Projects For The Amateur Scientist ฉันยังมีหนังสืออยู่ และความเข้าใจของฉันก็คือมันเป็นหนังสือที่หาได้ยากในทุกวันนี้ แต่คุณสามารถอ่านออนไลน์ได้แล้ว หนังสือเล่มนี้มีไว้เพื่อแนะนำฉันในหลายๆ อย่าง แต่บทที่กระตุ้นความสนใจของฉันคือตอนหนึ่งเกี่ยวกับเครื่องจักรทางคณิตศาสตร์ มันอาจจะเป็นสิ่งที่ทำให้ฉันเริ่มอาชีพการพัฒนาซอฟต์แวร์ในที่สุด

ในบทนี้เป็นคำอธิบายของเครื่องไขปริศนาโดยใช้วงจรของเวลา… ซึ่งมาก่อนวงจรรวมที่ทันสมัยหรือแม้แต่ทรานซิสเตอร์ (โดยใช้รีเลย์) แต่มีแนวคิดบางอย่างที่เหมือนกัน นั่นคืออุปกรณ์ลอจิกซึ่งโดยพื้นฐานแล้วเป็นสิ่งเดียวกันกับที่คอมพิวเตอร์สมัยใหม่ยังคงใช้อยู่ในปัจจุบัน

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

ขั้นตอนที่ 1: วัสดุที่จำเป็น

คุณสามารถสร้างสิ่งนี้ได้ทั้งหมดใน Tinkercad Circuits และจำลองการทำงานที่แท้จริงของปริศนา

ถ้าคุณต้องการสร้างมันทางกายภาพ นี่คือสิ่งที่คุณต้องการ:

4 สวิตช์สลับหรือสไลด์

1 ปุ่มกด (ชั่วขณะ)

2 เขียงหั่นขนมขนาดเล็ก

9 LEDs.

ตัวต้านทาน 9 1K

1 7475 ชิปสลักสี่เหลี่ยม

2 7408 รูปสี่เหลี่ยมและประตู

1 7432 รูปสี่เหลี่ยมหรือประตู

ก้อนแบตเตอรี่ 1 ก้อนบรรจุเซลล์ AA หรือ AAA 3 ก้อน

ชุดสายจัมเปอร์

สำหรับชิปซีรีส์ 74xx คุณสามารถใช้รูปแบบใดก็ได้ IE รุ่น 74xx เป็น TTL ดั้งเดิม แต่คุณยังสามารถใช้รุ่น 74LSxx (ใช้พลังงานต่ำกว่า) หรือ 74HCxx (แม้แต่รุ่น cmos ที่ใช้พลังงานต่ำกว่า) เป็นต้น โปรดจำไว้ว่ารุ่น 74xx และ 74LSxx นั้นง่ายต่อการจัดการ แต่ รูปแบบอื่นๆ ทั้งหมดเป็นไฟฟ้าสถิตที่ละเอียดอ่อน

ขั้นตอนที่ 2: ลอจิกบูลีน

ตรรกะบูลีน
ตรรกะบูลีน
ตรรกะบูลีน
ตรรกะบูลีน

ตรรกะบูลีนอาจฟังดูน่ากลัว แต่จริงๆ แล้วค่อนข้างเรียบง่าย บูลีนหมายความว่าคุณกำลังจัดการกับ 1 และ 0 เท่านั้นหรือจริงและเท็จ หรือในอุปกรณ์อิเล็กทรอนิกส์ + และ - ส่วนตรรกะของมันก็แค่ "ถ้าเป็นอย่างนั้น" เท่านั้น การดำเนินการทางตรรกะพื้นฐานที่สุดเป็นเพียงสามสิ่งนี้: AND, OR และ NOT สิ่งเหล่านี้เรียกว่าเกทเพราะโดยพื้นฐานแล้วทำหน้าที่เป็นเกตตามตัวอักษรของกระแสไฟฟ้าผ่านวงจร

ประตู AND ทำงานดังนี้ มันมีสองอินพุตและหนึ่งเอาต์พุต อินพุตทั้งสองสามารถเป็น 1 หรือ 0 และเอาต์พุตคือ 1 หรือ 0 สำหรับเกท AND หากอินพุตทั้งสองเป็น 1 เอาต์พุตจะเป็น 1 มิฉะนั้น เอาต์พุตจะเป็นเอาต์พุต 0

สำหรับเกท OR มันมีสองอินพุตและหนึ่งเอาต์พุต หากอินพุตตัวใดตัวหนึ่งเป็น 1 เอาต์พุตจะเป็น 1

เกทสุดท้ายคือเกท NOT และมีเพียงหนึ่งอินพุทและเอาท์พุทเดียวเท่านั้น หากอินพุตเป็น 1 เอาต์พุตจะเป็น 0 หากอินพุตเป็น 0 เอาต์พุตจะเป็น 1

เกท OR และ AND ยังสามารถมีอินพุตได้มากกว่า 2 อินพุต สำหรับการทำให้เข้าใจง่าย สามารถแสดงด้วย 2 บรรทัดขึ้นไปในเกตเดียว แต่จริงๆ แล้ว 3 อินพุตเกตเป็นเพียง 2 อินพุตเกต 2 เกตโดยหนึ่งป้อนเข้าอีกเกตหนึ่ง

ตอนนี้คุณรู้ทุกสิ่งที่คุณจำเป็นต้องรู้เพื่อสร้างคอมพิวเตอร์ แม้แต่คอมพิวเตอร์ที่ทันสมัยที่สุดก็ยังใช้สามสิ่งนี้ ถึงแม้ว่าพวกมันอาจใช้หลายล้านตัวก็ตาม

มาสร้างปริศนากันเถอะ

ขั้นตอนที่ 3: Farmer, Fox, Goose and Grain Puzzle

ปริศนาชาวนา จิ้งจอก ห่าน และเมล็ดพืช
ปริศนาชาวนา จิ้งจอก ห่าน และเมล็ดพืช

สิ่งแรกในหนังสือเล่มนี้คือวงจรตรรกะเพื่อสร้างปริศนาคลาสสิกของชาวนา สุนัขจิ้งจอก ห่าน และเมล็ดพืช ปริศนานี้มีมาหลายร้อยปีแล้วในรูปแบบต่างๆ มันเป็นปริศนาพื้นฐานของตรรกะที่มีกฎเพียงไม่กี่ข้อ ปริศนามีดังนี้

ชาวนามีสุนัขจิ้งจอก ห่าน และธัญพืช เขามาที่แม่น้ำที่เขาต้องข้ามและมีเรือลำหนึ่ง แต่เรือลำหนึ่งสามารถอุ้มเขาและสิ่งอื่น ๆ ได้ทีละอย่างเท่านั้น

เขาทิ้งสุนัขจิ้งจอกไว้กับห่านไม่ได้ เพราะสุนัขจิ้งจอกจะกินห่าน นั่นคือสิ่งที่สุนัขจิ้งจอกทำ มันเป็นแค่ธรรมชาติของพวกมัน

เขาไม่สามารถทิ้งห่านไว้กับเมล็ดพืชได้ เพราะห่านจะกินมัน

เขาจะพาทั้งสามข้ามแม่น้ำไปอย่างปลอดภัยได้อย่างไร?

ในการสร้างปริศนานี้ เราต้องการบางสิ่ง อย่างแรก เริ่มต้นด้วยสวิตช์สี่ตัว สวิตช์หนึ่งตัวสำหรับชาวนาแต่ละคน สุนัขจิ้งจอก ห่าน และเมล็ดพืช นี่คือวิธีที่เราจะตั้งค่าซึ่งจะไปบนเรือ

ประการที่สอง เราต้องไขปริศนาเพื่อจดจำว่าทุกอย่างอยู่ที่ไหนจากขั้นตอนหนึ่งไปอีกขั้น

จากนั้นเราต้องมีปุ่มเพื่อบอกเวลาที่จะย้ายเรือ

สุดท้ายนี้ เราต้องการตรรกะบางอย่างในการบังคับใช้กฎ

ขั้นตอนที่ 4: หน่วยความจำ

หน่วยความจำ
หน่วยความจำ
หน่วยความจำ
หน่วยความจำ

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

วันนี้เราจะใช้ชิ้นส่วนทั่วไปและราคาไม่แพงที่เรียกว่าสลัก 4 บิต 'บิต' ในตรรกะของคอมพิวเตอร์หมายถึง 1 หรือ 0 ตัวเดียว ซึ่งเหมือนกับตัวเลข วงจรรวมนี้ (หรือ "IC" หรือ "Chip") ประกอบด้วย 4 ส่วนประกอบลอจิกที่เรียกว่ารองเท้าแตะ ฟลิปฟล็อปเป็นเพียงสองสามเกทที่กำหนดค่าไว้ ดังนั้นเมื่อคุณให้มันเป็น 1 หรือ 0 เป็นอินพุต มันจะเอาท์พุตเป็น 1 หรือ 0 จากนั้นจะ 'ติดอยู่' จึงได้ชื่อว่าพลิก/ฟล็อป มันจะพลิกจาก 1 เป็น 0 หรือฟลอปจาก 0 เป็น 1 (หรือเป็นในทางกลับกัน?) แล้วอยู่ที่นั่น โดยพื้นฐานแล้วจะทำสิ่งเดียวกับรีเลย์สี่ตัวในวงจรเก่า

คุณสามารถสร้างฟลิปฟล็อปอย่างง่ายโดยมีเพียงสองเกท แต่ตัวที่อยู่ในสลักนี้มีคุณสมบัติพิเศษ (ต้องมีเกทเพิ่มอีกสองสามเกท) แทนที่จะเปลี่ยนเอาต์พุตทันทีโดยเปลี่ยนอินพุต มีอินพุตอื่นที่เปิดหรือปิดอินพุต โดยปกติจะปิดการใช้งาน วิธีนี้ช่วยให้คุณตั้งค่าสวิตช์ได้ 2 ตัว (ชาวนาและอีกตัวหนึ่ง) ก่อนที่มันจะพยายาม 'ส่ง' เรือไปอีกด้านหนึ่ง วงจรของเราฉลาดกว่าวงจรเก่าอยู่แล้ว

ตอนนี้เราสามารถกำหนดและจดจำตำแหน่งของหลักการทั้งหมดในปริศนาของเราได้แล้ว

นี่คือวงจรของเราจนถึงตอนนี้: สลัก 4 บิต

ขั้นตอนที่ 5: ตรรกะของกฎ

ลอจิกกฎ
ลอจิกกฎ

ในการบังคับใช้กฎและระบุว่ามีปัญหาเมื่อใด เราจะใช้ลอจิกเกทบูลีนเพื่อนำข้อจำกัดที่เราต้องการไปใช้

เราต้องการการทดสอบสี่ครั้งเพื่อพิจารณาว่ามีปัญหาหรือไม่ หากข้อใดข้อหนึ่งเป็นจริง ให้สัญญาณไฟเตือน

1. ถ้าข้าวกับห่านอยู่อีกฟากหนึ่งของแม่น้ำไม่ใช่ชาวนา

2.ถ้าสุนัขจิ้งจอกกับห่านอยู่อีกฟากหนึ่งของแม่น้ำไม่ใช่ชาวนา

3.ถ้าชาวนาข้ามแม่น้ำแล้วไม่มีจิ้งจอกและไม่มีห่านอยู่ด้วย

4. หากชาวนาข้ามแม่น้ำแล้วไม่มีเมล็ดพืชและห่านอยู่ด้วย

สังเกตวิธีที่ฉันได้ใช้วลีนี้เพื่อให้ตรงกับตรรกะที่เราจะใช้ ซึ่งก็คือประตู AND ที่มีทั้งเอาต์พุตปกติหรือกลับด้านจากสลัก ส่วนแบบกลับด้านจะทำหน้าที่เหมือน "ไม่" หรือ "ไม่ใช่"

เนื่องจากสิ่งใดสิ่งหนึ่งอาจเป็นจริง ทำให้เกิดปัญหา พวกเขาทั้งหมดป้อนเข้าเกท OR

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

ขั้นตอนที่ 6: สร้างต้นแบบวงจรจริง

ต้นแบบวงจรจริง
ต้นแบบวงจรจริง

ตอนนี้เราสามารถสร้างวงจรการทำงานที่แท้จริงได้แล้ว ด้วยการใช้วงจร Tinkercad เราสามารถทำได้ด้วยการจำลองรูปลักษณ์และการทำงานของฮาร์ดแวร์ที่แท้จริง

Tinkercad สร้างขึ้นในสลัก 7475 4 บิต เพื่อให้ส่วนนั้นง่าย สำหรับเกท ฉันเลือกใช้ชิปสองตัวที่มีเกท 4 และเกท (7408) ในการสร้างสี่, 3 อินพุตและเกตเราใช้สองเกตและเกตที่มีเอาต์พุตของอันหนึ่งไปเป็นอินพุต 1 อันของอีกอันหนึ่ง สิ่งนี้ปล่อยให้ 1 อินพุตในวินาทีและ 2 อินพุตในครั้งแรก สร้าง 3 อินพุตและเกต สำหรับประตู OR ฉันทำสิ่งเดียวกัน ชิปเกต OR สี่ตัวใช้เกท OR สองเกท โดยเอาต์พุตจะเข้าสู่เกต OR ที่สาม เหลือประตูเดียวที่ไม่ได้ใช้งาน

เรียกใช้การจำลองบนวงจร Tinkercad

แนะนำ: