ในการเฉลิมฉลองวันคล้ายวันเกิดของอลันทัวริง Google ตีพิมพ์Doodleซึ่งแสดงเครื่อง Doodle คือเครื่องจักรชนิดใด? มันสามารถแสดงภาษาทัวริงที่สมบูรณ์ได้หรือไม่
มีความแตกต่างที่ชัดเจนกับเครื่องทัวริงคลาสสิก: เทป จำกัด ข้อ จำกัด ในการเชื่อมต่อสถานะ ...
ดูเดิลยังคงมีอยู่ที่นี่
(หน้าจอด้านบนขวาแสดงผลลัพธ์ที่ต้องการ)
เทปที่อยู่ตรงกลางจะถูกแบ่งออกเป็นสี่เหลี่ยมที่สามารถเก็บว่างเปล่าเป็นศูนย์หรือหนึ่ง หัวอยู่ในตำแหน่งเหนือหนึ่งในสี่เหลี่ยมและใช้สำหรับการอ่านและการเขียน
ใต้เทปคุณจะเห็นลูกศรสีเขียวซึ่งคุณสามารถคลิกเพื่อเริ่มเครื่อง มีวงกลมสองเส้นถัดจากมันและบางวงเชื่อมต่อกัน ฉันจะเรียกพวกเขาว่า "รัฐ"
หลังจากที่เครื่องเริ่มขึ้นสถานะแรกทางด้านขวาของปุ่มสีเขียวจะสว่างขึ้นจากนั้นสถานะถัดไปทางขวาและอื่น ๆ ... แต่ละสถานะมีหนึ่งในคำสั่งต่อไปนี้:
- blank = ไม่ทำอะไรเลย (เพิ่งย้ายไปยังสถานะถัดไป)
- 1 = เขียนหนึ่งไปยังเทปที่ตำแหน่งปัจจุบันของหัว
- 0 = เขียนค่าศูนย์ลงในเทปที่ตำแหน่งปัจจุบันของส่วนหัว
- ลูกศรไปทางซ้าย = ย้ายหัวหนึ่งก้าวไปทางซ้าย
- ลูกศรไปทางขวา = เลื่อนหัวหนึ่งก้าวไปทางขวา
- condition: หากค่าภายใต้ส่วนหัวเท่ากับค่าที่แสดงในช่องสี่เหลี่ยมลงไปที่บรรทัดที่สองของสถานะ ถ้าไม่ใช่ให้ย้ายไปยังสถานะถัดไปทางด้านขวา
- กระโดดไปทางซ้าย: กลับสู่สถานะก่อนหน้า (คงที่) แต่อยู่ที่แถวบนเท่านั้น [ฉันลืมไปแล้วหนึ่งอันขอบคุณ @Marzio!]
ไม่มีทางที่จะ "ทับซ้อน" กระโดดสองครั้ง เครื่องหยุดเมื่อออกจากสถานะและไม่มีสถานะถัดไปทางด้านขวา
(หลังจากที่เครื่องหยุดเนื้อหาของเทปจะถูกเปรียบเทียบกับเนื้อหาของจอแสดงผล แต่ฉันไม่คิดว่าจะเป็นส่วนหนึ่งของการทำงานที่ตั้งใจไว้ของเครื่อง)