Payamvdn/NorthPersian_fa_wiki huggingface dataset:
مورچهٔ لنگتون گونه ای خاص از ترمایت (نوعی ماشین محاسبهٔ تورینگ دو بعدی) است که در سال ۱۹۸۶ توسط کریس لنگتون ابداع شده است، همچنین می توان مورچهٔ لنگتون را اتوماتون سلولی با همسایگی فون نویمان دانست. این ماشین همانند بسیاری از دیگر نمونه های اتوماتای سلولی مصداقی از یک سیستم پیچیده با قواعد ساده است که بر حسب قواعد می تواند رفتاری پیچیده، تصادفی یا ساده داشته باشد. در سال ۲۰۰۰ با اثبات امکان شبیه سازی هر مدار دیجیتال دلخواه با مورچهٔ لنگتون، ماشین محاسبهٔ تورینگ بودن این ماشین اثبات شد. افراد مختلفی ایدهٔ مورچهٔ لنگتون را در جهات مختلف گسترش داده اند، برای مثال ترمایت ها با الگو گرفتن از مورچهٔ لنگتون ابداع شده اند که خود گونه ای از ماشین محاسبهٔ تورینگ هستند. ساختار. مورچهٔ لنگتون از یک صفحهٔ شطرنجی دو بعدی نامتنهاهی تشکیل شده است که یک مورچه بر روی آن در چهار جهت اصلی حرکت می کند. مورچه بر یکی از این خانه های صفحه قرار دارد. در هر نوبت، مورچه با توجه به رنگ خانه ای که بر روی آن قرار دارد رنگ آن خانه را به رنگ دیگری تغییر می دهد و جهت حرکتش را تغییر می دهد و یک خانه حرکت می کند. در نمونهٔ اولیه هر خانه می توا
ند یکی از دو رنگ سفید یا سیاه را داشته باشد. مورچه در صورتی که بر خانهٔ سفید قرار داشته باشد ۹۰ درجه به راست می چرخد، رنگ خانه را تغییر می دهد و به خانهٔ بعدی می رود. در صورتی که مورچه بر روی خانهٔ سیاه قرار داشته باشد ۹۰ درجه به چپ می چرخد، رنگ خانه را تغییر می دهد و به خانهٔ بعدی می رود. می توان با گسترش مجموعهٔ رنگ ها، یا تغییر دادن قاعدهٔ حرکت مورچه نمونه های متعددی از مورچهٔ لنگتون را به دست آورد که هرکدام رفتاری متفاوت با دیگری دارند. در واقع می توان صفحهٔ دو بعدی را مشابه نوار حافظهٔ ماشین تورینگ، محل مورچه را سر ماشین تورینگ و قاعدهٔ حرکت مورچه را قاعدهٔ حرکت سر ماشین تورینگ در نظر گرفت. همچنین می توان مورچهٔ لنگتون را یک ماشین سلولی در نظر گرفت که در آن، صفحهٔ شطرنجی صفحهٔ ماشین است و به ازای n رنگ در مورچهٔ لنگتون در ماشین سلولی ۵n رنگ وجود دارد. هر خانهٔ خالی در صفحهٔ مورچهٔ یکی از n رنگ را دارد و برای خانهٔ مورچه دار، یکی از 4n رنگ دیگر را انتخاب می کنیم که نشان دهندهٔ رنگ خانه در مورچهٔ لنگتون، حضور مورچه در آن و جهت گیری مورچه است. قوانین تغییر ماشین هم همسایگی فون نویمان هر خانه را در نظر می گی
رد و آن خانه و همسایگی آن را مشابه قوانین مورچهٔ لنگتون تغییر می دهد. رفتار. در صورتی که مورچه در نمونهٔ اولیه بر صفحه ای سفید حرکت خود را شروع کند، ابتدا طرح هایی ساده و عموماً متقارن تولید می کند، سپس در صفحه الگوهایی پیچیده تصویر می کند و در نهایت شروع به ساختن بزرگراه می کند که تکرار مداوم ۱۰۴ حرکت مورچه است و در صفحه ساختاری مشابه نوار به وجود می آورد. اثبات می شود که در صورتی که شرایط اولیهٔ صفحهٔ مورچهٔ لنگتون متناهی باشد، رفتار مورچه در نهایت به ساخت بزرگراه منتهی می شود. مورچهٔ لنگتون مثالی از یک سیستم پیچیده است که قوانینی بسیار ساده دارد و کریس لنگتون به منظور نشان دادن همین مفهوم (امکان بروز رفتار ظهوریافتهٔ پیچیده، حتی در ساده ترین ساختارها) ماشین لنگتون را ابداع کرد. انواع مختلف مورچهٔ لنگتون رفتارهای مختلفی از خود نشان می دهند که پیچیده، ساده یا تصادفی است. تفاوت این ماشین ها در قواعد حرکت مورچه و شرایط اولیهٔ صفحه است. تصمیم ناپذیری. مورچهٔ لنگتون یک ماشین محاسبه تورینگ است، این مسئله به آن معنی است که رفتار هر ماشین تورینگی را به ازای ورودی مشخص می توان با یک ماشین لنگتون شبیه سازی کرد. همان
طور که پیش تر ذکر شد، در صورتی که شرایط اولیهٔ صفحهٔ مورچهٔ لنگتون متناهی باشد، رفتار مورچه در نهایت به ساخت بزرگراه منتهی می شود. پس رفتار نهایی هر مورچهٔ لنگتون با صفحهٔ اولیهٔ قابل پیش بینی است که عبارت است از تکرار کردن یک پترن ۱۰۴ حرکتی مداوم که به اسم بزرگراه شناخته می شود. از طرفی اما می دانیم که مسئلهٔ رفتار نهایی ماشین تورینگ یا مسئله توقف تصمیم ناپذیر است. تصمیم ناپذیری این مسئله به آن معنی است که نمی توان ماشینی داشت که به ازای هر ماشین تورینگ و هر ورودی w تعیین کند ماشین تورینگ داده شده بر روی ورودی w توقف خواهد کرد یا نه. با توجه به آنچه که گفته شد، ممکن است به نظر برسد که می توان مسئله توقف را به مسألهٔ رفتار نهایی مورچهٔ لنگتون کاهش داد و این مسئله تصمیم پذیر است؛ اما این تصور غلط است، چرا که هر ماشین تورینگی به مورچهٔ لنگتونی با شرایط اولیهٔ متناهی کاهش داده نمی شود و مسألهٔ تعیین رفتار نهایی مورچهٔ لنگتون در شرایط کلی مسئله ای تصمیم ناپذیر است. مورچهٔ لنگتون در فضای سه بعدی. می توان برای مورچهٔ لنگتون در فضای سه بعدی نیز تعریفی مشابه فضای دو بعدی ارائه داد با این تفاوت که به جای صفحه، فضای سه
بعدی محل حرکت مورچه است و مورچه در هر گام به بالا، پایین، چپ یا راست خود حرکت می کند. با این تعریف، مورچهٔ لنگتون در فضای سه بعدی نیز رفتاری مشابه با فضای دو بعدی دارد و در بسیاری از اوقات در نهایت شروع به ساختن بزرگراه می کند که حرکتی تناوبی با دورهٔ تناوب ۱۰۴ گام است. همچنین می توان برای فضاهای n بعدی نیز تعریفی مشابه برای مورچهٔ لنگتون ارائه داد. انواع مختلف. می توان انواع مختلفی از مورچهٔ لنگتون را با تغییر دادن شرایط اولیهٔ صفحه و تعداد رنگ ها به وجود آورد. منطق پشت حرکت مورچه را می توان با رشته ای از R و L نمایش داد که مشخص می کند به ازای هر رنگ مورچه به کدام سمت حرکت می کند. با این شیوه مورچهٔ لنگتون اولیه را می توان با RL نمایش داد. برخی از این مورچه ها در گذر زمان ساختاری متقارن می سازند، برای مثال مورچه هایی که در قاعدهٔ خود LL یا RR داشته باشند ساختارهای متقارنی را به وجود خواهند آورد. تصاویر زیر چند نمونه از رفتار این گونه مورچه هاست.می توان به مورچهٔ لنگتون چند وضعیت متفاوت اضافه کرد و گونه ای از ترمایت ها را تولید کرد. رفتار چند ترمایت از این دست در اشکال زیر قابل مشاهده است. گونهٔ دیگری از مور
چهٔ لنگتون با قرار دادن چندین مورچه بر روی صفحه ساخته می شود. این مورچه ها می توانند از قواعد یکسان یا متفاوتی پیروی کنند که در صورتی که قواعد حرکت مورچه ها با یکدیگر متفاوت باشد باید از شرایطی که دو مورچه بر یک خانه قرار دارند با تعیین سرنوشت رنگ خانه رفع ابهام کرد. با افزایش تعداد رنگ ها می توان نمونه هایی مشابه تصویر مقابل به دست آورد: همچنین به جای صفحه، می توان فضایی n بعدی در نظر گرفت که خانه های همسایه در آن خانه هایی هستند که تنها یک درایهٔ آن ها به خانهٔ اولیه متفاوت است. در فضای سه بعدی نیز مورچه ها برای شرایط اولیهٔ متنهای در نهایت شروع به ساختن بزرگراه های با دوره تناوب ۱۰۴ قدم می کنند.
تأثیرات رنگ ها بر حالات مختلف روحی و روانی انسان از دو طریق امکان پذیر می باشد. تأثیر اولیه رنگ به دریافت احساسی رنگ (فامداری) مربوط می شود که از طیف نور مرئی رنگ ناشی شده و از آن به احساس ذهنی تعبیر شده است. به عنوان نمونه فشار ملایم بر پلک ها و قرارگیری انسان تحت شوک الکتریکی در یک محیط تاریک احساس رنگ را برای انسان ایجاد می نماید که این احساس اثر مرئی، از خارج چشم نیست. دلیل این امر تحریک سلسله اعصاب شبکیه توسط الکتریسیته یا فشار ملایم می باشد. تأثیر دیگر رنگ ها اثرات ذهنی رنگ های عینی می باشد و احساس های معینی را شامل می گردد که رنگ ها در بیننده ایجاد می نماید. در این شکل از تأثیر فامها به دو دسته پیش آینده و پس رونده تقسیم بندی می گردند که به ترتیب نزدیک بودن و دور بودن اشیا را در ذهن تداعی می نماید. بر همین اساس فام های دارای طول موج بلندتر (مثل قرمز و نارنجی) گرمتر از فام های طول موج کوتاه تر (مثل آبی و سبز) احساس می شوند. احساس گرمی و سردی، پیش آیندگی و پس روندگی در واقع اثرات ذهنی رنگ های عینی هستند که از جنبه روان شناسی رنگ نه از جنبه فیزیولوژیک رنگ، مورد بحث قرار می گیرد. (Erdogan، 2008: 2129-2139)
تأثیر رنگ ها علاوه بر روان و روح بر عملکرد و فیزیولوژیک انسان نیز تأثیر می گذارد. تأثیر رنگ بر فشار خون، میزان تنفس و زمان از نمونه این تأثیرات می باشد. پاسخ های فیزیولوژیکی و بیو مکانیکی فعال و دقیق از تشعشعات خورشیدی و محیط های مصنوعی بر روی بدن انسان اثبات این موضوع می باشد. انطباق ریتم های هورمونی بدن با شبانه روز و تاریکی و روشنی از پاسخ های بدن به رنگ ها می باشد. (موعدی، 1379: 56) در سال ۱۹۷۱ دکتر یوگن شورل ۱۴ در یک کلینیک در سوئیس با تحقیقاتی در زمینه رنگ درمانی تأثیر رنگ ها بر فشار خون، ضربان قلب، سرعت تنفس، حواس جسمانی، اثرات درد و واکنش های روانی مورد آزمایش قرار داد که به نتایج قابل ملاحظه ای در این زمینه دست یافت. تحقیقات مشابه دیگر از سوی فرانک گبرت بر روی دانشجویان ۲۰ تا ۴۰ ساله صورت گرفت. در این آزمایش ها رنگ قرمز و زرد به عنوان رنگ های محرک و رنگ سبز آرام کننده بود؛ بنابراین رنگ هابا طول موج بلند محرک تر از رنگ ها با طول موج کوتاه هستند. (بختیاری فرد، 1388: 85-88) نکته حائز توجه به این رنگ ها در ارتباط با طبیعت، فرهنگ، باورهای دینی و تجربه های زندگی، هر یک معنایی ویژه به خود اختصاص می دهند. ا
ین ادراک رنگ در میان ملل و اقوام گاه متفاوت و گاه مشابه است. اما به هر حال تابع موقعیت های زمانی، مکانی و جغرافیایی بوده یا از فرهنگ، دین و آیین مردم نشات گرفته است. از سوی دیگر مفاهیمی که زمانی توسط افرادی برای رنگ ها برگزیده شده، در همان دوره اعتبار داشته است. (باخزری، 1345: 34-37) در یک دسته بندی کلی رنگ ها به دو دسته رنگ های اصلی شامل زرد، آبی، قرمز و رنگ های فرعی نظیر سبز، بنفش، نارنجی، زرد مایل به سبز، سبز مایل به آبی، آبی مایل به سبز، بنفش مایل به قرمز و… که از ترکیب رنگ های دیگر به وجود می آیند تقسیم بندی شده است. (لوشر، 1379: 264). بر این اساس هر رنگ ویژگی های منحصر به فردی را در طبیعت دارا بوده و بنا به این ویژگی ها استفاده از هر رنگ در معماری و محیط شهری جایگاه ویژه ای را به خود اختصاص داده است (ولان، 1387: 194).
نمایش میانی داده ساختار یا کدی است که کامپایلر یا ماشین مجازی کد منبع را پس از پردازش به آن تبدیل می کند و در نهایت به کد زبان مقصد که عموماً زبان اسمبلی است تبدیل می شود. می توان از نمایش میانی استفاده نکرد و کد کاربر را مستقیماً به نمایش مقصد تبدیل کرد اما از نمایش میانی برای ساده کردن برخی از تغییرات در کد، مانند ترجمه به زبان سطح پایین تر و بهینه سازی، استفاده می شود. نمایش میانی باید بتواند بدون از دست دادن اطلاعات کد مبدأ را توصیف کند و بتواند به راحتی به کد زبان مقصد تبدیل شود. از آن جایی که نمایش میانی نمایش درونی کامپایلر است، تقریباً هیچ گاه کاربر برنامه ساز با آن ارتباطی ندارد (مگر در موارد خاص بهینه سازی)، پس نیازی نیست که نمایش میانی از ساخت های پیچیده که برنامه نویسی را برای کاربر برنامه ساز آسان می کنند بهره ای ببرد. این ساده سازی راه را برای بهینه سازی بهتر کد توسط کامپایلر باز می کند. عملیات یک کامپایلر به دو بخش کلی عقب و جلو تقسیم می شود. در بخش جلو پس از پردازش کد کاربر، کد به نمایش میانی برده می شود و در بخش عقب کد از نمایش میانی به نمایش مقصد برده می شود. در صورتی که ویژگی های نمایش میان
ی مستقل از زبان منبع باشد، می توان از بخش عقب مشترکی برای کامپایلرهای مختلف استفاده کرد؛ بنابراین نمایش میانی خوب نمایش میانی ای است که مستقل از هر ویژگی نمایش مبدأ یا مقصد باشد؛ بنابراین اگر نیاز داشته باشیم کد n زبان متفاوت را به کد m زبان متفاوت ترجمه کنیم، بدون داشتن IR مناسب به mn کامپایلر نیاز داریم اما در صورت داشتن IR مناسب این امر با داشتن n بخش جلو و m بخش عقب قابل حل است. نمایش میانی می تواند اشکال متفاوتی داشته باشد، اعم از داده ساختار موجود در رم یا کدی به زبان ماشینی مجازی که به مورد دوم زبان میانی نیز گفته می شود. اهمیت نمایش میانی. وظیفهٔ ترجمهٔ زبان های متفاوت به یکدیگر وظیفه ای پیچیده است که با شکسته شدن به دو بخش ساده تر می شود و می تواند بهتر صورت پذیرد. این شکستن با اضافه شدن نمایش میانی به فرایند ترجمه و تبدیل ترجمه به دو مرحلهٔ ترجمه از زبان منبع به زبان میانی و ترجمه از زبان میانی به زبان مقصد صورت می پذیرد. زبان میانی مناسب سطح معنایی ای نزدیک به اسمبلی دارد و باید بتواند با حفظ معنا در مسیر تبدیل کد زبان منبع به کد زبان مقصد (که عموماً کد اسمبلی است) قرار بگیرد. نمایش میانی ای که به
درستی این خاصیت را داشته باشد می تواند به پودمانی کامپایلر کمک کند. در چنین شرایطی کامپایلر به دو بخش کلی عقب و جلو تقسیم می شود که کارشان از یکدیگر مجزا است. به واسطهٔ این جدایی در کامپایلر می توان علاوه بر بهره بردن از طراحی ساده تر و قابل نگه داری تر، از یک کد چند بار استفاده کرد و به این صورت هزینهٔ توسعهٔ کامپایلرها را کاهش داد. بخش جلو، که وظیفهٔ ترجمهٔ دقیق حافظ معنا از زبان مبدأ به نمایش میانی را بر عهده دارد، تنها به زبان منبع وابسته است و کاملاً از بخش عقب که وظیفهٔ ترجمه دقیق از نمایش میانی به زبان مقصد را برعهده دارد و به زبان مقصد وابسته است جداست؛ بنابراین می تواند برای زبان های مبدأ و مقصد متفاوت به صورت مجزا بخش های عقب و جلو را طراحی کرد و در نهایت به یکدیگر متصلشان کرد. از آنجایی که زبان مقصد عموماً زبان ماشین است، عموماً بخش عقب به زبان ماشین وابسته است. با طراحی بخش های عقب متفاوت برای هر ماشین می توان زبان مبدأ را به صورت مجزا از طراحی داخلی ماشین بر روی ماشین های مختلف اجرا کرد و برای زبان های برنامه نویسی جدید تنها کافی است که با طراحی بخش جلو زبان مبدأ به نمایش میانی تبدیل شود و مابقی
مسیر با بخش های عقبی که پیش از این وجود داشته است طی خواهد شد. دوری نمایش میانی از زبان مبدأ و سادگی ذاتی آن زمینه را برای بهینه سازی کد فراهم می کند که نمایش میانی را به یکی از مهمترین پیش نیازهای بهینه سازی مناسب تبدیل می کند. با گسترش استفاده از یک نمایش میانی و استاندارد شدن آن زمینه برای بهبود پردازشگران شرکت های مختلف در سایهٔ این دانش فراهم می شود. نمایش میانی استاندارد می تواند به حل مشکل سازگاری نرم افزارها کمک کند. همچنین نمایش میانی استاندارد می تواند به بهبود روش های بهینه سازی کد با متمرکز کردن گروه های مختلف بر یک مسئلهٔ بهینه سازی بینجامد. در حل مسائل توزیع شده نیز نمایش میانی به عنوان کدی مجزا از پلتفرم می تواند مورد استفاده قرار بگیرد و بر روی تمامی کامپیوترهای مجموعه اجرا شود. نمایش میانی در برابر زبان میانی. در گونه های متفاوت کامپایلرها نمایش میانی چهره های متفاوتی به خود می گیرد. در صورتی که بخش عقب به عنوان یک زیربرنامه توسط بخش جلو صدا زده بشود، احتمالاً نمایش میانی یک درخت تجزیهٔ علامت گذاری شده به همراه جدول مربوطه خواهد بود؛ اما در صورتی که بخش عقب برنامه ای مجزا از بخش جلو باشد، احت
مالاً نمایش میانی زبان ماشینی مجازی است و به آن زبان میانی گفته می شود. به دلیل جدایی بیشتر و بیشتر میان بخش عقب و بخش جلو، به مرور زمان عمدهٔ نمایش های میانی به صورت زبان میانی درآمده اند. انواع مختلف نمایش میانی. نمایش میانی انواع مختلفی دارد که به دو دستهٔ کلی داده ساختارها و زبان میانی تقسیم می شوند. داده ساختارها عموماً به صورت گراف یا درخت به همراه توضیحات مربوطه که در جدول قرار دارند هستند. گراف معنا و گراف کنترل جریان از این دسته به شمار می آیند. زبان میانی نیز زبان یک ماشین فرضی است که عمدتاً به صورت پشته ای یا سه آدرسه است. نمایش میانی می تواند سطوح مختلفی داشته باشد. در مثال زیر سه نمایش میانی در سه سطح متفاوت برای یک قطعه کد نمایش داده شده اند. قطعات کد به ترتیب نشانگر سطح بالا، سطح میانی و سطح پایین هستند. (COPY, 0, i) i := 0 (LABEL, L1) L1: (JGE, i, n, L2) if i&gt;= n goto L2 (INDEX, a, i, t0) t0 := a[i] (ADD, j, 2, t1) t1 := j + 2 (INDEX, t0, t1, t2) t2 := t0[t1] (COPY_TO_DEREF, j, t2) *t2 := j (INCJUMP, i, di, L1) i += di, goto L1 (LABEL, L2) L2: در سطح بالا ساختار زبان منبع به صورت صریح حفظ م
ی شود، برنامهٔ منبع قابل بازسازی است، عملوندها اشیاء معنادار هستند، آرایه ها و محاسبات ساده نمی شوند، ثباتی در کار نیست و به زمان اجرای ماشین توجهی نمی شود. (COPY, 0, i) i := 0 (LABEL, L1) L1: (JGE, i, n, L2) if i&gt;= n goto L2 (MUL, i, 80, t0) t0 := i * 80 (ADD, a, t0, t1) t1 := a + t0 (ADD, j, 2, t2) t2 := j + 2 (MUL, t2, 8, t3) t3 := t2 * 8 (ADD, t1, t3, t4) t4 := t1 + t3 (COPY_TO_DEREF, j, t4) *t4 := j (ADD, i, di, i) i := i + di (JUMP, L1) goto L1 (LABEL, L2) L2: در سطح میانی نمایش از زبان و ماشین مستقل است، داده به اعداد صحیح و ممیز شناور فروکاسته می شود و بهینه سازی مستقل از معماری ماشین صورت می پذیرد. (LDC, 0, r0) r0 := 0 (LOAD, j, r1) r1 := j (LOAD, n, r2) r2 := n (LOAD, di, r3) r3 := di (LOAD, a, r4) r4 := a (LABEL, L1) L1: (JGE, r0, r2, L2) if r0&gt;= r2 goto L2 (MUL, r0, 80, r5) r5 := r0 * 80 (ADD, r4, r5, r6) r6 := r4 + r5 (ADD, r1, 2, r7) r7 := r1 + 2 (MUL, r7, 8, r8) r8 := r7 * 8 (ADD, r6, r8, r9) r9 := r6 + r8 (TOFLOAT, r1, f0) f0 := tofloat r1 (STOREIND, f0, r9) *r9 := f0 (ADD, r0, r3, r0) r
0 := r0 + r3 (JUMP, L1) goto L1 (LABEL, L2) L2: در سطح پایین نمایش میانی به معماری ماشین نزدیک است و به معماری وابسته است، تفاوت اندکی با زبان مقصد دارد، درگیر مسائل زمان اجرا مانند مدیریت حافظه است و بهینه سازی وابسته به معماری انجام می دهد.
اتوماتای سلولی زندگی-گونه(انگلیسی:Life-like cellular automaton) به نوعی از اتوماتای سلولی می گویند که بسیار شبیه بازی زندگی کانوی است، این نوع از اتوماتا معمولاً در فضای دکارتی دوبعدی بیان می شود و هر بعد از دو طرف تا بی نهایت ادامه دارد. به هر خانه از این فضا یک سلول گفته می شود. در این نوع اتوماتا هر خانه دو حالت زنده یا مرده دارد و وضعیت هر خانه در هر مرحله از وضعیت همسایه هایش و خودش در مرحله قبل به صورت یکتا تعیین می شود. قاعده همسایگی برای یک خانه مطابق قانون همسایگی مور تشخیص داده می شود که در این قاعده هر دو خانه که در حداقل یک نقطه اشتراک دارند با هم همسایه هستند، پس هر خانه در این نوع اتوماتا با ۸ خانه دیگر همسایه است. نمایش قاعده. قاعده اتوماتای سلولی زندگی-گونه با استفاده از دو رشته تعیین می شود، قاعده برای همه خانه ها یکسان است و با توجه به این دو رشته مشخص می شود در مرحله بعد سلول وضعیتش چگونه تغییر می کند. دو رشته به این صورت مشخص می شوند که رشته اول مربوط به سلول های زنده است، این رشته مشخص می کند در چه صورتی سول در مرحله بعد زنده می ماند و اگر هیچ کدام از شرایط رشته درست نباشد در مرحله بعد سل
ول می میرد. رشته دوم مشخص می کند برای یک سلول مرده در مرحله بعد تحت چه شرایطی سلول زنده می شود و اگر هیچ کدام از شرایط این رشته درست نباشد سلول در مرحله بعد نیز مرده باقی می ماند. هر رشته به صورت یک دنباله از اعداد ۱ تا ۸ است که مشخص می کند چه تعداد از همسایه های زنده در این قاعده صدق می کنند، رقم هایی که در دنباله آمده اند در شرط دنباله صدق می کنند و سایر رقم ها در شرط دنباله صدق نمی کنند. معمولاً دو رشته را به صورت x/y نشان می دهند که x رشته قاعده برای سلول های زنده است و y رشته قاعده برای سلول های مرده است. مثلاً برای بازی زندگی کانوی قاعده ها به صورت ۲۳/۳ است. مدل های دیگری نیز برای بیان قواعد اتوماتای سلولی زندگی-گونه بیان شده اند، از جمله ولفرم و پکارد در سال ۱۹۸۵ روش کدینگ ولفرم را پیشنهاد دادند، که در این روش از نمایش تبدیل شده باینری به دهدهی برای وضعیت زندگی یک سلول با توجه به همسایه هایش تعریف شده بود. در نوع دیگری از بیان قواعد مطابق روش گالی که از فرمت آر ال ای استفاده می کرد مشابه قواعد نوع اول دو رشته داریم که ابتدای رشته نوع اول حرف 'S' می آید که برای مشخص کردن قاعده زنده ماندن "Survival" است
و ابتدای قاعده دوم حرف 'B' می آید که برای نشان دادن قاعده زنده شدن "Birth" یک سلول مرده است. دسته بندی. اتوماتای سلولی زندگی-گونه را بر حسب الگوی رشدشان و منظم بودن یا نبودن به تعدادی دسته تقسیم می کنند: چند نمونه از قواعد معروف. با توجه به نوع قواعد توصیف شده می توان دید تعداد قواعد ممکن برای اتوماتای سلولی زندگی-گونه بسیار زیاد است. در حالت کلی وضعیت هر خانه با توجه به زنده یا مرده بودنش و با توجه به امکان پذیر بودن یا نبودن هر یک از اعداد ۰ تا ۸ برای وضعیت زندگی اش در مرحله بعد از دو رشته که هر کدام formula_1 حالت دارند پس در کل formula_2 قاعده متفاوت می توانیم داشته باشیم. اما تعداد اندکی از این قواعد به صورت دقیق بررسی شده اند و برخی از این قواعد نام های خاص خودشان را دارند. معروف ترین این قواعد قاعده بازی زندگی کانوی است، قاعده این بازی به صورت ۲۳/۳ است و تعداد زیادی از الگوهای آن مورد بررسی قرار گرفته اند. قواعد بسیار زیادی با الهام گرفتن از بازی زندگی کانوی به وجود آمده اند، تلاش عمده این قواعد برای ایجاد و پخش گلایدرهای منظم است. چند نمونه از قواعد معروف را در این بخش می آوریم: این موراد فقط چند مورد
از موارد متعدد بررسی شده از اتوماتای سلولی زندگی-گونه هستند. در سایت mirekw توصیف تعداد بیشتری از این اتوماتا آمده است. ایده های دیگر برای ساختن اتوماتای سلولی زندگی-گونه. انواع متعددی از اتوماتای سلولی با الهام گرفتن از اتوماتای سلولی زندگی-گونه ساخته شده اند. در اغلب این اتوماتا تعداد همسایگی بیشتر از همسایگی مور است. در نوع دیگری از اتوماتای سلولی به جای فضای دوبعدی از فضای سه بعدی استفاده می کنند، همچنین انواعی از اتوماتای سلولی که سلول ها به صورت مثلث یا شش ضلعی هستند نیز طراحی شده اند.
سوفیک سارگسیان (؛ ؛ زاده ) یک بازیگر اهل ارمنستان است. وی از سال ۱۹۷۴ میلادی فعالیت می کند. زندگی نامه. وی در ۸ دسامبر ۱۹۵۱ در ایروان به دنیا آمد و از دانشگاه دولتی علوم پرورشی خاچاطور آبوویان ارمنستان (۱۹۷۷) فارغ التحصیل شد. سارگسیان بین سال های ۱۹۷۸–۱۹۸۰ به هنرپیشه در تئاتر نمایشی هراچیا غاپلانیان فعالیت کرده است. وی از سال ۱۹۹۵ در انستیتو دولتی سینما و تئاتر ایروان تدریس می کند.
روش ماشین حالت الگوریتمی (انگلیسی: Algorithmic state machine) یا (ASM) یک روش برای طراحی ماشین ها است. این ماشین برای نشان دادن نمودارهایمدارهای دیجیتال یکپارچه شده استفاده می شود. نمودار ASM، مانند نمودار حالت است اما غیررسمی تر و در نتیجه درک آن آسان تر است. یک نمودار ASM یک روش توصیف عملیاتی پی در پی و متوالی یک سامانه دیجیتال است. روش ASM. روش ASM از مراحل زیر تشکیل شده است. نمودار ای اس ام. نمودار ASM، شامل چهار عنصر اساسی است. نام واحد، واحد، چک کردن واحد، خروجی های شرطی. یک ASM به صورت یک مستطیل نشان داده می شود که حالت ها از یک نمودار منظم می باشد. خروجی از نوع ماشین مور در درون مستطیل نشان داده شده است. نام واحد: نام یک واحد در داخل دایره نشان داده شده است؛ و دایره در گوشه سمت چپ قرار دارد یا نام بدون دایره قرار دارد. باکس واحد خروجی واحد در داخل مستطیل نشان داده شده است. باکس تصمیم گیری یک لوزی نشان می دهد که شرط بیان شده مورد آزمایش قرار گرفته و مسیر خروجی به ترتیب انتخاب می-شود. شرایط بیان شامل یک یا چند ورودی به FSM می باشد. برای وضعیت ASM نشان داده شده توسط یک لوزی یا یک ورودی و دو خروجی است و ب
ه شرط انتقال بین دو حالت یا یک حالت و خروجی مشروط استفاده می شود. باکس تصمیم گیری حاوی شرایط بیان شده برای آزمایش بوده و این بیان شامل ورودی برای FSM می باشد. باکس خروجی شرطی: باکس خروجی شرطی به شکل بیضی نشان داده می شود که سیگنال خروجی از نوع میلی می باشد. این خروجی ها نه تنها به واحد بلکه همچنین به ورودی های FSM نیز بستگی دارد. مسیرداده. هنگامی که عملیات مورد نظر در یک مدار با استفاده از عملیات RTL توصیف شده است، اجراهای مسیرداده می توانند مشتق شوند. هر متغیر منحصر به فرد که یک مقدار در برنامه RTL را به خود اختصاص داده است که می تواند به عنوان یک واحد ثبت شده اجرا شود، وابسته به عملیات عملکردی که هنگام اختصاص یک مقدار به یک متغیر انجام می شود، ثبت برای آن متغیر ممکن است به صورت ساده بوده و متغیر در آن دیده شود و یک شمارنده پیش از بلوک منطقی به صورت ترتیبی قرار بگیرد. بلوک منطقی ترتیبی با یک ثبت مرتبط است؛ و می تواند یک کامپایلر را از طریق تابع منطقی ترکیبی اجرا کند. جزئیات نمودار ای اس ام. هنگامی که مسیرداده طراحی شد، نمودار ASM به یک نمودار دقیق تبدیل می شود. نماد RTL با سیگنال های تعریف شده در مسیرداده جا
یگزین می شود.
رودولف روبنی قوندیان (؛ ؛ زاده – درگذشته ۱۷ ژوئیه ۲۰۱۹) یک بازیگر اهل ارمنستان بود که بین سال های ۱۹۷۰ تا ۲۰۱۰ میلادی فعالیت می کرد. زندگی نامه. وی در ۶ مارس ۱۹۵۲ در کیسلوفودسک، سرزمین استاوروپول به دنیا آمد و از انستیتو دولتی هنری و نمایشی ایروان فارغ التحصیل شد. وی در فرهنگستان دولتی تئاتر سوندوکیان فعالیت می کرد. وی همچنین برندهٔ جوایزی همچون هنرمند شایسته جمهوری ارمنستان (۲۰۱۷) شده است. وی پس از یک دوره طولانی بیماری در ۱۷ ژوئیهٔ ۲۰۱۹ در سن ۶۷ سالگی در بیمارستانی در بلژیک درگذشت و در همان جا به خاک سپرده شد. گزیده فیلمشناسی. از فیلم ها یا برنامه های تلویزیونی که وی در آن نقش داشته است می توان به "ناهاپت" (۱۹۷۷)، "رفیق پانجونی" (۱۹۹۳)، "خون"، "دانه انار" اشاره کرد.
برداری سازی خودکار، یک روش بهینه سازی کامپایلر است که در آن بهینه سازی بر روی آرایه (ساختمان داده ها) ها صورت می گیرد. این روش با موازی سازی عملیات بر روی آرایه ها باعث می شود که سرعت برای حلقه های خاصی بسیار بهبود می یابد. برای مثال فرض کنید که قرار است دو بردار را با هم جمع کنید. در این حالت حلقه ای داریم که پارامترهای متناظر دو بردار را با هم جمع می کند. حال از آن جا که پارامترهای مختلف هر بردار بر روی هم تأثیری نمی گذارند می توان تمام این عملیات جمع کردن را با هم انجام داد و آن را از حالت سری که در حلقه وجود دارد می توان خارج کرد. برای مثال اگر فضای برداری ما ۴ بعدی باشد عملاً مجموع دو بردار به صورت زیر پیاده سازی می شود. حال اگر همین مثال بالا را بخواهیم برای فضای برداری n بعدی پیاده سازی کنیم باید از حلقه استفاده کنیم و می توانیم به روشی که در پایین اشاره شده است بسنده کنیم. for (i=0; i&lt;n; i++) c[i] = a[i] * b[i]; کامپایلری که در آن برداری سازی خودکار انجام شود کد بالا را به صورت سری انجام نمی دهد زیرا برای i و j متفاوت دو مجموع عملاً تأثیری بر روی هم ندارند و کامپایلر براساس قدرت پردازشی دستگاه خود
می تواند به صورت موازی با هم جمع کند. پیش زمینه. رایانه های اولیه تمام عملیات های خود را به صورت سری انجام می دادند به عبارتی در هر واحد زمانی یک کار انجام می دادند. با گذشت زمان رایانه ها این قابلیت را پیدا کردند که چند کار را در یک واحد زمانی انجام دهند و از ان زمان مسئله موازی سازی مطرح بود. کامپایلرها نیز ازین قاعده مستثنا نبودند و به سمت موازی سازی رفته اند که یکی از این روش ها برداری سازی خودکار است. Intel's MMXو SSEو AVX و AltiVec و ARM's NEON از این نوع خودکارسازی پشتیبانی می کنند. تضمین. مانند هر بهینه سازی دیگر اهمیت زیادی دارد که بهینه سازی انجام شده باعث به وجود آمدن خطا در پاسخ نشود. روش برداری سازی خودکار از حساس ترین روش ها به این آفت است. در پایین دو مورد از خطاهایی که ممکن است با آن مواجه شویم را آورده ایم. وابستگی داده ها. تمام وابستگی ها در متغیرها را باید در نظر بگیریم. ممکن است در حلقهٔ ما متغیرها بعد از مدتی تغییر کنند و طبعاً موازی سازی می تواند باعث به وجود آمدن جواب غلط شوند. برای بررسی این مسئله نیز الگوریتمی موجود است که به وسیلهٔ ساخت گراف وابستگی این مسئله را برای ما حل می کند. به