من به عنوان ارائه دهنده دستگاه های تورینگ ، اغلب با سوالات در مورد قابلیت های این دستگاه های قابل توجه روبرو می شوم. یک سؤال که اغلب مطرح می شود این است که آیا یک دستگاه تورینگ می تواند عملیات حسابی را انجام دهد. در این پست وبلاگ ، من به این موضوع می پردازم ، و به بررسی زیربنای نظری و کاربردهای عملی عملیات حسابی در دستگاه های تورینگ می پردازم.
مبانی نظری دستگاههای تورینگ
برای درک اینکه آیا یک دستگاه تورینگ می تواند عملیات حسابی را انجام دهد ، درک ابتدا مفاهیم اساسی ماشین های تورینگ ضروری است. یک دستگاه تورینگ ، که توسط ریاضیدان درخشان آلن تورینگ در سال 1936 تصور شده است ، یک مدل محاسباتی انتزاعی است که از یک نوار نامحدود تقسیم شده به سلول ها ، یک سر خواندن - نوشتن که می تواند در امتداد نوار حرکت کند ، و یک واحد کنترل با مجموعه محدودی از حالت ها تشکیل شده است.
این نوار به عنوان حافظه دستگاه عمل می کند ، جایی که نمادها را می توان نوشت و خواند. خواندن - سر نوشتن می تواند به سمت چپ یا راست در امتداد نوار حرکت کند ، نماد را در سلول فعلی بخواند ، نمادی جدید بنویسد و وضعیت واحد کنترل را مطابق مجموعه ای از قوانین از پیش تعریف شده تغییر دهد.
نمایندگی اعداد در یک دستگاه تورینگ
قبل از انجام عملیات حسابی ، تعداد باید روی نوار دستگاه تورینگ نشان داده شود. یک روش مشترک برای نشان دادن اعداد در نماد Unary است. در نماد Unary ، یک عدد صحیح غیر منفی (N) با توالی (N) 1s متوالی روی نوار نشان داده شده است. به عنوان مثال ، شماره 3 به عنوان "111" نشان داده می شود.
یکی دیگر از روشهای کارآمدتر ، نماد باینری است ، که در آن اعداد با استفاده از تنها 0 و 1s نشان داده می شوند ، مشابه نحوه نمایش رایانه ها امروز. نماد باینری امکان نمایش جمع و جور تر از تعداد زیادی را در مقایسه با نماد Unary فراهم می کند.
انجام عملیات حسابی
افزودن
بیایید با عملیات اضافی شروع کنیم. برای افزودن دو عدد (m) و (n) با استفاده از یک دستگاه تورینگ ، می توانیم از رویکرد سطح بالا زیر استفاده کنیم. اگر اعداد در نماد Unary نشان داده شده اند ، ابتدا انتهای شماره اول (دنباله 1s) را می یابیم ، سپس شماره دوم (دنباله 1s) را به آن اضافه می کنیم.
به عنوان مثال ، اگر بخواهیم 2 (به عنوان "11") و 3 (به عنوان "111" نشان داده شود) اضافه کنیم ، دستگاه تورینگ ابتدا انتهای دنباله "11" را پیدا می کند و سپس دنباله "111" را اضافه می کند ، که در نتیجه "11111" است که نشان دهنده شماره 5 است.
در مورد نماد باینری ، روند افزودنی پیچیده تر است. دستگاه تورینگ باید از قوانین علاوه بر باینری پیروی کند ، که شامل حمل آن هنگام اضافه کردن 1 + 1 است. دستگاه مجبور است بیت های مربوط به این دو عدد را از راست به چپ بخواند ، عملکرد اضافی را انجام دهد و حمل را به طور مناسب انجام دهد.


تفریق
تفریق در دستگاه تورینگ نیز امکان پذیر است. در نماد Unary ، برای تفریق (n) از (m) ((m \ geq n)) ، می توانیم تعداد (n) 1s را از دنباله نشان دهنده (m) حذف کنیم.
در نماد باینری ، تفریق را می توان با استفاده از مفهوم مکمل دو اجرا کرد. اول ، شماره دوم به مکمل دو خود تبدیل می شود و سپس عملیات اضافی بر روی شماره اول و مکمل دو شماره دوم انجام می شود.
ضرب
ضرب یک عمل بیشتر درگیر است. در نماد Unary ، برای ضرب (m) و (n) ، می توانیم آن را به عنوان اضافه کردن (m) به خود (n) بار فکر کنیم. دستگاه تورینگ باید تعداد دفعات اضافه شده (M) را پیگیری کند و عملکرد اضافی را به طور مکرر انجام دهد.
در نماد باینری ، ضرب می تواند با استفاده از یک سری شیفت ها و اضافات ، مشابه نحوه عملکرد ضرب در مدارهای دیجیتال انجام شود. دستگاه تورینگ یکی از شماره های باینری را تغییر داده و بر اساس بیت های شماره دیگر آن را به کل در حال اجرا اضافه می کند.
بخش
تقسیم شاید پیچیده ترین عملیات اساسی حسابی باشد. در نماد Unary ، تقسیم می تواند با تفریق مکرر تقسیم کننده از سود سهام تا زمانی که سود سهام کمتر از تقسیم کننده باشد ، اجرا شود. تعداد دفعاتی که تفریق انجام می شود ، مقدار آن است.
در نماد باینری ، الگوریتم های تقسیم پیچیده تر هستند و اغلب شامل ترکیبی از شیفت ها ، تفریق و مقایسه ها هستند.
برنامه های عملی و ارائه محصولات ما
توانایی دستگاه های تورینگ در انجام عملیات حسابی ، پیامدهای بسیار دور است. در زمینه علوم کامپیوتر ، عملیات حسابی بلوک های ساختمانی الگوریتم ها و محاسبات پیچیده تر است. دستگاه های تورینگ ما ، که با دقت و کارآیی در ذهن طراحی شده اند ، می توانند در برنامه های مختلفی که در آن عملیات حسابی مورد نیاز است استفاده شود.
ما طیف وسیعی از محصولات مرتبط با تورینگ را ارائه می دهیم ، از جملهدستگاه تلنگر کاملاً اتوماتیک، که می تواند برای انجام کارهای محاسباتی پیچیده تر در سیستم های بزرگتر ادغام شود. درماشین آلات ساخت پانلدر خط تولید ما نیز برای انجام عملیات حسابی به عنوان بخشی از فرآیندهای کنترل تولید آنها طراحی شده است. علاوه بر این ،خط تولید مونتاژ محورمی تواند از عملیات حسابی برای کارهایی مانند محاسبه ابعاد و مقادیر استفاده کند.
پایان
در نتیجه ، یک دستگاه تورینگ در واقع می تواند عملیات حسابی را انجام دهد. چه علاوه بر این ، تفریق ، ضرب یا تقسیم ، این عملیات از طریق طراحی دقیق قوانین دستگاه و انتقال حالت می تواند بر روی یک دستگاه تورینگ انجام شود. انتخاب نمایندگی شماره (Unary یا باینری) بر پیچیدگی عملیات تأثیر می گذارد ، در حالی که نماد باینری به طور کلی برای تعداد بیشتر کارآمدتر است.
شرکت ما ، به عنوان ارائه دهنده پیشرو در ماشین های تورینگ ، متعهد است که محصولات با کیفیت بالایی را ارائه دهد که می تواند نیازهای متنوع مشتریان ما را برآورده کند. اگر شما علاقه مند به خرید ماشین های تورینگ ما برای کارهای محاسباتی مربوط به حسابی یا برنامه های دیگر هستید ، ما از شما دعوت می کنیم تا برای مذاکره تهیه تهیه کنید. ما اطمینان داریم که محصولات ما می توانند عملکرد و قابلیت اطمینان مورد نیاز شما را در اختیار شما قرار دهند.
منابع
- تورینگ ، AM (1936). در اعداد محاسبه ، با کاربردی در Entscheidungsproblem. مجموعه مقالات انجمن ریاضی لندن ، S2 - 42 (1) ، 230 - 265.
- Hopcroft ، JE ، Motwani ، R. ، & Ullman ، JD (2006). آشنایی با نظریه اتومات ، زبانها و محاسبات. آدیسون - وسلی.



