0% found this document useful (0 votes)
157 views15 pages

Automata Theoritical Lecture7

يقدم المستند مقدمة عن آلة تورنغ وهي آلة نظرية افتراضية تستطيع قبول مجموعة واسعة من اللغات. تتكون آلة تورنغ من وحدة تحكم مركزية وشريط ذاكرة غير منتهي. تقرأ الوحدة التحكمية الرموز على الشريط وتكتب عليه وتتحرك خلية يمينا أو يسارا حسب حالتها الحالية والرمز المقروء.

Uploaded by

diwef26631
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
157 views15 pages

Automata Theoritical Lecture7

يقدم المستند مقدمة عن آلة تورنغ وهي آلة نظرية افتراضية تستطيع قبول مجموعة واسعة من اللغات. تتكون آلة تورنغ من وحدة تحكم مركزية وشريط ذاكرة غير منتهي. تقرأ الوحدة التحكمية الرموز على الشريط وتكتب عليه وتتحرك خلية يمينا أو يسارا حسب حالتها الحالية والرمز المقروء.

Uploaded by

diwef26631
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

‫‪80‬‬

‫نظري‬

‫‪Turing Machine‬‬
‫‪7‬‬
‫‪9/05/2018‬‬ ‫‪15‬‬

‫اللغات الصورية‬
‫مقدمة‬

‫رأينا في المحاضرات السابقة الـ ‪ DFA‬ومشتقاتها مثل الـ ‪ NFA‬و 𝐴𝐹𝑁_‪ ε‬وكلها أالت _ ‪ machines‬تولد اللغات‬
‫المنتظمة (أو تقبل اللغات المنتظمة) ثم انتقلنا إلى ‪ push down automata‬و التي تقبل اللغات خارج السياق ويوجد‬
‫الكثير من اللغات التي ال يمكن قبولها في ‪ PDA‬مثل السلسلة التالية ‪ anbncn‬ال يمكن قبولها في ‪PDA‬‬
‫سنأخذ آلة جديدة اسمها ‪ 𝑇uring machine‬وهذه األلة بإمكانها أن تقبل مجموعة أوسع من اللغات فبإمكانها أن‬
‫تقبل 𝐸𝑅 و 𝑒𝑔𝑎𝑢𝑔𝑛𝑎𝐿 𝑒𝑒𝑟𝐹 𝑡𝑥𝑒𝑡𝑛𝑜𝐶 وتقبل أيضا مجموعة من التعابير التي ال تنتمي إلى هذه اللغات‪.‬‬

‫‪Turing Machine‬‬

‫إن ‪ turing machine‬هي آلة نظرية (آلة نمذجة) أي ليس لها أي وجود فيزيائي حقيقي وضعها آالن تورينغ عام ‪1936‬‬
‫وفي تلك الفترة لم يكن للحواسيب ظهور فعلي ولكن ‪ turing machine‬كانت تمتلك قدرات الحاسوب الفعلي أي كل‬
‫شيء باإلمكان إنجازه بالحاسوب العادي يمكن إنجازه باستخدام ‪.turing machine‬‬
‫نالحظ أنه مع كل آلة أوتومات جديدة نجد زيادة في اإلمكانيات و في نفس الوقت نجد زيادة في القيود مثال في البداية‬
‫𝐴𝐹𝑁 ‪𝐷𝐹𝐴,‬لم يكن لدينا ذاكرة ثم أضفنا ذاكرة في الـ𝐴𝐷𝑃 فأصبح لدينا إمكانيات أكبر أما هنا في‬
‫الـ ‪ turing machine‬أصبحت الذاكرة ال نهائية‪.‬‬

‫‪/ITE.RBCs‬‬
‫‪1‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫ذكرنا سابقا أن‪:‬‬


‫• ‪ PDA‬يتألف من ‪ finite control‬والذي هو عبارة عن مجموعة من حاالت باإلضافة إلى شريط دخل و‬
‫𝑘𝑐𝑎𝑡𝑠 حيث كنا نقرأ الحالة من شريط الدخل باإلضافة إلى الـ 𝑝𝑜𝑡 الخاص بالمكدس فنحدد عملية‬
‫‪ 𝑝𝑢𝑠ℎ‬أو 𝑝𝑜𝑝 على المكدس الخاص بنا‬
‫أما ‪ turing machine‬فهي تتكون من وحدة تحكم مركزية ‪ finite control unite‬والتي هي عبارة عن‬ ‫•‬
‫مجموعة من الحاالت ولدينا شريط ال نهائي أي ليس له بداية وليس له نهاية ويوجد عليه خانات كل خانة‬
‫منهم تحمل رمز من الرموز األبجدية ولدينا ما يسمى الرأس ‪ Head‬يسمى رأس القراءة والكتابة‪.‬‬

‫فمثالً‪ :‬قد نكون عند حالة معينة ويكون الرأس عند رمز معين فباالعتماد على الحالة و الرمز باإلمكان للرأس أن يغير‬
‫هذا الرمز (كون الرأس للقراءة و الكتابة ) الرأس يقرأ سلسلة الدخل الموجودة على الشريط ولدينا مجموعة حاالت‬
‫وبشكل عام عند الحالة االبتدائية يكون الرأس في أقصى اليسار الخاص بالشريط عندما يقرأ الرأس رمز معين باإلمكان‬
‫أن يكتب رمز آخر بدال منه أي يعمل ‪ update‬لهذه القيمة أو يمكن أن يتركه على حاله وذلك حسب تابع االنتقال‬
‫‪ transaction‬الخاص باألوتومات (أي هو يقرأ دائما وأحيانا يكتب وذلك حسب تابع االنتقال ) وبعد ذلك بإمكان‬
‫األوتومات أن يتحرك خلية واحدة نحو اليمين أو نحو اليسار ‪.‬‬

‫كنا قد درسنا سابقا في مقرر بنيان الحواسيب تصميم "فان هوفمان" والذي كان عبارة عن ‪ CPU‬و ‪ Memory‬حيث‬
‫الـ ‪ CPU‬يقوم بعمل ‪ Fetch‬للتعليمات الموجودة في الذاكرة ويقوم بتنفيذها وهنا نفس األمر ولكن في‬
‫الـ ‪ Turing Machine‬نحن نتحدث عن ذاكرة ال نهائية أي الشريط الخاص بنا هو شريط ال نهائي وفعليا هذا الشريط‬
‫هو شريط الدخل وبنفس الوقت هو شريط العمل أي نجد دخلنا على الشريط وعملنا بحد ذاته يتم على الشريط‪.‬‬
‫𝑝𝑎𝑇 𝑒‪𝑇ℎ‬‬

‫‪/ITE.RBCs‬‬
‫‪2‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫𝑔𝑛𝑖𝑟𝑡𝑆 𝑡𝑢𝑝𝑛𝐼 𝑒‪𝑇ℎ‬‬

‫مثال‪:‬‬

‫عند ‪ time0‬كان الـ ‪ Head‬موجودًا عند الرمز ‪ a‬فقام بقراءة ‪ a‬ثم كتب ‪ k‬وتحرك خانة نحو اليسار التي هي 𝑏‪.‬‬
‫عند ‪time1‬كان الـ ‪ Head‬موجودًا عند الرمز ‪ b‬فقام بقراءة ‪ b‬ثم كتب ‪ f‬وتحرك خانة نحو اليمين فرجع ل 𝑘‪.‬‬
‫أبجدية الدخل وأبجدية الشريط‬
‫تختلف أبجدية الدخل عن أبجدية الشريط حيث أن أبجدية الدخل هي نفسها ‪(Σ‬سيغما) أي هي الرموز المكونة للغة‬
‫وهذه األبجدية محتواه ضمن أبجدية الشريط‪.‬‬
‫أما أبجدية الشريط ‪( Γ‬غاما) فهي كل الرموز التي يمكن أن تتواجد على الشريط وهي تشمل أبجدية اللغة باإلضافة‬
‫‪ blanck‬أي رمز فارغ وهو ليس من ابجدية اللغة بل من أبجدية الشريط‪.‬‬ ‫إلى رموز أخرى مثل‬
‫{=‪Γ‬‬ ‫فمثال قد تكون }‪ Σ = { 0 , 1‬وتكون })‪∪ (0 , 1‬‬

‫مالحظة‪ Q∩Σ = ∅ :‬أي الحاالت ليس لهم عالقة بالرموز‪.‬‬

‫‪𝐹ormal Definitions for Turning Machines‬‬


‫‪𝑀 = (𝑄, 𝛴, 𝛤, 𝛿, 𝑞0 ,‬‬ ‫تعرف رياضيا على أنها سباعية كالتالي‪, 𝐹) :‬‬

‫‪/ITE.RBCs‬‬
‫‪3‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫𝑛𝑜𝑖𝑡𝑐𝑛𝑢𝐹 𝑛𝑜𝑖𝑡𝑖𝑠𝑛𝑎𝑟𝑇‬

‫نعرف تابع االنتقال على أنه يأخذ ثنائية من حالة ‪ q‬ويقرأ على الشريط رمز وينقلني إلى ثالثية وهي حالة أخرى ورمز‬
‫وجهة ‪ R‬أو ‪.L‬‬ ‫إدخال أو حتى‬
‫𝑠𝑛𝑜𝑖𝑡𝑖𝑠𝑛𝑎𝑟𝑇 𝑑𝑛𝑎 𝑠𝑒𝑡𝑎𝑡𝑆‬

‫مثال‪:1‬‬

‫• عند ‪ 𝑇𝑖𝑚𝑒1‬قام 𝑑𝑎𝑒𝐻 بقراءة 𝑎 وكتب 𝑏 مكانها ثم انتقل خانة نحو اليمين‬

‫عند ‪ Time2‬قام ‪Head‬بقراءة ‪ a‬وكتب ‪ b‬مكانها ثم انتقل خطوة نحو اليمين‬

‫مثال‪:2‬‬

‫• عند ‪ 𝑡𝑖𝑚𝑒1‬كان الرأس عند 𝑎 فقرأها ثم كتب 𝑏 مكانها‬


‫باالعتماد على تابع االنتقال ثم انتقل خانة نحو اليسار‪.‬‬

‫‪/ITE.RBCs‬‬
‫‪4‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫مثال‪:3‬‬

‫𝑚𝑠𝑖𝑛𝑖𝑚𝑟𝑒𝑡𝑒𝐷‬

‫إن 𝑒𝑛𝑖‪ 𝑇𝑢𝑟𝑖𝑛𝑔 𝑚𝑎𝑐ℎ‬هي آلة حتمية حيث‪:‬‬

‫𝑛𝑜𝑖𝑡𝑐𝑛𝑢𝑓 𝑛𝑜𝑖𝑡𝑖𝑠𝑛𝑎𝑟𝑡 𝑙𝑎𝑖𝑡𝑟𝑎𝑃‬

‫عند حالة معينة ‪ 𝑞1‬إذا قرأنا 𝑎 نكتب 𝑏ونذهب نحو‬


‫اليمين إلى الحالة ‪ 𝑞2‬وإذا قرأنا 𝑏 نكتب 𝑑 ونذهب نحو‬
‫اليسار نحو الحالة ‪ 𝑞3‬ونالحظ أنه ال يوجد انتقال عند إدخال الرمز 𝑐‪.‬‬

‫‪/ITE.RBCs‬‬
‫‪5‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫‪ _Halting‬التوقف‬

‫ويعني الوصول بـ ‪ Turing machines‬إلى حالة ال تملك انتقال)𝑛𝑜𝑖𝑡𝑖𝑠𝑛𝑎𝑟𝑡( فتسمى هذه الحالة حالة توقف‪.‬‬
‫‪The machine halts in a state if there is no transition machines‬‬

‫مثال‪:1‬‬

‫لدينا حالة ‪ halting‬ألننا وصلنا إلى حالة ‪ q1‬ال تملك انتقال )𝑛𝑜𝑖𝑡𝑖𝑠𝑛𝑎𝑟𝑡(‬

‫مثال‪:2‬‬

‫لدينا حالة ‪ halting‬ألنه ال يمكن االنتقال من الحالة ‪ q1‬عند الرمز 𝑐‬

‫𝑒𝑡𝑎𝑡𝑠 𝑔𝑛𝑖𝑡𝑝𝑒𝑐𝑐𝐴‬
‫في 𝑠𝑒𝑛𝑖‪ 𝑇𝑢𝑟𝑖𝑛𝑔 𝑚𝑎𝑐ℎ‬ال يمكنني االنتقال من حالة نهائية إلى حالة غير نهائية أي بمجرد الوصول إلى حالة نهائية‬
‫ال يمكنني الرجوع إلى حالة أخرى‪.‬‬

‫غير مسموحة‬ ‫مقبولة‬

‫𝑒𝑐𝑛𝑎𝑡𝑝𝑒𝑐𝑐𝐴 (قبول سلسلة)‪:‬‬

‫يتم قبول السلسلة المدخلة إذا توقفت الـ ‪ Turing mashines‬عند حالة نهائية‪.‬‬

‫𝑛𝑜𝑖𝑡𝑐𝑒𝑗𝑒𝑅 (رفض سلسلة)‪:‬‬

‫• يتم رفض سلسلة إذا توقفت الـ ‪ Turing machines‬عند حالة غير نهائية أو إذا دخلت بحلقة النهائية‪.‬‬

‫𝑔𝑛𝑖𝑟𝑡𝑠 𝑒‪𝐼𝑛 𝑜𝑟𝑑𝑒𝑟 𝑡𝑜 𝑎𝑐𝑐𝑒𝑝𝑡 𝑎𝑛 𝑖𝑛𝑝𝑢𝑡 𝑆𝑡𝑟𝑖𝑛𝑔, 𝑖𝑡 𝑖𝑠 𝑛𝑜𝑡 𝑛𝑒𝑐𝑒𝑠𝑠𝑎𝑟𝑦 𝑡𝑜 𝑠𝑐𝑎𝑛 𝑎𝑙𝑙 𝑡ℎ𝑒 𝑆𝑦𝑛𝑏𝑜𝑙𝑠 𝑖𝑛 𝑡ℎ‬‬

‫‪/ITE.RBCs‬‬
‫‪6‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫تمرين‪ :1‬أوجد ‪ Turing machines‬لـ الغة التالية ∗𝑎 حيث }𝑏 ‪.∑ = {𝑎,‬‬


‫الحل‪:‬‬

‫مثال‪ :‬لنفرض لدي السلسلة التالية‪:‬‬

‫وهي سلسلة مقبولة‪:‬‬


‫أوال نبدأ بحالة البداية ‪ 𝑞0‬بالرمز 𝑎 ثم انتقل بالجدول للرمز الثاني 𝑎ثم الثالث وعندما أصل إلى الفراغ انتقل الى‬
‫الحالة ‪ 𝑞1‬بالتالي توصَلنا إلى 𝑡‪ halt and accep‬حيث توقفنا عند حالة نهائية‪.‬‬

‫مثال‪ :‬لنفرض لدي السلسلة التالية‪:‬‬

‫وهي سلسلة مرفوضة‪:‬‬


‫أوال نبدأ بالحالة البدائية ‪ q0‬عند الرمز ‪ a‬ثم انتقل بالجدول إلى الرمز ‪ b‬ولكن نالحظ بأنه ليس لدي انتقال من الحالة‬
‫‪ q0‬عند الرمز ‪ b‬وبالتالي توصلنا إلى ‪halt and reject‬‬

‫تمرين‪ :2‬أوجد ‪ turing machines‬للغة ∗𝑎 حيث }𝑎{ = ∑‪.‬‬


‫الحل‪:‬‬

‫مثال‪:‬‬

‫الحالة البدائية هي نفسها الحالة النهائية ألن االبجدية هي فقط عبارة عن الرمز ‪ a‬بالتالي كل السالسل مقبولة‪.‬‬

‫‪/ITE.RBCs‬‬
‫‪7‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫تمرين ‪ : 3‬أوجد ‪ Turing machines‬للغة التالية ∗)𝑏 ‪ 𝑎∗ + 𝑏(𝑎 +‬حيث }𝑏 ‪.∑{𝑎,‬‬

‫مالحظة‪ :‬يوضح لنا هذا التمرين فكرة الحلقة الالنهائية من خالل مثال معين حيث اننا سنستمر في التجول دون الوصول‬
‫لحالة نهائية وبالتالي تكون السلسلة مرفوضة𝑡𝑐𝑒𝑗𝑒𝑟 ‪.‬‬

‫الحل‪:‬‬
‫‪𝑎 → a ,R‬‬ ‫أوالً‪ :‬نقوم باستخراج قواعد إيجاد هذه اللغة فنجد أنها‪:‬‬
‫‪𝑏 → b ,L‬‬ ‫ثانياً‪ :‬نرسم مخطط الحاالت‪:‬‬

‫لنفرض لدي السلسلة التالية‪:‬‬

‫وهي سلسلة غير مقبولة‪:‬‬


‫أوال نبدأ بحالة البداية ‪ 𝑞0‬بالرمز 𝑎 ثم اكتب ‪ a‬وانتقل يميناً فأصادف ‪ b‬فاكتب ‪ b‬وانتقل يساريا وهكذا استمر االنتقال‬
‫دون الوصول الى ال ‪ ‬وبالتالي دون الوصول الى حالة نهائية‪.‬‬

‫مالحظات‪ :‬في حالة الحلقة الالنهائية‪:‬‬


‫‪ .1‬ال يمكن الوصول إلى الحالة النهائية أبداً‪.‬‬
‫‪ .2‬كما أن االلة يستحيل ان تصل إلى حالة ‪(halt‬التوقف)‪.‬‬
‫‪ .3‬وسلسلة اإلدخال تكون مرفوضة‪.‬‬

‫تمرين ‪ : 4‬أوجد ‪ Turing machines‬للغة التالية 𝑛 𝑏 𝑛𝑎 حيث ‪ n>= 1‬و }𝑏 ‪.∑{𝑎,‬‬


‫نرسم مخطط الحاالت‪:‬‬

‫‪/ITE.RBCs‬‬
‫‪8‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫شرح المخطط‪:‬‬
‫الفكرة االساسية من المخطط أننا نقابل كل ‪ a‬مع ‪b‬حتى نتاكد انهما من نفس العدد‪.‬‬
‫حيث اننا من أجل كل خطوة نذهب ألقصى اليسار بحثاً عن اول 𝑎 نجدها فنبدلها بـ ‪ x‬ثم نبحث عن اول ‪ b‬تليها‬
‫فنبدلها بـ ‪ y‬ثم نعاود الذهب ألقصى اليسار بحثاً عن اول ‪ a‬غير محولة لـ‪ x‬فنحولها ثم نبحث عن اول ‪ b‬لم يتم‬
‫تحويلها لـ ‪ y‬فنحولها وهكذا ‪...‬‬

‫• لنفرض لدي السلسلة التالية ‪ aabb‬ولنختبر عليها األوتومات الخاص بنا‪:‬‬

‫‪/ITE.RBCs‬‬
‫‪9‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫‪/ITE.RBCs‬‬
‫‪10‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫‪Configuration‬‬
‫وهي طريقة من أجل تمثيل يربط بين رأس القراءة والكتابة والحاالت وشريط الدخل حيث تمثل بالطريقة التالية‪:‬‬

‫مثال‪:1‬‬

‫‪  c‬‬ ‫‪a b a  ‬‬

‫‪q1‬‬
‫حيث تقرأ كالتالي اننا في حالة ‪ 𝑞1‬والمؤشر ع 𝑏 وقبلها يوجد 𝑎𝑐 وبعدها ‪a‬حيث نستطيع كتابتها ع الشكل التالي‪:‬‬
‫𝑎 𝑏 ‪𝑐 𝑎 𝑞1‬‬

‫‪/ITE.RBCs‬‬
‫‪11‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫مثال‪:2‬‬

‫يمكن كتابة االنتقاالت ع الشكل التالي‪:‬‬


‫𝑏 ‪𝑞2 𝑥𝑎𝑦𝑏 > 𝑥𝑞0 𝑎𝑦𝑏 > 𝑥𝑥𝑞1 𝑦𝑏 > 𝑥𝑥𝑦𝑞1‬‬

‫وتكون كتعبير مكافئ لالنتقاالت السابقة يمكن كتابة‪:‬‬


‫‪‬‬
‫‪q2 xayb  xxy q1 b‬‬
‫مالحظة‪ :‬يمكن تمثيل كلمة كاملة بالطريقة السابقة كما المثال التالي‪:‬‬
‫لتكن لدينا الكلمة 𝑤 وهي عبارة عن السلسة 𝑏𝑏𝑎𝑎 حيث يمكن كتابة الحالة األبتدائية بالشكل‪:‬‬

‫‪Initial configuration:‬‬ ‫𝑤 ‪𝑞0‬‬

‫‪The Accepted Language‬‬


‫اللغة المقبولة في 𝑒𝑛𝑖‪ 𝑡𝑢𝑟𝑖𝑛𝑔 𝑚𝑎𝑐ℎ‬هي مجموعة كل الكلمات المقبولة على شريط الـ 𝑒𝑛𝑖‪ 𝑡𝑢𝑟𝑖𝑛𝑔 𝑚𝑎𝑐ℎ‬أي‬
‫مجموعة كل الكلمات التي تنقلنا من الحالة األبتدائية الى احدى حاالت الـ 𝒕𝒍𝒂𝑯 ‪.‬‬
‫فيكون من أجل أي 𝑒𝑛𝑖‪ 𝑡𝑢𝑟𝑖𝑛𝑔 𝑚𝑎𝑐ℎ‬ولنرمزها بالرمز 𝑀 ‪:‬‬

‫• نقول عن اللغة المقبولة في 𝑒𝑛𝑖‪ 𝑡𝑢𝑟𝑖𝑛𝑔 𝑚𝑎𝑐ℎ‬بأنها ‪ Turing Recognizable‬كما يطلق عليها األسماء‬
‫التالية‪:‬‬
‫‪Turing Acceptable -‬‬
‫‪Recursively Enumerable -‬‬

‫‪/ITE.RBCs‬‬
‫‪12‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫‪Computing Functions with Turing Machines‬‬

‫أن الـ 𝑠𝑛𝑜𝑖𝑡𝑐𝑛𝑢𝐹 𝑔𝑛𝑖𝑡𝑢𝑝𝑚𝑜𝑐 في 𝑠𝑛𝑖‪ 𝑇𝑢𝑟𝑖𝑛𝑔 𝑚𝑎𝑐ℎ‬تختلف عن عملية قبول سلسلة من لغة معينة ففي‬
‫عملية قبول سلسلة يجب االنتقال من حالة معينة واالنتهاء بأحد الحاالت التوقف وعندها نحكم عن هذه السلسلة بأنها‬

‫مقبولة أم غير مقبولة‪.‬‬


‫وإنها كما جميع الـ 𝑠𝑛𝑜𝑖𝑡𝑐𝑛𝑢𝐹 لها منطلق ومستقر‪.‬‬

‫في 𝑠𝑛𝑜𝑖𝑡𝑐𝑛𝑢𝑓 𝑔𝑛𝑖𝑡𝑢𝑝𝑚𝑜𝑐 يجب علينا أيجاد ألية معينة من أجل ترميز الدخل وتمثيله ع شريط الـ 𝑀𝑇‬
‫وحيث يتم وضع الخرج على نفس الشريط الذي يحل محل ما كان موجود من قبل‪.‬‬
‫‪Example: Addition function‬‬
‫𝑦 ‪𝑓(𝑥, 𝑦) = 𝑥 +‬‬
‫يجب علينا التوصل الى ألية من أجل ترميز الدخل فلتكن على النحو التالي‪ :‬ولنأخذ الرقم ‪ 5‬على سبيل المثال‪:‬‬
‫‪Decimal: 5‬‬
‫‪Binary: 101‬‬
‫‪Unary: 11111‬‬
‫أي سوف نقوم بتمثل الرقم بعدد من الواحدات التي تساوي الرقم الممثل‪.‬‬

‫كيف سنقوم بعملية الجمع؟‬


‫𝑦 ‪𝑓(𝑥, 𝑦) = 𝑥 +‬‬
‫سنقوم بتمثيل الرقم األول 𝑥 ومن ثم سنضع ‪ 0‬لداللة على ان الرقم األول قد انتهى ومن ثم نرمز الرقم الثاني‬
‫والعملية تتم بقلب الصفر الى واحد وجعل اخر واحد عبارة عن صفر أي كالتالي‪:‬‬

‫‪/ITE.RBCs‬‬
‫‪13‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫ويكون التمثيل على 𝑒𝑛𝑖‪ 𝑡𝑢𝑟𝑖𝑛𝑔 𝑚𝑎𝑐ℎ‬كالتالي‪:‬‬

‫مالحظة‪ :‬ان الصفر األخير مهم من اجل استخدام الناتج في عمليات أخرى‬

‫لنأخذ مثال عن عملية الجمع وليكن‪:‬‬

‫ويكون الـ 𝑒𝑛𝑖‪ 𝑇𝑢𝑟𝑖𝑛𝑔 𝑀𝑎𝑐ℎ‬لـ 𝑦 ‪:𝑓(𝑥, 𝑦)𝑥 +‬‬

‫مثال‪ :‬إيجاد ضعفي عدد أي 𝑥‪𝑓(𝑥, 𝑦) = 2‬‬


‫حيث سيكون الدخل عبارة عن رقم معين والخرج ضعفي هذا الرقم كالتالي‪:‬‬

‫‪/ITE.RBCs‬‬
‫‪14‬‬
‫‪ | TM‬د‪ .‬محمد األحمد‬

‫وسنقوم بالترميز كما في المثال السابق بعدد من الواحدات المساوي للرقم المدخل‬
‫حيث خوارزمية الحل على الشكل التالي‪:‬‬
‫‪ .1‬من اجل كل ‪ 1‬على شريط الـ 𝑀𝑇 استبدله بـ ‪ $‬حتى نصل الى اخر السلسلة‪.‬‬
‫‪ .2‬تكرار التالي‪:‬‬
‫• إيجاد الـ ‪ $‬في أقصى اليمين واستبداله بـ ‪1‬‬
‫بـ ‪ ،1‬ثم يعود خطوة الى اليسار‬ ‫• اذهب خطوة الى اليمين واستبدل‬
‫‪ .3‬يتم التكرار حتى يحول كل الـ ‪ $‬على شريط الدخل الى القيمة ‪.1‬‬

‫مالحظات‪:‬‬
‫إن الـ 𝑠𝑒𝑛𝑖‪ 𝑡𝑢𝑟𝑖𝑛𝑔 𝑚𝑎𝑐ℎ‬تتمتع بقدرة أكبر من األجهزة واألدوات التي مرت معنا سابقاً‪.‬‬
‫كما أنها تشبه بعملها إلى حد كبير عمل الحاسوب حيث أن الحاسوب يقوم بنفس الطريقة بحيث لديه ألية خاصة من‬
‫أجل ترميز األعداد والقيام بعمليات حسابية عليها‪.‬‬
‫في 𝑠𝑛𝑜𝑖𝑡𝑐𝑛𝑢𝑓 𝑔𝑛𝑖𝑡𝑢𝑝𝑚𝑜𝑐 الخرج عبارة عن شكل تمثيلي بحيث نحن نحتاج الى جهاز اخر من أجل فهم قيمة‬
‫الخرج‪.‬‬

‫انتهت المحاضرة نتمنى لكم دراسة موفقة‪...‬‬

‫‪/ITE.RBCs‬‬
‫‪15‬‬

You might also like