ওয়্যারওয়ার্ল্ডে একটি ডিজিটাল ঘড়ি তৈরি করুন


32

এই গেম অফ লাইফ প্রশ্নের মাধ্যমে অনুপ্রাণিত ।

ওয়্যারওয়ার্ল্ড "তারগুলি" দিয়ে প্রবাহিত "ইলেকট্রন" সিমুলেট করে, সাধারণ ব্যবস্থা যার সাধারণ লজিক গেট আচরণ তৈরি করে।

আমি আপনাকে ওয়্যারওয়ার্ল্ড সেলুলার অটোমেটনে একটি ডিজিটাল ঘড়ি তৈরি করার জন্য চ্যালেঞ্জ জানাই। আপনার ঘড়িটি অবশ্যই স্বাভাবিক ফ্যাশনে 00:00 থেকে 23:59 বা এএম / পিএম সূচক সহ 11:59 অবধি গণনা করতে হবে, তারপরে পুনরায় সেট করুন।

আপনার এন্ট্রি দৃশ্যত দুটি অংশে বিভক্ত করা উচিত। পার্ট এ-তে সমস্ত অ-ডিসপ্লে যুক্তি যুক্ত থাকতে হবে, অঙ্কগুলি বাড়ানো এবং লুপ করার সাথে জড়িত সমস্ত অংশ। পার্ট বি হ'ল প্রদর্শন এবং যুক্তি যা এটি চালিত করে। এই দুটি অংশের মধ্যে কেবল সংযোগটি বিসিডিতে সময়ের চার অঙ্কের প্রতিনিধিত্বকারী 16 টি তারের (এএম / পিএম সূচকটির জন্য একটি optionচ্ছিক তারের সাথে, এবং যদি আপনার সংকেতগুলি ধারাবাহিক না হয় তবে সিগন্যাল ক্লক লাইনের জন্য একটি optionচ্ছিক তারের) হওয়া উচিত। (সম্পাদনা: সর্বদা শূন্য তারগুলি বাদ দেওয়া যেতে পারে)

ঘড়ির আচরণের সময় সামঞ্জস্যপূর্ণ হওয়া উচিত। সিমুলেশনগুলির মধ্যে রাষ্ট্রগুলির মধ্যে 1440 ট্রানজিশনের জন্য একই সংখ্যক টিক নেওয়া উচিত। ১ w টি তারে থাকা যে কোনও ইলেক্ট্রনকে একই সাথে অংশ এ থেকে নির্গত হওয়া উচিত এবং সমান্তরালে তাদের যাত্রা শুরু করা উচিত।

এটি একটি কোড-গল্ফ প্রতিযোগিতা। আপনার স্কোর হ'ল অক্ষের ক্ষেত্রফল এ এর ​​চারদিকে আবদ্ধ বাউন্ডিং বক্স the

সাদৃশ্য অনুসারে, যদি এটি একটি পাঠ্য ভাষা হয় তবে আপনার স্কোরটি 4-বিট আউটপুট উত্পাদনকারী 4 টি-বিট আউটপুট তৈরির ঘড়ি-পরিচালনা ফাংশনের আকার হবে, যা 4 টি কাউন্টারের জন্য একটি লুপ এবং যুক্তি যুক্ত করে, সেই আউটপুটটি ডিকোড করে এবং মুদ্রণ করে না।

আপনার অংশ বি আপনার পছন্দ মত বৃহত্তর বা ছোট হতে পারে। এটি কেবলমাত্র প্রয়োজনীয় যাতে আপনার জমা দেওয়ার আউটপুটটি কারও দ্বারা চালিত হয় তা দেখা যায়, যেহেতু কেবল একটি ওয়্যারওয়ার্ল্ড সার্কিট থেকে আউটপুটগুলি "ডিবাগ" করার সহজ উপায় নেই। অনলাইনে একাধিক বিসিডি-> 7 সেগমেন্ট সার্কিট রয়েছে। আপনি যেকোন একটি ব্যবহার করতে নির্দ্বিধায় বা আপনার যদি ক্লকড সিগন্যাল লাইনের প্রয়োজন হয় তবে নিজের তৈরি করুন এবং অঙ্কের মতো কিছু স্কেলে আপনার AM / PM সূচকটি প্রদর্শন করুন।

সম্পাদনা: পার্ট বি এখন alচ্ছিক। আপনার খালি A অংশের বিসিডি আউটপুট যদি থাকে তবে তা জমা দিতে বিনা দ্বিধায়। ঘড়ির কাজটি নিশ্চিত করা আরও ক্লান্তিকর হবে তবে আমি বিরতিযুক্ত সিমুলেশনে ঠিক এক বিট সারি পড়তে পারি।


এখানে একটি ছোট অনলাইন সিমুলেটর রয়েছে।
ননলাইনফর্ট

আমি এটি নিয়ে কাজ করছি তবে কেবল গত সপ্তাহে এটি দেখেছি তাই আমি সম্ভবত অনুগ্রহটি মিস করব। আমি একটি ওয়্যারওয়ার্ল্ড বিসিডি-> 7-বিভাগের 4-তারের সংস্করণটি খুঁজে পাচ্ছি না; জনপ্রিয় 2-তারের 7-সেগমেন্ট ডিভাইসের (4 গলির সাথে আসে এমনটির মতো) সামনে 4 থেকে 2 রূপান্তরকারী তৈরি করা যেতে পারে। এই ডিভাইসের সাথে একটি সমস্যা হ'ল এটি দেখতে সুন্দর দেখাচ্ছে যদিও এটি আপডেট করা ধীর হয়ে যায় যা পার্ট এ এর ​​আকারকে স্ফীত করে দেবে কারণ এটি সংখ্যা প্রদর্শিত হতে পারে তার চেয়ে দ্রুত পাম্প করতে পারে এবং কৃত্রিমভাবে ধীর হয়ে যেতে হবে।
wyldstallyns

আমার একটি দেড় লক্ষ সেল সেল ওয়ার্কিং পার্ট এ রয়েছে যা আমি কাজগুলি প্রমাণ করতে পারি তবে বর্তমানে বিধি অনুসারে পার্ট
বিয়ের

আমি আশা করিনি বি খন্ডটি কঠিন হবে। অংশে আপনার ইলেকট্রনগুলি কতটা দূরে?
স্পার

1
@ ওয়েল্ডস্ট্যালেন্স এটি 16/12/2016 03: 30: 35Z এ বন্ধ হয়ে যায় (সুনির্দিষ্ট সময়গুলি পেতে আপনি 'আগামীকাল' ঘুরে আসতে পারেন)। আপনাকে অনেক শুভকামনা। আমি সত্যই আপনার ঘড়ি পছন্দ করি। এটি একটি মার্জিতভাবে সহজ ধারণা এবং একটি দুর্দান্ত বাস্তবায়ন। আমাকে অবশ্যই স্বীকার করতে হবে যে শেষ পর্যন্ত আমার কতটা স্থান শেষ হয়েছিল তা নিয়ে আমিও অবাক হয়েছি। এবং আপনার নিজের মধ্যে যে কোনও উন্নতি আসতে পারে তা দেখতে আগ্রহী। সুতরাং, শুভকামনা :)
নিমিরো

উত্তর:


36

ঘড়ির কাঁটা

স্কোর - 53,508 (যার মধ্যে কেবলমাত্র 36,828 টি এল-আকৃতির ডিজাইনের কারণে সক্রিয়ভাবে ব্যবহৃত হয়)

ঘড়ি চলছে

উচ্চমানের রেকর্ডিং - https://1drv.ms/u/s!ArQEzxH5nQLKhvt_HHfcqQKo2FODLQ
গলি প্যাটার্ন - https://1drv.ms/u/s!ArQEzxH5nQLKhvwAmwCY-IPiBuBmBw

গাইডিং নীতিগুলি -

  • যেহেতু এটি আমার প্রথমবারের মতো সেলুলার অটোমেটন ব্যবহার করেছিল আমি বড় আকারের প্রাক তৈরি উপাদানগুলিকে একসাথে স্ট্রিং করা এড়িয়ে চলেছি। একটি বৈধ পদ্ধতি যা আমি গ্রহণ করি নি তা হ'ল বাইনারি সংযোজকটি শূন্য থেকে শুরু হয়ে অবিরত শেষ আউটপুটটিতে একটি যুক্ত করে, তারপরে বিসিডি রূপান্তরকারী, ডেমাল্টিপ্লেক্সার, 7-বিভাগের ডিকোডার এবং 7-বিভাগের ডিসপ্লেতে বাইনারি অনুসরণ করে।
  • ঘড়ির কাঁটা ঠাণ্ডা করা সম্ভব হওয়া উচিত। আমি নিজের উপরে অতিরিক্ত বাধা আরোপ করেছি যে নির্দিষ্ট কন্ডাক্টর সেলে রাখা একটি একক ইলেক্ট্রন হেড সঠিকভাবে ঘড়িটি শুরু করা উচিত। সিমুলেশন শুরুর আগে আমি অনেকগুলি পৃথক ফ্লিপ-ফ্লপ এবং পৃথক সময় উপাদানগুলির যত্ন সহকারে ম্যানুয়াল সিঙ্ক্রোনাইজেশন চাই না।

প্রথম খণ্ড: মিনিট কাউন্টার

অংক

বাইনারিতে 0 থেকে 9 পর্যন্ত গণনা (কমপক্ষে উল্লেখযোগ্য মিনিটের অঙ্কের জন্য) নিম্নলিখিত হিসাবে চলেছে -

0 - 0000
1 - 0001
2 - 0010
3 - 0011
4 - 0100
5 - 0101
6 - 0110
7 - 0111
8 - 1000
9 - 1001

কলাম হিসাবে পড়লে, সর্বনিম্ন তাৎপর্যপূর্ণ (2 ^ 0 ইউনিট বিট স্ট্রিম) 01010101 যায়, 2 ^ 1 ইউনিট প্রবাহটি 0011001100 যায়, 2 ^ 2 ইউনিট প্রবাহটি 0000111100 এবং 2 ^ 3 ইউনিট প্রবাহটি 0000000011 যায় goes

প্রথমটির সহজ - কেবল 01 টি চিরকালের জন্য ফ্লিপ-ফ্লিপ করুন। তৃতীয়টি চারটি 1 টি, ছয় 0s এর একটি স্ট্রিম, ছয়টি শূন্যের দ্বারা স্থানান্তরিত হয়েছে। চতুর্থটি আট 0 এবং দুটি 1 এসের একটি স্রোত।

দ্বিতীয়টি কিছুটা শক্ত কারণ এটি একটি কদর্য অসম্পূর্ণতা পেয়েছে। তবে, আমি লক্ষ্য করেছি যে (যেখানে। কনক্যাট অপারেটর):

0011001100। 0011001100 = 0011001100। নয় (1100110011) = 00110011001100110011 XOR 00000000001111111111 = 5 (0011) XOR 00000000111111111111

(ঘটনাক্রমে, পরবর্তীকালে ইঙ্গিত হিসাবে, আমার ঘড়ির বেশিরভাগটি 60-বিট টিকারের উপর চলে The

নকশা

আউটপুট স্ট্রিমগুলি শীর্ষ থেকে নীচে মিনিটের ইউনিটগুলিতে যায় (2 ^ 0, 2 ^ 1, 2 ^ 2, 2 ^ 3) তারপর দশক মিনিট (2 ^ 0, 2 ^ 2, 2 ^ 1)। নোট করুন যে নীচের দুটি তারগুলি অতিক্রম করা হয়েছে।

মিনিট কাউন্টার টিকা

  1. 120-বিট মূল ঘড়ি।
  2. শীতল শুরুর জন্য একটি ইলেকট্রন কোথায় রাখবেন। কোনও ইলেক্ট্রন লেজ ছাড়াই এটি দুটি দিকে বিভক্ত হয় তবে সাথে সাথে উপরে ডায়োড এইগুলির মধ্যে একটিকে ধরে একটি দুর্দান্ত সাইক্লিং ইলেকট্রন ঘুরে বেড়ায় এবং 120-বেটের লুপকে গোল করে।
  3. 12-বিট গৌণ ঘড়ি।
  4. কন্ডাক্টর + ডায়োডের কয়েল মাধ্যমিক 12-বীট ঘড়ি শুরু করে starts শব্দটি বর্ণনা করতে পারে না যে এই ছোট্ট টুকরোটি কীভাবে বেজায় সিঙ্ক হয়েছিল। আপনাকে ১২০ এবং beat০ বিট ঘড়িগুলি সিঙ্ক করতে হবে, তারপরে 12-বেট এবং ফ্রিকোয়েন্সি হ্যালভার 24-বেট সিউডো ক্লকগুলিতে সিঙ্ক করতে হবে, তারপরে 24-বেটের ঘড়ির সাথে 120-বিট ঘড়িটি বেঁধে রাখতে হবে অন্যথায় XOR গেটটি কাজ করে না ।
  5. ফেজ শিফট
  6. ফ্লিপ-ফ্লপ। ইনপুটটিতে একটি একক ইলেক্ট্রন প্রথমে সেট লাইনটি হিট করে তারপরে খুব নির্দিষ্ট সময়ের পরে, রিসেট লাইনে হিট করে নির্দিষ্টভাবে একটি ডাল দেয়, একটি পালস বের হয়।
  7. রিং লাইনে হ্যাম্পগুলি যোগ করা - ফ্লিপ-ফ্লপের সেট এবং রিসেটের মধ্যে বিলম্ব বাড়ায়। প্রতিটি অতিরিক্ত কুঁচি অতিরিক্ত ডাল দেয়। নীচের ফ্লিপ-ফ্লপটিতে নয়টি অতিরিক্ত কুঁজ রয়েছে, তাই সেট এবং পুনরায় সেট করার মধ্যে দশটি ডাল রয়েছে।
  8. আমার ছদ্মবেশী 2 ^ 1 ইউনিটের মিনিট লাইনের জন্য এক্সওআর গেট।
  9. অ্যান্ড-নট গেট এবং খুব নির্দিষ্ট অংশের দৈর্ঘ্যের অর্থ প্রতিটি ইলেকট্রন ডাল যা অতীতে এসে ডাবলস ফিরে আসে এবং পিছনে ইলেকট্রনকে ধ্বংস করে দেয়। ফ্রিকোয়েন্সি হালভার 12-বেট গৌণ উত্স থেকে 24-বিট ঘড়ি তৈরি করে।
  10. 60-বিট গৌণ ঘড়ি, যা আসলে বেশিরভাগ কাজ করে। একটি ধীর গতির থেকে দ্রুত ঘড়ি শুরু করা সহজ, সুতরাং সবে ব্যবহৃত না হওয়া সত্ত্বেও সবচেয়ে ধীরতম ঘড়ি (120-বীট) মাস্টার। 60-বিট ঘড়িটি এই জিনিসটির হৃদয়।
  11. প্রতিক্রিয়ার ওয়্যার যা কেবলমাত্র 60-বিট ঘড়িটি টিক দিচ্ছে তখন বৈদ্যুতিন বহন করে। এটি 120-বট মাস্টারের কাছ থেকে বারবার পুনরায় চালু হওয়া বন্ধ করতে একটি ও না-গেটের সাথে একত্রে ব্যবহৃত হয়। অন্যথায় অনেক ভয়ঙ্কর জিনিস ঘটে থাকে এবং Ctrl-Z ত্রাণকর্তা।
  12. যে ডায়োডটি 60-বিট ঘড়িটি শুরু হয়েছিল।
  13. এই পুরো ডিভাইসটি একটি ফ্লিপ ফ্লপ, এবং গেট এবং অ্যান্ড-নট গেট মিলিত। এটি একটি ল্যাচ দেয়। একটি স্পন্দন এটি শুরু করে, একটি পালস এটি থামিয়ে দেয়।
  14. দশটি ডাল ইনপুট একটির জন্য 10 টি ডাল ল্যাচটি ক্যালিব্রেট করতে তারের লুপ। এটি ছাড়া আমরা 12 টি ডাল পাই, 8 টি ডাল ছাড়ি। এই দশটি অন অফ ল্যাচগুলি দশ মিনিটের ব্লকের মূল উপাদানগুলি একইভাবে তৈরি করে 6-মাইক্রন (1 পালস) ফ্লিপ-ফ্লপগুলি মিনিট ইউনিটের মূল উপাদানগুলি গঠন করে।
  15. কোল্ড শুরুর প্রাথমিক স্পন্দন ঘড়ির সাথে শুরু হওয়ার সাথে সাথে দুটি ধাক্কা খেয়ে মারা সহ সব ধরণের সমস্যা সৃষ্টি করে। এটি ল্যাচগুলি গণ্ডগোল করে। এই ও গেটটি সিঙ্ক ডালের বাইরে ধরা পড়ে এবং নিষ্পত্তি করে - বিশেষত প্রারম্ভিক নাড়ি।
  16. এটি ডিজাইনের একটি অংশ যা আমি কিছুটা পিছনে পিছনে অনুশোচনা করছি। এটি একটি ইলেক্ট্রন নেয়, এটিকে পাঁচটি ভাগে বিভক্ত করে এবং পাঁচটি ইলেক্ট্রনকে পিছনে ফেলে দেয়, 111111 থেকে 100000 নেয়।
  17. এটি একটি ইলেক্ট্রন নেয় এবং এটি সম্মুখের দিকে সেলাই করে। সুনির্দিষ্ট হতে দুই ধাপ এগিয়ে। এটি 100000 নেয় এবং 101000 তৈরি করে। এটি কম জায়গায় একই প্রভাব অর্জন করতে পারে।
  18. উপরের নিদর্শনগুলি 20 টি, 40 ছাড়িয়ে অর্জনের জন্য নীচের ল্যাচটিতে ঠেলাঠেলি করা হয়। এটি বিভক্ত হয়, অর্ধেকটি 20 টি ইউনিট দ্বারা স্থানান্তরিত হয় এবং তারপরে এইগুলি দশ মিনিটের দুটি হাই অর্ডার বিট স্ট্রিম তৈরি করে।

দ্বিতীয় খণ্ড: আওয়ার কাউন্টার

ব্যাখ্যা

আওয়ার কাউন্টারে ইনপুটটি একক ইলেকট্রন ডাল হয়, একটি ঘন্টা একবার। প্রথম পদক্ষেপটি হ'ল এটি প্রতি বারো ঘন্টা পরে একবারে একটি একক বৈদ্যুতিন নাড়িতে হ্রাস করা। এটি বেশ কয়েকটি "ল্যাচ অ্যান্ড ক্যাচ" আদিম ব্যবহার করে অর্জন করা হয়েছে।

একটি "ল্যাচ" হ'ল একটি 6-মাইক্রন ফ্লিপ-ফ্লপ যা একটি AND-NOT এবং একটি AND গেটের সাথে 6-মাইক্রন অন / অফ ল্যাচ দিতে সংযুক্ত থাকে। একটি "ক্যাচ" ইলেক্ট্রনগুলির ধারাবাহিক স্ট্রিমটিকে ইনপুট হিসাবে গ্রহণ করে, প্রথমটির মাধ্যমে অনুমতি দেয়, তারপরে প্রতিটি অন্যান্য ইলেক্ট্রনকে পিছনে ফেলে দেয়, যতক্ষণ না প্রবাহটি শেষ হয় ক্যাচটি পুনরায় সেট হয়।

একটি ল্যাচ স্থাপন করা, তার পরে একটি ক্যাচ, ধারাবাহিকভাবে, ফলস্বরূপ একটি ইলেক্ট্রন ইন -> ল্যাচ চালু হয়, একটি ইলেক্ট্রন অন্য প্রান্তটি বের করে দেয় (বাকী ক্যাচ দিয়ে ধরা পড়ে)। তারপরে দ্বিতীয় ইলেকট্রন -> ল্যাচ বন্ধ করে দেয়, নিঃশব্দে পুনরায় সেট করে catch নেট ইফেক্ট: প্রথম ইলেক্ট্রন এর মধ্য দিয়ে যায়, দ্বিতীয় ইলেকট্রন ধ্বংস হয়, এবং আরও অনেক কিছু, এই ইলেক্ট্রনের মধ্যে কতক্ষণ দেরি হয় তা নির্বিশেষে

এখন সিরিজে দুটি "ল্যাচ অ্যান্ড ক্যাচ" চেইন করুন এবং আপনার চারটি ইলেক্ট্রন কেবলমাত্র একটির মধ্য দিয়ে যাচ্ছেন।

এর পরে, একটি তৃতীয় "ল্যাচ এবং ক্যাচ" নিন, তবে এবার পুরো চতুর্থ ল্যাচ এম্বেড করুন এবং ফ্রিপ-ফ্লপ এসইটি লাইনে ধরুন, আর-নট গেট এবং ফ্লিপ-ফ্লপ এসইটির মধ্যে। আমি কীভাবে এটি কাজ করে তা ভাবতে আপনাকে ছেড়ে দেব, তবে এই সময় ইলেক্ট্রনগুলির মধ্যে কতক্ষণ দেরি হয় তা নির্বিশেষে কেবল তিনটি ইলেক্ট্রনের মধ্যে একটির মধ্য দিয়ে যায় ।

অবশেষে, চারটিতে একটিতে ইলেক্ট্রনটি নিয়ে যান এবং তিনটিতে একটি করে এটিকে একটি AND গেটের সাথে একত্রিত করুন এবং বারোটি ইলেক্ট্রনের মধ্যে কেবল একটির মধ্য দিয়ে যেতে হবে। এই পুরো বিভাগটি হ'ল নীচের ঘন্টাের কাউন্টারের উপরের বাম দিকে পাথার অগোছালো ছদ্মবেশ।

এরপরে, প্রতি বারো ঘন্টা অন্তর ইলেক্ট্রন নিন এবং প্রতি ঘন্টায় একটিতে আবার বিভক্ত হন, তবে প্রতিটি আলাদা কন্ডাক্টরের তারে আউটপুট নিন। তেরো প্রস্থান পয়েন্ট সহ দীর্ঘ কয়েলযুক্ত কন্ডাক্টর ব্যবহার করে এটি অর্জন করা হয়।

এই বৈদ্যুতিনগুলি নিন - এক ঘন্টার বিভিন্ন কন্ডাক্টর থেকে নীচে এবং একটি ফ্লিপ-ফ্লপ এসইটি লাইনে হিট করুন hit সেই একই ফ্লিপ ফ্লপের রিসেট লাইনটি পরের ঘন্টাটির কন্ডাক্টরের দ্বারা আঘাত করা হয় এবং প্রতি ঘন্টা তারে ষাটটি ডাল সরবরাহ করে।

শেষ পর্যন্ত - এই ডালগুলি নিন এবং এগুলি সঠিক বিসিডি বিটস্ট্রিমগুলি আউটপুট দেওয়ার জন্য রম এর সাড়ে সাত বাইটে (কেবলমাত্র পঠনযোগ্য মেমরি) দিন। ওয়্যার ওয়ার্ল্ড রমের আরও বিশদ ব্যাখ্যার জন্য এখানে দেখুন: http://www.quinapalus.com/wires6.html

নকশা

আওয়ার কাউন্টার টিকা

  1. প্রতি ঘন্টা ইনপুট এক ইলেকট্রন।
  2. প্রথম ল্যাচ।
  3. প্রথম ধরা।
  4. বাইরের "ল্যাচ অ্যান্ড ক্যাচ" এসইটি লাইনে এমবেড করা "লাচ অ্যান্ড ক্যাচ"
  5. এবং গেট
  6. এএম / পিএম ল্যাচ (প্রতি বারো ঘন্টা একবার চালু / বন্ধ)।
  7. তারের প্রতিটি লুপ দীর্ঘ 6x60 = 360 ইউনিট।
  8. একটি ছোট প্রোফাইল তৈরি করতে ফ্লিপ / ফ্লপ তার দিকে চালু।
  9. রমের সাড়ে সাত বাইট।

নোট

  1. প্রতি মিনিটে তার একটি ইলেকট্রনের কারণে, 6-মাইক্রন ডিজাইন, রিয়েল-টাইম ঘড়ির জন্য প্রতি মিনিটে ছয় প্রজন্মের (প্রতি 10 সেকেন্ডে একটি প্রজন্ম) সিমুলেশনটি চালান।
  2. এএম / পিএম লাইনটি এএম এর জন্য উচ্চ (1), প্রধানমন্ত্রীর জন্য কম (0) থাকে। এটিকে বেছে নেওয়ার জন্য কিছুটা অস্বাভাবিক উপায়ে মনে হতে পারে তবে যুক্তি রয়েছে। ঘড়ির শীতকালীন শুরুতে, এএম / পিএম লাইনটি প্রাথমিকভাবে স্বাভাবিকভাবে কম (0) থাকে। এএম / পিএম লাইনটি উচ্চ (1) টান পড়ার সাথে সাথে এটি সূচিত করে যে গণনা সকাল 12:00 এ শুরু হয়েছে। এই বিন্দুর আগে সমস্ত আউটপুট উপেক্ষা করা উচিত, এই পয়েন্টের পরে সমস্ত আউটপুট অর্থবোধক হিসাবে বিবেচিত হবে।

উপকারী সংজুক

  • আমি ওয়্যার ওয়ার্ল্ডের বেসিকগুলি http://www.quinapalus.com/wi-index.html থেকে শিখেছি । একটি দুর্দান্ত সম্পদ।

  • সেলুলার অটোমেটন তৈরি ও অনুকরণ করতে আমি গলি ব্যবহার করেছি: http://golly.sourceforge.net/

  • আমি http://mathworld.wolfram.com/WireWorld.html থেকে AND গেটের নকশা নিয়েছি

  • এবং আমি কেবলমাত্র এই ওয়েবপৃষ্ঠাটি পেয়েছি সুতরাং এটি ব্যবহার করে নি তবে দুর্দান্ত দেখাচ্ছে: http://karlscherer.com/Wireworld.html


প্রয়োজনীয় পরিবর্তনগুলি যাতে সর্বদা শূন্য আউটপুট বাদ দেওয়া যায়। দশ ঘন্টা কয়েক 4s এবং 8s বিট কখনও ব্যবহার করা হয় না, বা দশ দশ মিনিটের জন্য 8s বিট।
স্পার

সলিড! সত্য প্রকৌশল। অন্যান্য যুক্তি গেটগুলির কোনও কার্যকর হবে? আমি কিছু জখম করতে চলেছি।
wyldstallyns

1
এটি সুন্দর
স্পার

1
ওহ ভাল বিষাদ যে শুধু এখন ঘনিষ্ঠ যথেষ্ট আমি চেষ্টা এবং কার্যকর করে তুলুন খনি করতে বাধ্য করছি। আমি নিদর্শন পুনরায় আছে আমি রুম অন্যদের ভাঁজ করা কমান পারে।
wyldstallyns

3
আপনি মেটাতে কতটা সক্রিয় রয়েছেন তা আমি জানি না, সুতরাং এটি আপনাকে জানাতে হবে যে আমি এই উত্তরটি সেরা সেরা পিপিসি 2016 এর জন্য মনোনীত করেছি ।
পিটার টেলর

5

বিলম্ব লাইনের মেমরি - 51 x 2880 = 146880

ভাবমূর্তি

জুম আউট:

ভাবমূর্তি

আউটপুট প্রতিটি লুপ শীর্ষে আসে।

আমি এই লুয়ার সাহায্যে সমস্ত রাজ্যকে সরাসরি তারের উপরে রেখেছি, gollyবিটগুলির মধ্যে বৈদ্যুতিনগুলি এগিয়ে নিয়ে যেতে যাতে আমাদের একটি কার্সার দিয়ে তারের অনুসরণ করতে হবে না।

আমি একটি বার সেট এবং ক্র্যাশ কোর্স ওয়্যারওয়ার্ল্ড, গলি এবং লুয়া সেট করার জন্য এই নিষ্পাপ পদ্ধতিটি ব্যবহার করেছি।

local g = golly()

local minutes_in_day = 1440 -- 60x24
local interval = 4 -- how often to send electrons

local function bcd4(num)
    num=math.floor(num)
    local t={}
    for b=4,1,-1 do
        t[b]=math.floor(math.fmod(num,2))
        num=(num-t[b])/2
    end
    return table.concat(t)
end

local function makewire(x,y1,y2)
    for y1=1,y2 do g.setcell(x,y1,3) end
end

local function makeloop(x,y,size)
    local len = size/2 - 1
    makewire(x,y+1,len); makewire(x+2,y+1,len) -- main wires
    g.setcell(x+1,y,3); g.setcell(x+1,y+len,3) -- endcape
end

local function paint(x,y,pattern)
    for v in string.gmatch(pattern,".") do
        if v=="1" then g.setcell(x, y, 1); g.setcell(x, y-1, 2) end
        x = x + 4
    end
    g.show(pattern);g.update() -- slows things down but more interesting to watch
    for i=1,interval do g.step() end
end

for x=0,63,4 do makeloop(x,0,minutes_in_day * interval) end

for hour = 0,23 do
      for minute = 0,59 do
         paint( 0, 2, bcd4(hour/10) .. bcd4(hour%10) .. bcd4(minute/10) .. bcd4(minute%10) )
      end
end

পরীক্ষার জন্য আমি এই শীর্ষ তারগুলি যুক্ত করেছি এবং তাদের টিপস দেখেছি।

Imgur

চক্ষু থেকে 4 তারের বিসিডির 4 সেট সংগ্রহ করার স্ক্রিপ্ট এখানে।

-- watches 16 wires spaced 4 apart starting at (0,-4)
local ticks = 1440 -- set to match the length of your 24 hour loop
local g = golly()
local output = ""
local nums = {  ["0000"] = "0", ["0001"] = "1", ["0010"] = "2", ["0011"] = "3", ["0100"] = "4",
                ["0101"] = "5", ["0110"] = "6", ["0111"] = "7", ["1000"] = "8", ["1001"] = "9",
                ["1010"] = "A", ["1011"] = "B", ["1100"] = "C", ["1101"] = "D", ["1110"] = "E",
                ["1111"] = "F" } -- full set in case we have errors (i did)

for i=0,ticks,1 do
   local text = ""
   for i=0,48,16 do -- set your X here, change the 0 and 48
       local word = ""
       for j=0,15,4 do
            local bit = g.getcell(i+j,-4) -- set your Y here, change -4
            if bit == 0 or bit == 3 then word = word .. "0" else word = word .. "1" end
       end
       text = text .. nums[word]
   end
   g.show(text); output = output..' '..text
   g.update(); g.step();g.step();g.step();g.step()
end
g.note(output)

চূড়ান্ত উত্তরের জন্য সর্বদা শূন্য লাইনগুলি ছাঁটাই করা এবং বাকীগুলিকে তাদের সঠিক বিসিডি ইনপুটগুলিতে রউটিং করতে হবে।


প্রয়োজনীয় পরিবর্তনগুলি যাতে সর্বদা শূন্য আউটপুট বাদ দেওয়া যায়। দশ ঘন্টা কয়েক 4s এবং 8s বিট কখনও ব্যবহার করা হয় না, বা 8s বিট দশ মিনিটের জন্য।
স্পার

2
এটি একটি হাসিখুশি এবং দুর্দান্ত বাস্তবায়ন!
স্পার

1
ঠিক আছে, আমি 11 তম ঘন্টা অন্য কার্যকরী ঘড়ি সঙ্গে বীট হয়েছে। আমি বিভিন্ন কৌশল দ্বারা দীর্ঘতম এবং সংক্ষিপ্ততম লুপগুলিতে আক্রমণ করতে যাচ্ছি।
wyldstallyns

আমি এটি টানতে যাচ্ছি না। আমি 3 মাইক্রন ডাল স্যুইচ করে আকারের 1/4 র্থ সঞ্চয় করতে পারি, তবে এটি এখনও নিমিরোকে পেটানোর জন্য যথেষ্ট শক্তভাবে কুণ্ডুলি বানাবে না।
wyldstallyns
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.