একটি ছোট সি-এর মতো ভাষা যা টুরিং মেশিনগুলি অনুকরণ করতে পারে


11

আমি একটি ছোট্ট ভাষা খুঁজছি যা শিক্ষার্থীদের 'বোঝাতে' সহায়তা করে যে টুরিং মেশিনগুলি যথেষ্ট সাধারণ কম্পিউটিং মডেল। এটি হ'ল এমন একটি ভাষা যা তাদের ব্যবহার করা ভাষাগুলির মতো দেখায় তবে একটি টুরিং মেশিনে অনুকরণ করা সহজ।

এই কাজের জন্য প্যাপাডিমিট্রিও র‌্যাম মেশিন ব্যবহার করে তবে আমি আশঙ্কা করি যে অদ্ভুত কিছু (টুরিং মেশিন হিসাবে) অন্য একটি অদ্ভুত জিনিসের সাথে (মূলত, একটি অ্যাসেম্বলি ভাষা) তুলনা করা অনেক শিক্ষার্থীর পক্ষে খুব অবিশ্বাস্য হবে।

কোনও পরামর্শই সর্বাধিক স্বাগত জানাবে (বিশেষত যদি তারা কিছু প্রস্তাবিত সাহিত্য নিয়ে আসে)


7
কম্পিউটারগুলির প্রাথমিকভাবে অ্যাসেম্বলি ভাষায় প্রোগ্রাম করা হয়েছিল এমন একটি কারণ রয়েছে ... সংকলক বা দোভাষী লিখতে তুচ্ছ নয় । এবং টুরিং মেশিনগুলির জন্য সংকলক বা দোভাষী লিখতে সম্ভবত আরও শক্ত is
পিটার শর

PS এর সাথে কিছুটা দ্বিমত পোষণ করতে হবে, একটি টিএম সংকলক যেমন ফ্যাক্টরিংয়ের উদাহরণগুলিকে স্যাট বা অন্যান্য প্রায় স্নাতক অনুশীলনে রূপান্তরিত করে তার চেয়ে বেশি শক্ত নয়। আরও দেখুন ওয়েবে মেশিন সিমুলেটর টুরিং শীর্ষ । নমুনা উত্স কোড (উচ্চ-স্তরের ভাষার জন্য) দিয়ে রুবিতে লেখা একটি টুরিং মেশিন সংকলকের উদাহরণ এখানে । হায়রে আর বেশি পালিশ পাওয়া যায় বলে মনে হয় না। এটি একটি দুর্দান্ত ওপেন সোর্স প্রকল্প তৈরি করবে।
vzn

2
@ ওমর শেহাব, একটি সম্পাদনা প্রথম পৃষ্ঠায় প্রশ্নটি ছড়িয়ে দেয়। পুরানো প্রশ্নটি সম্পাদনা করবেন না যখন সম্পাদনাটি উল্লেখযোগ্যভাবে প্রশ্নের উন্নতি করে না। এছাড়াও প্রথম পৃষ্ঠায় নেই এমন বিপুল সংখ্যক প্রশ্ন সম্পাদনা করা ভাল নয় কারণ এটি প্রথম পৃষ্ঠার বাইরে নতুন প্রশ্ন ঠেলে দেয়। ধন্যবাদ।
কাভেহ

@ কাভেঃ বুঝেছি।
ওমর শেহাব

উত্তর:


15
  • যদি আপনার শিক্ষার্থীরা কোনও কার্যকরী প্রোগ্রামিং করে থাকে তবে আমি জানি যে সর্বোত্তম পদ্ধতিরটি আমি টাইপড ল্যাম্বদা ক্যালকুলাস দিয়ে শুরু করব এবং তারপরে বন্ধনী বিমূর্ততা তত্ত্বটি এসকেআই সংযুক্তকারীগুলিতে অনুবাদ করার জন্য ব্যবহার করব। তারপরে, আপনি ট্যুরিং মেশিনগুলি একটি আংশিক সংশ্লেষ বীজগণিত গঠন করে এবং করতে পারে তা দেখানোর জন্য আপনি এবং ব্যবহার করতে পারেন ।গুলিমিএনতোমার দর্শন লগ করাটিমি

    আমি সন্দেহ করি এটি সহজতম পদ্ধতির, তবে আমি এটি পছন্দ করি যে এটি গণনাযোগ্যতার কয়েকটি মৌলিক উপপাদ্যের উপর নির্ভর করে (যা আপনি অন্যান্য কারণেও ভালভাবে কাভার করতে ইচ্ছুক হতে পারেন)।

    দেখা যাচ্ছে যে কয়েক মাস আগে ম্যাথওভারফ্লোতে আন্দ্রেজ বাউর একটি অনুরূপ প্রশ্নের উত্তর দিয়েছিলেন

  • যদি আপনি সি-এর মতো ভাষা নির্ধারণ করে থাকেন তবে আপনার পথটি অনেক বেশি রাউবার হবে, যেহেতু তাদের কাছে বরং একটি জটিল শব্দার্থবিজ্ঞান রয়েছে - আপনার প্রয়োজন হবে

    1. দেখান যে টুরিং মেশিনগুলি একই সাথে একটি স্ট্যাক এবং একটি গাদা অনুকরণ করতে পারে এবং
    2. কীভাবে ভেরিয়েবলগুলি একটি স্ট্যাকের সাথে প্রয়োগ করা যেতে পারে এবং
    3. পদ্ধতি কলগুলি একটি স্ট্যাক দিয়ে প্রয়োগ করা যেতে পারে তা দেখান।

    এটি একটি সংযোজক শ্রেণীর সামগ্রীর বেশিরভাগ অংশ, সততার সাথে।


7

আন্ডারগ্র্যাডে আমার থিওরি অফ কমপ প্রফেসার প্রমাণ করেছেন যে একটি সিঙ্গল-টেপ টুরিং মেশিনটি একটি বহু-টেপ টুরিং মেশিনটি প্রয়োগ করতে পারে। এটি ভেরিয়েবল ঘোষণাকে পরিচালনা করে: যদি কোনও প্রোগ্রামে ছয়টি ভেরিয়েবল ডিক্লেয়ারেশন থাকে, তবে এটি সহজেই সাতটি টেপ টুরিং মেশিনে প্রয়োগ করা যেতে পারে (প্রতিটি ভেরিয়েবলের জন্য একটি টেপ, এবং একটি "রেজিস্টার" টেপ গণিত এবং সমতা-পরীক্ষার মতো কাজ সম্পাদন করতে সহায়তা করে) টেপ)। তারপরে তিনি দেখিয়েছিলেন যে কীভাবে বেসিক ফর এবং WHIL লুপগুলি প্রয়োগ করতে হয় এবং সেই সময়ে আমাদের কাছে একটি বেসিক টিউরিং-সম্পূর্ণ সি-এর মতো ভাষা ছিল। আমি এটি সন্তুষ্টিজনক, যাইহোক পাওয়া যায় নি।


6

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

একটি ব্লক-কাঠামোবদ্ধ প্রোগ্রামিং সঙ্গে ভাষা বিবেচনা করুন ifএবং whileবিবৃতির সঙ্গে, অ রিকার্সিভ নামে সংজ্ঞায়িত কার্যকারিতা ও সাবরুটিনের, বুলিয়ান র্যান্ডম ভেরিয়েবল ও সাধারণ বুলিয়ান এক্সপ্রেশন, এবং একটি একক সীমাবদ্ধ বুলিয়ান অ্যারের সঙ্গে tape[n]একটি পূর্ণসংখ্যা অ্যারের পয়েন্টার দিয়ে nযে বৃদ্ধি করা যেতে পারে বা decremented, n++বা n--। পয়েন্টারটি nপ্রাথমিকভাবে শূন্য এবং অ্যারে tapeশুরুতে সমস্ত শূন্য হয়। সুতরাং, এই কম্পিউটারের ভাষা সি-মত বা পাইথন-জাতীয় হতে পারে তবে এটি এর ডেটা ধরণের ক্ষেত্রে খুব সীমিত। আসলে, এগুলি এতটাই সীমাবদ্ধ যে আমাদের কাছে nবুলিয়ান এক্সপ্রেশনটিতে পয়েন্টারটি ব্যবহার করার উপায় নেই । ধরে নিচ্ছি যেtapeশুধুমাত্র ডানদিকে অসীম, আমরা যদি nকখনও নেতিবাচক থাকে তবে আমরা একটি পয়েন্টার আন্ডারফ্লো "সিস্টেম ত্রুটি" ঘোষণা করতে পারি । এছাড়াও, আমাদের ভাষার exitএকটি বুলিয়ান উত্তর আউটপুট দেওয়ার জন্য একটি যুক্তি সহ একটি বিবৃতি রয়েছে।

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

নির্মাণের বাকী অংশটি লাইব্রেরির ফাংশন এবং পূর্ববর্তীকরণের পর্যায়ে একটি সীমাবদ্ধ তালিকা সহ এটি আরও বাসযোগ্য প্রোগ্রামিং ভাষায় রূপান্তর করা convert আমরা নিম্নলিখিত হিসাবে এগিয়ে যেতে পারেন:

  1. প্রাক-কম্পাইলারের সাহায্যে, আমরা বুলিয়ান ডেটা প্রকারটিকে বৃহত্তর তবে সীমাবদ্ধ বর্ণমালায় যেমন ASCII তে প্রসারিত করতে পারি। আমরা ধরে নিতে পারি যে tapeএই বৃহত্তর বর্ণমালায় মান লাগে। টেপটির শুরুতে একটি চিহ্নিতকারীকে পয়েন্টার জলস্রোতা রোধ করতে এবং টেপটির শেষদিকে একটি স্থাবর মার্কার রেখে দিতে পারেন যাতে দুর্ঘটনাক্রমে টেপটিতে টিএমকে স্কেটিং থেকে অনন্তর দিকে আটকাতে পারে। আমরা প্রতীক এবং বুলিয়ান ifএবং whileবিবৃতিতে রূপান্তরগুলির মধ্যে নির্বিচারে বাইনারি অপারেশনগুলি প্রয়োগ করতে পারি । (আসলে ifএটি প্রয়োগ whileনা করে যদি এটি না পাওয়া যায়))

  2. টেপ এবং (ধনাত্মক) পূর্ণসংখ্যার গাণিতিকের এলোমেলো অ্যাক্সেস উভয়ই প্রয়োগ করতে আমরা একটি আনবাউন্ডেড পূর্ণসংখ্যার ডেটা টাইপ চাই। এই লক্ষ্যে, আমরা যে টেপটি রেখেছি তার সাথে কিছু ফিক্সড জন্য টেপ টিএম অনুকরণ করি। এই নির্মাণটি সিপসারে একটি উপপাদ্য হিসাবে দেওয়া হয়েছে। ধারণাটি হ'ল আমাদের কাছে থাকা নিম্ন-স্তরের টেপগুলিতে এমুলেটেড টেপগুলি আন্তঃলিখন করা উচিত, যেখানে চিহ্নিত অবস্থানের চিহ্নগুলি প্রধান অবস্থানগুলির প্রতিনিধিত্ব করে। যদি নিম্ন-স্তরের টেপ পয়েন্টারটি শূন্যে থাকে, তবে এটি অবস্থানের দিকে এগিয়ে যাওয়ার পরে এবং একবারে পদক্ষেপে ঝাঁপিয়ে সাবটপে সহায়তা করে ; প্রতিটি পড়া বা লেখার পরে, নিম্ন-স্তরের টেপ পয়েন্টারটি শূন্যে ফিরে আসে। পূর্ববর্তী পর্যায়ে যেমন প্রাক-কম্পাইলার হিসাবে এটি প্রয়োগ করা আরও সহজ।আমিআমি

  3. আমরা একটি টেপকে প্রতীক-মূল্যবান "মেমরি" এবং অন্যকে স্বাক্ষরবিহীন, পূর্ণসংখ্যা-মূল্যবান "রেজিস্টার" বা "ভেরিয়েবল" হিসাবে মনোনীত করি। সমাপ্তি চিহ্নিতকারীদের সাথে আমরা সংক্ষিপ্ত-এডিয়ান বাইনারিতে পূর্ণসংখ্যাগুলি সঞ্চয় করি। আমরা প্রথমে একটি রেজিস্টারের অনুলিপি এবং একটি রেজিস্টারের বাইনারি হ্রাস কার্যকর করি। মেমরি পয়েন্টার বৃদ্ধি এবং হ্রাস সঙ্গে এই মিশ্রণ, আমরা প্রতীক মেমরির এলোমেলো অ্যাক্সেস সন্ধান করতে পারেন। বাইনারি সংযোজন এবং পূর্ণসংখ্যার গুণক গণনা করতে আমরা ফাংশনগুলিও লিখতে পারি। বিটওয়াইজ অপারেশন সহ বাইনারি সংযোজন ফাংশন এবং বাম শিফট দিয়ে 2 দিয়ে গুণতে একটি ফাংশন লেখা শক্ত নয়। (বা এটি সত্যই ডান শিফট, যেহেতু এটি স্বল্প-এডিয়ান) these

  4. সূত্রটি ব্যবহার করে আমরা এক-মাত্রিক প্রতীক অ্যারে symbol[n]থেকে দ্বি-মাত্রিক প্রতীক অ্যারেতে মেমরি টেপটিকে পুনর্গঠিত করতে পারি । দ্বি-মাত্রিক, এলোমেলো অ্যাক্সেস, পূর্ণসংখ্যার মূল্যবান মেমরি পেতে, আমরা এখন মেমরির প্রতিটি সারিটি একটি সমাপ্তি চিহ্ন সহ বাইনারিটিতে স্বাক্ষরবিহীন পূর্ণসংখ্যাকে প্রকাশ করতে ব্যবহার করতে পারি । আমরা মেমরি থেকে একটি পূর্ণসংখ্যার রেজিস্ট্রারে পড়া এবং একটি রেজিস্টার থেকে মেমরিতে লেখার প্রয়োগ করতে পারি। অনেকগুলি বৈশিষ্ট্য এখন ফাংশন সহ প্রয়োগ করা যেতে পারে: স্বাক্ষরিত এবং ভাসমান পয়েন্ট গণিত, প্রতীক স্ট্রিং ইত্যাদি withsymbol[x,y]n = (x+y)*(x+y) + ymemory[x]

  5. কেবলমাত্র আরও একটি বেসিক সুবিধার জন্য কঠোরভাবে একটি পূর্বনির্ধারক প্রয়োজন, যথা পুনরাবৃত্ত ফাংশন। এটি এমন একটি প্রযুক্তি দিয়ে করা যেতে পারে যা ব্যাখ্যামূলক ভাষাগুলি কার্যকর করতে ব্যাপকভাবে ব্যবহৃত হয়। আমরা প্রত্যেকটি উচ্চ-স্তরের, পুনরাবৃত্তির জন্য একটি নাম স্ট্রিং নির্ধারণ করি এবং আমরা নিম্ন-স্তরের whileকোডটিকে একটি বৃহত লুপে সংগঠিত করি যা সাধারণ পরামিতিগুলির সাথে কল স্ট্যাক বজায় রাখে: কলিং পয়েন্ট, কল ফাংশন এবং যুক্তিগুলির তালিকা।

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

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


5

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

এটি একটি টুরিং মেশিনের জন্য জেনারেট কোড তৈরির এক অত্যাধুনিক অপ্টিমাইজিং সংকলক (অনেক উপায়ে এলএলভিএম জিসিসির চেয়ে আরও উন্নত) হওয়ার আকর্ষণীয় প্রভাব ফেলবে।


1

আমি সিএস তত্ত্বের মধ্যে নই তবে আমার কাছে কিছু আছে যা কার্যকর হতে পারে। আমি আরেকটি পন্থা গ্রহণ করেছি। আমি সি এর একটি ছোট সাব-সেট সহ সরাসরি প্রোগ্রামযোগ্য একটি সাধারণ প্রসেসর ডিজাইন করেছি assembly এখানে কোনও এসেম্বলি কোড নেই, কেবল সি-জাতীয় কোড। আপনার ট্যুরিং মেশিন সিমুলেটরটি ডিজাইন করতে আপনি এই একই সরঞ্জামটি ব্যবহার করতে পারেন এবং এই প্রসেসরটি সংশোধন করতে পারেন। এই প্রসেসরটি ডিজাইন করতে, অনুকরণ করতে এবং পরীক্ষা করতে আমাকে 4 দিন সময় লেগেছে, বেশ কয়েকটি নির্দেশ! আমি যে সরঞ্জামগুলি ব্যবহার করেছি সেগুলি আমাকে সত্যিকারের ভিএইচডিএল সংশ্লেষযোগ্য কোড তৈরি করতে সক্ষম করেছে। এটি একটি সত্যিকারের ওয়ার্কিং প্রসেসর।

এখানে একটি প্রোগ্রাম দেখতে কেমন দেখাচ্ছে: সি-এর মতো বিধানসভা কর্মসূচির উদাহরণ

থিসিস টুলস ব্যবহার করে প্রসেসরের একটি চিত্র এখানে রয়েছে: প্রসেসর সার্কিট

সরঞ্জাম "নোভাকোড স্টুডিও" একটি উচ্চ স্তরের ভাষা হার্ডওয়্যার বর্ণনার ভাষা ব্যবহার করে। উদাহরণস্বরূপ, প্রোগ্রামের কাউন্টারটির কোড এখানে: পিএসসি - সমান্তরাল এবং সিঙ্ক্রোনাস সি - কোড নমুনা যথেষ্ট কথা বলা, যদি কেউ আগ্রহী হন তবে আমার সাথে যোগাযোগ করার জন্য পাবলিক তথ্য এখানে: https://repertoire.uqac.ca/Fiche.aspx?id=JjstNzsH0&link=1

লুক


ঠিকানাগুলি সনাক্ত করতে মেমরি ঠিকানা কী বিটগুলির একটি নির্দিষ্ট # বিট ব্যবহার করে?
vzn

হ্যাঁ, তবে মেমরির আকার পরিবর্তন করা সহজ (int ডেটা মেমোরি [SIZE] language ভাষা পরিবর্তনশীল দৈর্ঘ্যের পূর্ণসংখ্যাকে সমর্থন করে (int: 10) But তবে, যেহেতু এটি এফপিজিএ লক্ষ্য করে, অ্যারে স্থির এবং মাত্রা ধ্রুবক
লূক মরিন

1

এখানে জিএমবি ব্যবহারকারীর দ্বারা উপস্থাপন করা ধারণাটি সম্পর্কে কীভাবে (এক টেপ সহ টুরিং মেশিন এন টেপগুলিকে একটি টেপের সাথে ইন্টারলেস করে এবং সেই টেপের যে কোনওটি একবারে এন লোকেশনে ঝাঁপিয়ে পড়ার মাধ্যমে একটি টুরিং মেশিনকে অনুকরণ করতে পারে) এন টেপযুক্ত মেশিনটি প্রয়োগ করতে পারে ...) এবং একটি ট্যুরিং মেশিন প্রোগ্রাম লিখতে পারে যা একটি সরল র‌্যাম-মেশিন প্রয়োগ করে। র‌্যাম-মেশিনটি সম্ভবত উপলব্ধ কিছু এললভিএম বা জিসিসির ব্যাকএন্ড সহ কিছু সরল, বাস্তব, সিপিইউ হতে পারে। তারপরে জিসিসি / এলএলভিএম সেই সিপিইউর জন্য সি প্রোগ্রামটি ক্রস-সংকলনের জন্য ব্যবহার করা যেতে পারে এবং ট্যুরিং মেশিন প্রোগ্রামটি যে র‌্যাম-মেশিনকে সিমুলেট করে, সিমুলেটেড র‌্যাম-মেশিনটি জিসিসি / এলএলভিএম আউটপুট সম্পাদন করে র‌্যাম-মেশিন সিমুলেশন চালায়। ট্যুরিং মেশিন বাস্তবায়ন হতে পারে খুব সহজ সি কোড যা একটি ছোট সি ফাইলের সাথে ফিট করে।

র‌্যাম-মেশিনের সাথে কী সম্পর্কিত, তারপরে একটি ডেমো প্রকল্প রয়েছে, যেখানে একটি 32 বিট সিপিইউ একটি 8 বিট মাইক্রোকন্ট্রোলার এবং সিমুলেটেড 32 বিবি সিপিইউ বুট লিনাক্স দ্বারা অনুকরণ করা হয়। নরকের মতো ধীরে ধীরে, তবে লেখক দিমিত্রি গ্রিনবার্গের মতে এটি কাজ করেছিল। সম্ভবত জিলিন সিপিইউ (গিটহাব ব্যবহারকারী জিলিন) সিমুলেটেবল র‌্যাম-মেশিনের পক্ষে কার্যকর ব্যবহার হতে পারে। আরেকটি RAМ-মেশিন প্রার্থী হতে পারে ProjectOberon দ্বারা ডট কম Niklaus Wirth

(আমার পাঠ্যটিতে "ডট" এবং "কম" এই কারণে রয়েছে যে আমি মাত্র, 2015_10_21, আমার অ্যাকাউন্টটি cstheory.stackexchange এ নিবন্ধিত করেছি এবং ওয়েব-অ্যাপটি নবজাতক ব্যবহারকারীদের জন্য 2 টির বেশি সংযোগের অনুমতি দেয় না, তবুও সত্য যে তারা আমার অন্যান্য স্ট্যাক এক্সচেঞ্জ অ্যাকাউন্ট থেকে স্বয়ংক্রিয়ভাবে দেখতে পাবে যে আমি বোকা হতে পারি, কিন্তু আমি ট্রোল নই))

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.