مقالات

6.1: إيجاد قيمة التعبيرات


6.1: إيجاد قيمة التعبيرات

تقييم التعبيرات بناءً على القواعد النحوية المعطاة

هناك طريقتان لتقييم التعبيرات بناءً على قواعد نحوية معينة-

الطريقة 01: رسم شجرة التحليل-

في هذه الطريقة ، يتم اتباع الخطوات التالية-

  • نرسم أ تحليل شجرة للتعبير المعطى.
  • نقوم بتقييم شجرة التحليل للحصول على القيمة المطلوبة للتعبير.

عائق-

  • يعد رسم شجرة تحليل للتعبيرات الكبيرة أمرًا مرهقًا ويستغرق وقتًا طويلاً.
  • لذلك ، يصعب اتباع هذه الطريقة عندما يكون التعبير كبيرًا.

الطريقة 02: تصميم R ules للمشغلين-

في هذه الطريقة ، يتم اتباع الخطوات التالية-

  • نحن نقرر أولوية وترابط المشغلين في القواعد.
  • نقسم التعبير المعطى بين قوسين.
  • نقوم بتقييم التعبير للحصول على القيمة المطلوبة.

مميزات-

  • هذه الطريقة سهلة المتابعة سواء كان التعبير صغيرًا أو كبيرًا.
  • لذلك ، هذه الطريقة هي المفضلة.

قواعد تحديد أولوية المشغلين-

لقواعد معينة لا لبس فيها ،

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

مثال-

(نظرًا لأن T → id موجود في أدنى مستوى)

(بما أن E → E x F / F + E موجودة في أعلى مستوى)

(بما أن E → E x F / F + E موجودة في نفس المستوى)

(حيث أن F → F & # 8211 T موجود في المستوى المتوسط)

هوية شخصية & GT & GT ( x , + )

قواعد تحديد ارتباط المشغلين-

لقواعد معينة لا لبس فيها ،

  • يتم تحديد ترابط المشغلين عن طريق التحقق من نوع العودية في الإنتاج.
  • إذا ترك الإنتاج العودية ، فسيتم ترك المشغل مرتبطًا.
  • إذا كان للإنتاج حق التكرار ، فإن المشغل هو حق النقابي.
  • إذا كان الإنتاج يحتوي على العودية اليمنى واليسرى ، فإن المشغل ليس ترابطيًا يسارًا ولا رابطًا يمينًا.

مثال-

(منذ أن تركت E → E x F العودية فيها)

(بما أن E → F + E بها العودية الصحيحة)

(حيث أن F → F & # 8211 F يحتوي على كل من العودية اليمنى واليسرى فيه)


6.1: إيجاد قيمة التعبيرات

g <| B ( 6 / I > < I H < h l = w ` / sR Z6r & l F، 25c > endobj 14 0 obj [333333500564250333250278500500500500500500500500500500278278564 564 5644444921722667667722611556722722333338972261188972227225567226675566117227229447226113332783333469500333444500444500444333500500278278500278778500500 500500333389278500500722500] endobj 15 0 obj> endobj 16 0 obj> stream x ڭ veT v6 ٪ ݃ K 8 w @ t Ǭ l kh (4Y $، ́N ` VvA * M A I @ E h x H 'Gi30P $ + e`bb / [ # @ ֎ ؟ d H> P WP ˩j 䀎 @ W3 < = VN 'GK _ cI n @ < tu n kW3G N _ 뭜 v p 9 Y դ e Q' Wn7л d i d WK a ޭ`3 9ۛ y

Co : 6 p. endstream endobj 25 0 obj> endobj 26 0 obj [277.8] endobj 27 0 obj> endobj 28 0 obj> stream x ڍ w T m ؟ M ݝ # A U A ٪ U $٪ $ T w أوه 8 ` / Y R Y H w ㇸ # | D Ë C C w @ x W D ' XT $ ێ # | ع 8 o2 = | 7

الجبر والرياضيات والرياضيات والتعبيرات

مكتبة Python PDF - http://pybrary.net/pyPdf/

endstream endobj xref 0 33 0000000000 65535 f 0000000015 00000 n 0000000080 00000 n 0000000433 00000 n 0000000499 00000 n 0000000616 00000 n 0000000724 00000 n 0000001975 00000 n 0000002091 00000 n 0000002263 00000 n 0000002387 00000 n 0000002673 00000 n 0000002298000 0000009696 00000 n 0000010070 00000 n 0000023418 00000 n 0000023557 00000 n 0000023686 00000 n 0000023935 00000 n 0000031290 00000 n 0000031428 00000 n 0000031476 00000 n 0000031724 00000 n 0000038974 00000 n 0000039114 00000 n 0000046 n 0000023935 00000 n 0000031290 00000 n 0000031428 00000 n 0000031476 00000 n 0000031724 00000 n n 0000048115 00000 n مقطورة> startxref 50445 ٪٪ EOF


SystemVerilog: تقييم التعبيرات

الاعتذار عن الوظيفة المتأخرة. أود اليوم أن أصف التقنية المستخدمة لتقييم التعبيرات ذات المظهر البسيط في SV. قراءة من System Verilog LRM 1800-2012 ، الفصل 11 ، فيما يلي تعريف التعبير:

التعبير هو بناء يجمع المعاملات مع عوامل التشغيل لإنتاج نتيجة تكون دالة لقيم المعاملات والمعنى الدلالي للمشغل. أي معامل قانوني ، مثل net bitselect ، بدون أي عامل يعتبر تعبيرًا.

يمكن أن يكون المعامل متغيرًا أو ثابتًا أو أي شيء من عدد n من الموارد المتاحة.
العوامل هي الرموز المستخدمة لأداء العمليات الحسابية أو المنطقية على المعاملات.

يمكن تطبيق عوامل التشغيل على قيم 2-state أو 4-state أو خليط من قيم 2-state و 4-state. تكون النتيجة هي نفسها كما لو تم التعامل مع جميع القيم كقيم ذات 4 حالات. إذا كانت جميع المعاملات 2-state ، فسيتم تحسين النتيجة إلى قيمة 2-state.

على سبيل المثال ، تم تحسين X & # 8217s في التعبير التالي إلى 0 تلقائيًا لأن int هو نوع بيانات من حالتين:

int n = 8'b0010_xxxx | يقيّم 4'b0101_1010 // n إلى 8'b0011_1010. يتم تحسين x إلى الصفر
عدد صحيح م = 'h4 / 0 // m يقيّم إلى' x. القسمة على صفر.

يستخدم SystemVerilog طول البت للمعاملات لمعرفة عدد البتات التي سيتم استخدامها أثناء تقييم التعبير. طول البت لمتغير LHS هو الأكثر أهمية. تم تقديم قواعد طول البت في القسم 11.6.1 من 1800 إلى 2012. في حالة عامل الإضافة ، يجب استخدام طول بت لأكبر معامل ، بما في ذلك الجانب الأيسر من التخصيص. فيما يلي مثال من LRM حول ذلك سوف يوضح فهم طول البت:

المنطق [15: 0] أ ، ب // متغيرات 16 بت
منطق [15: 0] sumA // متغير 16 بت
منطق [16: 0] sumB // متغير 17 بت
sumA = a + b // يقيّم التعبير باستخدام 16 بت
sumB = a + b // يقيّم التعبير باستخدام 17 بت

يمكن أن تؤدي عملية الحساب ذات المظهر البسيط إلى العديد من المشكلات كما هو موضح في المثال التالي:

المنطق [7: 0] أ ، ب ، إجابة // متغيرات 7 بت

الإجابة = (a + b) & gt & gt 1 // تعمل بشكل غير صحيح

الإجابة = (a + b + 0) & gt & gt 1 // يعمل بشكل صحيح

هنا ، جميع المتغيرات هي 8 بت. تمت إضافة & # 8220 a & # 8221 و & # 8220 b & # 8221 وإزاحتها لليمين بمقدار 1 للحفاظ على بت الحمل. ولكن ، هناك سيتم تقييم التعبير (a + b) لـ 8 بتات فقط وسيتم فقد بت الفائض. عند التبديل بمقدار 1 ، سيتم فقط إلحاق 0 على جانب MSB (وليس بت الفائض الفعلي).

سيكون حل هذا هو جعل هذا التعبير بطول 32 بت. لاحظ أن إضافة a & # 8220 0 & # 8221 إلى (a + b) سيأخذ & # 8220 0 & # 8221 كقيمة عدد صحيح 32 بت ويؤدي الإضافة لـ 32 بت. من الآن فصاعدًا ، يمكن الآن الحفاظ على بت الفائض بشكل صحيح.

لنأخذ & # 8217s مثالاً مستخدمًا بسيطًا حول مدى حاجتنا الشديدة إلى هذه الأشياء. فقط حاول أن تجيب بنفسك على ناتج الكود التالي ثم انظر إلى الإجابات:

بت [7: 0] اختبار = 255
if (test == 255) $ display ("1. test is 255") else $ display ("1. test not 255")
if (test == '1) $ display ("2. test is' 1") else $ display ("2. test not '1")
عرض $ ("3.

test == 0) $ display ("4. test is 0") else $ display ("4. الاختبار ليس 0")
إذا(

test == '0) $ display ("5. test is' 0") else $ display ("5. الاختبار ليس '0")

أعتقد أن الأكثر إرباكًا سيكون الرابع. هنا ، & # 8220 0 & # 8220 ، بدون أي قيمة افتراضية لبادئة العرض 32 بت كما تمت مناقشته في المثال السابق. لذلك ، سيتم توسيع الاختبار إلى 32 بت والآن سيكون الاختبار & # 8220 32 & # 8217h0FF & # 8220 ، ثم قلبه مما يجعله

test = 32 & # 8217h100 ثم مقارنتها بـ 32 & # 8217h0. من الواضح أن هذا سيفشل في فحص المساواة.

لاحظ أنه في تعبير المساواة ، يتم تغيير حجم المعاملات إلى أقصى عرض بين التعبيرات الموجودة في تعابير LHS و RHS قبل تقييم تلك التعبيرات.

test == 9 & # 8217h100 وبعد ذلك ستعمل بشكل جيد لأن التعبير الآن هو 9 بت. ستعمل أيضًا لأننا نقوم بتقييم التعبير لـ 8 بت فقط.

آمل أن يساعد هذا في تجنب الأخطاء الطفيفة والمربكة أثناء ترميز التعبيرات لأطوال مختلفة في System Verilog. للحصول على معلومات مفصلة حول قواعد تقييم التعبير ، راجع القسم 11.8 من LRM 1800-2012.


إذا كنت معتادًا على ترتيب العمليات ، فإن تقييم التعبيرات الجبرية أمر سهل للغاية! تذكر فقط استبدال القيم المعطاة لكل متغير وتقييمها.

تعليقات

هل تحتاج إلى مزيد من المساعدة في دراسات الجبر؟

احصل على الوصول إلى المئات من أمثلة الفيديو وممارسة المشاكل مع اشتراكك! & # xa0

انقر هنا لمزيد من المعلومات حول خيارات الاشتراك بأسعار معقولة.

ألست مستعدًا للاشتراك؟ & # xa0 سجل في دورة تنشيط ما قبل الجبر المجانية.

أعضاء دورة الجبر الإلكترونية

انقر هنا للحصول على مزيد من المعلومات حول الدورات الإلكترونية لفصل الجبر.


6.1: إيجاد قيمة التعبيرات

سئل من قبل:

سؤال

البحث عن برنامج تطوير الويب الذي يسمح بتفويض التنزيلات بناءً على طلب على حدة. لم أتمكن من تحديد أي جزء من Expression Web 4 يساعد في إعداد هذا.

كيف أضيف هذه الوظيفة إلى موقع Expression Web 4 الخاص بي؟

نعم ، أنا جديد في تطوير المواقع الإلكترونية.

كل الردود

هذه ليست دالة HTML / CSS. لا تعتمد على برامج تطوير الويب. يعتمد ذلك على خادمك ، ستحتاج إلى خادم يقوم بتشغيل ASP.NET أو PHP.

يعتمد الحل على ما يدعمه خادمك. ما الذي يتوفر لديك على الخادم الخاص بك؟

عن ماذا تتحدث؟ يتطلب أي ملف لا يكون تنسيقه تنسيقًا أصليًا قابلاً للعرض على الويب (مثل .doc و .xls و .ppt وما إلى ذلك) ارتباطًا بسيطًا فقط بالملف. عندما يتم النقر على رابط ولا يعرف المتصفح كيفية التعامل معه ، فإنه يعرض إما حفظه أو فتحه (تعرض معظم المتصفحات الفتح باستخدام المعالج الافتراضي المسجل لنظام التشغيل لهذا الامتداد).

إذا كنت تتحدث عن شيء آخر ، فكن أوضح. حدد ما هو هدفك الفعلي ، والعملية التي ترغب في أن يستخدمها المستخدم للحصول عليه.

يرجى تذكر & quotMark as Answer & quot & quot؛ الردود التي حلت مشكلتك. من المجاملة العامة أن تتعرف على أولئك الذين ساعدوك ، كما أنه يسهل على الزائرين العثور على الحل لاحقًا.

أنت بحاجة إلى مطور لإنشاء واجهة خلفية برمز جانب الخادم لإدارة من يمكنه تنزيل ما أو شراء تطبيق تمت كتابته بالفعل للقيام بما تريد ثم دمجه في موقعك.

Expression Web هي أداة تصميم للواجهة الأمامية وليست واجهة برمجة IDE في Visual Studio.

آه ، حسنًا ، غاب عن جزء OP المتعلق بتفويض التنزيلات. يبدو وكأنه صفقة اشتراك / شراء للصور والكتب الإلكترونية وأيًا كان. في هذه الحالة ، ما قاله بيل وشيريل. هذه ليست وظيفة EW ، ولكنها وظيفة رمز خلفية من جانب الخادم. هناك شيء يمكنك البحث عنه وهو عربات التسوق البسيطة التي يمكنها التعامل مع مبيعات نقل الوسائط الرقمية.

فقط لا تتوقع العثور على هذا النوع من الأشياء المضمنة في أي برنامج تصميم ويب أمامي مثل EW و Dreamweaver وما إلى ذلك.

يرجى تذكر & quotMark as Answer & quot & quot؛ الردود التي حلت مشكلتك. من باب المجاملة العامة التعرف على أولئك الذين ساعدوك ، كما أنه يسهل على الزائرين العثور على الحل لاحقًا.

لتوضيح ما قاله الآخرون ، ما تصفه ليس وظيفة أداة تصميم الويب. إنها * نتيجة * لتطورك *.

لتفويض المستخدمين ، تحتاج إلى كتابة رمز يقوم بذلك. في EW ، هناك دعم لـ asp.net الذي يحتوي على أدوات عضوية ، والتي ستؤدي الحيلة ، لكنها بالتأكيد ستتطلب التعلم من جانبك ولها متطلبات من جانب الخادم لـ asp.net وقاعدة بيانات مناسبة. [يعد إعداد هذا الأمر أكثر ملاءمة مع Visual Developer Express (مجاني) أو Visual Studio ، ولكن يمكن إجراؤه باستخدام الحرب الإلكترونية فقط ووصول معقد قليلاً إلى أداة إدارة موقع الويب.] يمكنك القيام بذلك بطرق أخرى ، مرة أخرى اعتمادًا على ما البرمجة النصية من جانب الخادم لديك.

ولكن ، مرة أخرى ، هذا عليك أن تتعلمه ، وليس شيئًا تقوم به أداة تصميم الويب تلقائيًا نيابة عنك.


6.1: إيجاد قيمة التعبيرات

عادة ، تقوم بتقييم التعبيرات ببساطة عن طريق كتابتها في موجه Octave ، أو عن طريق مطالبة Octave بتفسير الأوامر التي قمت بحفظها في ملف.

في بعض الأحيان ، قد تجد أنه من الضروري تقييم تعبير تم حسابه وتخزينه في سلسلة ، وهو بالضبط ما تتيحه لك وظيفة Eval.

EVAL ( يحاول ) EVAL (جرب ، قبض)

قم بتحليل السلسلة وحاول تقييمها كما لو كانت برنامج Octave.

إذا فشل التنفيذ ، فقم بتقييم مصيد السلسلة الاختياري.

يتم تقييم محاولة السلسلة في السياق الحالي ، لذلك تظل أي نتائج متاحة بعد إرجاع Eval.

يقوم المثال التالي بإنشاء المتغير A بقيمة تقريبية تبلغ 3.1416 في مساحة العمل الحالية.

إذا حدث خطأ أثناء تقييم المحاولة ، فسيتم تقييم سلسلة catch ، كما يوضح المثال التالي:

ملاحظة البرمجة: إذا كنت تستخدم EVAL كآلية لالتقاط الأخطاء ، بدلاً من تنفيذ سلاسل تعليمات برمجية عشوائية ، ففكر في استخدام كتل try / catch أو كتل unlock_protect / unsind_protect_cleanup بدلاً من ذلك. تتمتع هذه التقنيات بأداء أعلى ولا تقدم اعتبارات الأمان التي يقوم بها تقييم التعليمات البرمجية العشوائية.

بالإضافة إلى ذلك ، تلتقط الدالة Evalc أي مخرجات وحدة تحكم ينتجها التعبير المقيَّم.

ق = التقييم ( يحاول ) ق = التقييم (جرب ، قبض)

قم بتحليل وتقييم السلسلة كما لو كانت برنامج Octave ، أثناء التقاط الإخراج في متغير الإرجاع s.

إذا فشل التنفيذ ، فقم بتقييم مصيد السلسلة الاختياري.

تعمل هذه الوظيفة مثل EVAL ، ولكن أي رسائل إخراج أو تحذير يتم كتابتها عادةً إلى وحدة التحكم يتم التقاطها وإعادتها في السلسلة s.

يتم تعطيل اليوميات أثناء تنفيذ هذه الوظيفة. عند استخدام النظام ، فإن أي ناتج يتم إنتاجه بواسطة البرامج الخارجية يكون ليس تم الاستيلاء عليها ، ما لم يتم التقاط مخرجاتها بواسطة وظيفة النظام نفسها.


في البداية ، يتم تقييم التعبيرات داخل الأقواس. إذا لم يكن هناك أقواس ، فسيتم تقييم التعبير الحسابي من اليسار إلى اليمين. هناك مستويان من أولويات المشغلين في C.

ذا أهيمة عليا: * / %
أولوية منخفضة: + –

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

لنفترض أن لدينا تعبيرًا حسابيًا على النحو التالي:

يتم تقييم هذا التعبير في مسارين من اليسار إلى اليمين على النحو التالي:

ولكن عند استخدام الأقواس في نفس التعبير ، يتغير ترتيب التقييم.

عند وجود الأقواس ، يتم تقييم التعبير الموجود داخل الأقواس أولاً من اليسار إلى اليمين. يتم تقييم التعبير الآن في ثلاث ممرات على النحو التالي:

الممر الثاني

قد تظهر أيضًا حالة حيث توجد الأقواس المتداخلة (أي الأقواس داخل الأقواس). في مثل هذه الحالة ، يتم تقييم التعبير الموجود داخل مجموعة الأقواس الداخلية أولاً ثم يتم تقييم الأقواس الخارجية.

على سبيل المثال ، لدينا تعبير على النحو التالي:

يتم الآن تقييم التعبير على النحو التالي:

الممر الثاني

ملاحظة: عدد خطوات التقييم يساوي عدد العوامل في التعبير الحسابي.


أسئلة مشابهة

حساب التفاضل والتكامل

1- قيم التكامل. (استخدم C لثابت التكامل.) تكامل ln (sqrtx) dx 2. استخدم طريقة الأغطية الأسطوانية لإيجاد الحجم V الناتج عن تدوير المنطقة التي تحدها المنحنيات حول المحور المحدد. ص =

حساب التفاضل والتكامل

1. عبر عن التكامل المعطى باعتباره نهاية مجموع Riemann ولكن لا تقيمه: تكامل [0 إلى 3] ((x ^ 3 - 6x) dx) 2. استخدم النظرية الأساسية لتقييم التكامل [0 إلى 3] (( x ^ 3 - 6x) dx) (يجب أن تتضمن إجابتك امتداد

حساب التفاضل الضمني

1) دع x ^ 3 + y ^ 3 = 28. أوجد y "(x) عند النقطة (3 ، 1). y" (3) = الإجابة الصحيحة هي: -2 * 3 * 28 = -168 3x ^ 2 + 3y ^ 2 (dx / dy) = 0 6x + 6y (dx / dy) = 0 dx / dy = -6 (3) / 6 (1) = -3 هذا بقدر ما أحصل عليه. لا أعرف حتى ما إذا كان هذا قد بدأ

رياضيات. تحتاج مساعدة

1.إذا كانت g = 5 و k = 1 ، فاحسب 9 + gk a. 13 ب. 14 ج. 15 د. 16 2- قم بتقييم a-b ^ 2 / b إذا كانت a = 10 و b = 2. أ. 1 ب. 3 ج. 8 د. 32 .3 قم بتقييم 3xy ^ 2 - y إذا كانت x = 2 و y = 5. أ. 26 ب. 30 ج. 120 د. 145 4- قم بتقييم 2d + d ^ 2/3 إذا كانت d = 6. أ. 4 ب. 12 ج.

1. تقييم (-7) 2. (نقطة واحدة) –49 –14 14 49 2. تقييم 4 3. (نقطة واحدة) 12 20 64 81 3. أوجد قيمة 2 4. (نقطة واحدة) 8 16 34 64 4. قم بإجراء التقييم باستخدام ترتيب العمليات: 4 2 + 7 - 2. (نقطة واحدة) 13 21 32 69 5. قم بإجراء التقييم باستخدام

قبل احسب

احسب الدالة المثلثية للزاوية الرباعية المعطاة. tan 1440 ° قم بإجراء التقييم بدون استخدام النسب في المثلث المرجعي. ثانية 3π / 4

1) قيم: تكامل (3x ^ 2 + 5x - 1 + 3 / x) dx x ^ 3/3 + x ^ 2/5 - x هل هذا صحيح؟ 2) قيم: تكامل (5e ^ 7x + srqtx) dx لست متأكدًا من ذلك. هل يمكن أن توضح. شكرا لك على مساعدتك!

أخلاق

يتصل بك زميل في العمل الساعة 9 صباحًا في العمل ويطلب منك معروفًا. إنه يواجه مشكلة هذا الصباح وسيتأخر ساعة عن العمل. يوضح أنه قد تأخر بالفعل عن العمل مرتين هذا الشهر وأن المرة الثالثة ستتكلف

الجبر 2 التحقق من الإجابة

تبسيط. 1. 5√6 - √24 A: 3√6 2. أوجد قيمة 3y + 5xy - x من أجل x = 4 و y = 2 A: 42 3. بسّط 3x (5y + 4) - 2xy - 10x + 6x ^ 2 A : 3xy + 2x + 6x ^ 2 4. أوجد قيمة 5 ^ -3 A: 1/125 5. بسّط ((-2x ^ 4y ^ 7) / (x ^ 5)) ^ 3. افترض كل المتغيرات

(i) احسب التكامل [x ^ 3 / (x ^ 2 + 4) ^ 2] باستخدام التعويض المثلثي. (ii) احسب التكامل [x ^ 3 / (x ^ 2 + 4) ^ 2] باستخدام التعويض العادي. (3) استخدم المثلث الأيمن للتحقق من أن كلا الإجابتين حصلت عليهما بالفعل

تقيم التكاملات التكامل المحدد من 1 إلى 9 لـ ((x-1) / (sqrt x)) dx؟ هل سيكون هذا الشخص فرعيًا؟ أوجد التكامل من 0 إلى 10 لقيمة abs (x-5) dx؟ أعتقد أن هذا سيتم تقسيمه ولكن لست متأكدًا كيف ولماذا؟

حساب التفاضل والتكامل

يريد أستاذنا أن نقيم الحدود بشكل تحليلي دون استخدام جدول أو رسم بياني ، وإذا لم يكن موجودًا فعلينا وصف السلوك بالقرب من نقطة النهاية. لست متأكدًا من كيفية إيجاد قيمة كل جانب في النهاية على حدة


الملحق 1: تقييم التعبيرات

نرى أن EVM "2 + 3" يحسب نفس قيمة 2 + 3 ، لكن EVM ينتج أيضًا سجلًا تدريجيًا أو سجلًا لعملية التقييم. يتم عرض هذا التاريخ عن طريق إدخال التعبير الأصم '' نرى مراحل متتالية من العملية. في هذا المثال هناك ست مراحل. يتم تحديد كل مرحلة من خلال قيم متغيرين. أولاً ، هناك "قائمة انتظار" ، تحتوي في البداية على التعبير الجاري تقييمه ، ومقسمة إلى كلمات ويسبقها رمز لتمييز البداية. ثانيًا ، هناك "مكدس" فارغ في البداية. تُظهر المرحلة الأولى قائمة الانتظار والمكدس في البداية.

في كل مرحلة ، يتم فحص المكدس لمعرفة ما إذا كان يمكن القيام بأي شيء ، أي ما إذا كانت الكلمات القليلة الأولى في المكدس تشكل نمطًا تنطبق عليه القاعدة. توجد 9 من هذه القواعد ، ويتم تجربة كل منها على حدة. إذا لم يتم تطبيق أي قاعدة ، فسيتم نقل كلمة من ذيل قائمة الانتظار إلى رأس المكدس ، وننتقل إلى المرحلة التالية ونحاول مرة أخرى. تأخذنا هذه العملية من المرحلة الأولى إلى المرحلة الخامسة.

في المرحلة الخامسة ، نجد أن القاعدة قابلة للتطبيق. يتم تحديد هذه القاعدة على أنها ثنائية في العمود الموجود في أقصى اليمين. بشكل غير رسمي ، قاعدة الثنائي هي:

إذا كانت العناصر الأربعة الأولى في المكدس عبارة عن شيء ، أو اسم ، أو فعل ، أو اسم ، فقم بتطبيق الفعل على الاسم والاسم للحصول على اسم جديد ، واستبدال العناصر الأربعة الأولى في المكدس بقطعتين ، أي شيء أصلي متبوعًا بجديد- اسم.

تظهر المرحلة السادسة والأخيرة نتائج تطبيق قاعدة "الثنائي" المعترف بها في المرحلة السابقة. تمت تجربة القواعد مرة أخرى ، بدون نتيجة ، ولا توجد كلمات أخرى في قائمة الانتظار ، لذلك انتهينا. النتيجة النهائية هي العنصر الثاني في المكدس. يتم الاحتفاظ بالتاريخ في 3 متغيرات عالمية ، Qh Sh و Rh. التعبير Hist '' يحسب عرضًا منسقًا من هذه المتغيرات.

A1.3 قواعد الإعراب

يتم تصنيف كل عنصر من عناصر المكدس كواحد مما يلي: الفعل ، الاسم ، الظرف ، الاقتران ، الاسم ، الأقواس اليسرى ، الأقواس اليمنى ، رمز التخصيص (=. أو =:) ​​أو علامة البداية.

للمساعدة في بيان مضغوط للقواعد ، يمكن تكوين فئات أكبر من العناصر. على سبيل المثال ، يتم تصنيف العنصر على أنه "EDGE" إذا كان علامة بداية أو رمز تخصيص أو قوس أيسر.

تتم تجربة القواعد دائمًا بنفس الترتيب ، بالترتيب الذي يتم تقديمها به أدناه ، بدءًا من "القاعدة الأحادية" وتنتهي بـ "قاعدة الأقواس".

A1.3.1 القاعدة الأحادية

A1.3.2 القاعدة الأحادية الثانية

A1.3.3 قاعدة Dyad

A1.3.4 ظرف القاعدة

A1.3.5 قاعدة الاقتران

A1.3.6 قاعدة ترايدنت

إذا كان VN1 هو الفعل VERB1 ، فإن Z هو الفعل الفردي المعرّف بالشوكة VERB1 VERB2 VERB3.

إذا كان VN1 هو الاسم NOUN1 ، فإن Z هو الفعل الفردي المحدد على أنه اختصار لشوكة NOUN1 VERB2 VERB3. تم وصف الشوكات والاختصارات الخاصة بالشوكات في الفصل 09.

هذا مثال: 1 + *: اختصار للشوكة 1: + *:

(1: + *:) 2 3 (1 + *:)2 3 (1 + * :) 2 3 'EVM
5 10 5 10 5 10

A1.3.7 القاعدة

CAVN1 CAVN2 ض
الفعل الفعل فعل (خطاف)
ظرف ظرف ظرف
بالاشتراك الفعل ظرف
بالاشتراك اسم ظرف
اسم بالاشتراك ظرف
الفعل بالاشتراك ظرف

الحالة الأولى (الخطاف) موصوفة في الفصل 03 والحالات المتبقية في المخططات الخاصة بالحوادث في الفصل 15.

في المثال التالي ، فإن التعبير (1 & amp) هو جزء من ارتباط الاسم بالشكل. لذلك فهو ظرف.

A1.3.8 قاعدة التنازل

A1.3.9 قاعدة الأقواس

A1.3.10 أمثلة على التحويل

على النقيض من ذلك ، إذا كان الاسم هو اسم فعل ، فسيتم نقل الاسم إلى المكدس دون تقييمه. ومن ثم فإن الإسناد اللاحق يغير الفعل المطبق.

A1.3.11 مراجعة قواعد الإعراب

قاعدة كومة من قبل كومة بعد أين Z هو.
أحادي حافة الفعل اسم إلخ حافة ض إلخ الفعل المطبق على الاسم
أحادي 2 إيفن فعل 1 فعل 2 اسم إيفن فعل 1 ض تم تطبيق Verb2 على الاسم
ثنائي إيفن إسم 1 الفعل نون 2 إيفن ض إلخ ينطبق الفعل على Noun1 و Noun2
ظرف إيفن VN حال إلخ إيفن ض إلخ تم تطبيق Adv على VN
معا إيفن VN1 كونج VN2 إيفن ض إلخ تم تطبيق Conj على VN1 و VN2
ترايدنت إيفن VN1 فعل 2 فعل 3 إيفن ض إلخ مفترق (VN1 Verb2 Verb3)

بايدنت حافة CAVN1 CAVN2 إلخ حافة ض إلخ بايدنت (CAVN1 CAVN2) تعيين NN اسجن كافن إلخ ض إلخ إلخ كافن أقواس ( كافن ) إلخ ض إلخ إلخ كافن

A1.4 آثار قواعد الإعراب

A1.4.1 يتمتع الأب بنطاق طويل صحيح

4 + 3 - 2 4 + (3-2) "4 + 3-2" EVM
5 5 5

هنا لدينا مثال على قاعدة عامة: الفعل الثنائي يأخذ الحجة الصحيحة قدر الإمكان ، لذلك في هذا المثال يتم تطبيق + على 3-2 ، وليس فقط 3.

علاوة على ذلك ، يأخذ الفعل الثنائي أقل حجة يسارية قدر الإمكان. في هذا المثال ، الوسيطة اليسرى لـ - هي 3 فقط ، وليست 4 + 3. ومن ثم يقال أن الفعل الثنائي له "نطاق طويل صحيح" و "نطاق أيسر قصير".

A1.4.2 عوامل التشغيل قبل الأفعال

* & أمبير 1٪ 2 (* & amp1)٪ 2 '* & amp 1٪ 2' EVM
0.5 0.5 0.5

A1.4.3 المشغلون لديهم مجال أيسر طويل

يأخذ الظرف أو أداة العطف الوسيطة اليسرى قدر الإمكان. انظر إلى بنية هذه الأفعال: من الواضح أن / ظرف و @ واقتران يأخذان كل شيء إلى اليسار:

و @ ز / f & amp g @ h 'f & ampg @ h' EVM
(f @ g) / (f & ampg) @ h (f & ampg) @ h

وبالتالي يقال أن المشغلين لديهم "نطاق أيسر طويل". في مثال f & ampg @ h ، نرى أن الوسيطة الصحيحة لـ & amp هي فقط g وليس g @ h. وبالتالي فإن أدوات الاقتران لها "نطاق صحيح قصير".

A1.4.4 القطار جهة اليسار

(و ز ح) / و ز ح / "و ز ح /" EVM
(و ز ح) / و ز (ح /) و ز (ح /)

وبالمثل بالنسبة إلى أداة الاقتران (مع وسيطة صحيحة)

f g h @ + 'f g h @ +' EVM
و ز (ح @ +) و ز (ح @ +)

ومع ذلك ، بالنسبة للاقتران بدون وسيطة صحيحة ، فإن النطاق الأيسر يمتد عبر قطار:

و ز ح @ 'f g h @' EVM
(و ز ح) @ (و ز ح) @

على النقيض من ذلك ، في حالة f @ g / ، لاحظ كيفية تطبيق قاعدة "conj" قبل أن تكون هناك فرصة لتطبيق قاعدة "ظرف"

A1.4.5 افتراض الفعل

سماوات زرقاء EVM "بلو سكايز"
سماوات زرقاء سماوات زرقاء

تم تنفيذ الأمثلة الواردة في هذا الفصل باستخدام الإصدار J 701. آخر تحديث لهذا الفصل في 29 يوليو 2012
حقوق النشر والنسخ لروجر ستوكس 2012. يمكن إعادة إنتاج هذه المواد بحرية ، بشرط إعادة إنتاج إشعار حقوق النشر هذا أيضًا. & gt & gt & lt & lt Usr Pri JfC LJ Phr Dic Voc!: Help Learning J


شاهد الفيديو: ضرب وقسمة التعبيرات الجذرية 2 (شهر اكتوبر 2021).