۰
subtitle
ارسال: #۱
  
روال های مفهومی
سلام.سوال ۹۰ تو ۲۵% چهارم پارسه از کجا فهمید ۴ تا روال لازم داره؟اگه کسی بلده لطفا توضیح بده
stmt-->for (expr;expr;expr)stmt
stmt-->for (expr;expr;expr)stmt
۱
ارسال: #۲
  
RE: روال های مفهومی
متن کامل سوال:
در صورتی که بخواهیم با استفاده از تجزیه LR1 برای جمله تکرار for زیر در زبان C در حین تجزیه در طی یک گذر کد سه آدرسه تولید کنیم به حداقل چند قاعده تولید که در مجموع معادل این قاعده تولید است،نیاز است؟
stmt-->for(expr;expr;expr)stmt
۱- ۳
۲- ۴
۳- ۵
۴- ۱
جواب پارسه:گزینه ۲- با توجه به نحوه عملکرد حلقه for حداقل ۴ روال مفهومی یا به عبارتی نماد کنشی لازم است.
در صورتی که بخواهیم با استفاده از تجزیه LR1 برای جمله تکرار for زیر در زبان C در حین تجزیه در طی یک گذر کد سه آدرسه تولید کنیم به حداقل چند قاعده تولید که در مجموع معادل این قاعده تولید است،نیاز است؟
stmt-->for(expr;expr;expr)stmt
۱- ۳
۲- ۴
۳- ۵
۴- ۱
جواب پارسه:گزینه ۲- با توجه به نحوه عملکرد حلقه for حداقل ۴ روال مفهومی یا به عبارتی نماد کنشی لازم است.
۱
ارسال: #۳
  
روال های مفهومی
من اینطور به نظرم میرسه، البته شاید درست نباشه، دوستان دیگه هم نظر بدن. ممنون.
برای تولید کد ۳ آدرسه حلقه for کارهای زیر لازمه :
۱ - ابتدا مقدار اولیه باید در یک مکان از حافظه ذخیره بشه.
۲ - شرط حلقه تست بشه که از مقدار اولیه کوچکتر باشه.
۳ - اگه شرط درست نبود، به بعد از حلقه for مراجعه کنه (پرش شرطی)
(اگه شرط درست باشه، محتویات حلقه رو اجرا کنه. اجرای اونا روال مفهومی حساب نمیشه چون سوال به این قسمت کار نداره).
۴ - یکی به مقدار اولیه اضافه میکنه (مثلا درصورتی که گام حرکت ++ باشه).
۵ - یک پرش بدون شرط به ابتدای حلقه برای تست شرط حلقه. (این مرحله بعد از اجرای محتویات انجام میشه).
این کمترین روال مفهومی هست که بکار برده شده، مطمئنید که ۴تاست؟
برای تولید کد ۳ آدرسه حلقه for کارهای زیر لازمه :
۱ - ابتدا مقدار اولیه باید در یک مکان از حافظه ذخیره بشه.
۲ - شرط حلقه تست بشه که از مقدار اولیه کوچکتر باشه.
۳ - اگه شرط درست نبود، به بعد از حلقه for مراجعه کنه (پرش شرطی)
(اگه شرط درست باشه، محتویات حلقه رو اجرا کنه. اجرای اونا روال مفهومی حساب نمیشه چون سوال به این قسمت کار نداره).
۴ - یکی به مقدار اولیه اضافه میکنه (مثلا درصورتی که گام حرکت ++ باشه).
۵ - یک پرش بدون شرط به ابتدای حلقه برای تست شرط حلقه. (این مرحله بعد از اجرای محتویات انجام میشه).
این کمترین روال مفهومی هست که بکار برده شده، مطمئنید که ۴تاست؟
ارسال: #۴
  
RE: روال های مفهومی
(۲۶ دى ۱۳۹۱ ۰۲:۲۵ ق.ظ)azad_ahmadi نوشته شده توسط: من اینطور به نظرم میرسه، البته شاید درست نباشه، دوستان دیگه هم نظر بدن. ممنون.
برای تولید کد ۳ آدرسه حلقه for کارهای زیر لازمه :
۱ - ابتدا مقدار اولیه باید در یک مکان از حافظه ذخیره بشه.
۲ - شرط حلقه تست بشه که از مقدار اولیه کوچکتر باشه.
۳ - اگه شرط درست نبود، به بعد از حلقه for مراجعه کنه (پرش شرطی)
(اگه شرط درست باشه، محتویات حلقه رو اجرا کنه. اجرای اونا روال مفهومی حساب نمیشه چون سوال به این قسمت کار نداره).
۴ - یکی به مقدار اولیه اضافه میکنه (مثلا درصورتی که گام حرکت ++ باشه).
۵ - یک پرش بدون شرط به ابتدای حلقه برای تست شرط حلقه. (این مرحله بعد از اجرای محتویات انجام میشه).
این کمترین روال مفهومی هست که بکار برده شده، مطمئنید که ۴تاست؟
سلام
فکر می کنم قسمت ۲ و ۳ یکی باشن.بنابراین همون ۴ درست میشه.نه؟
۰
۰
ارسال: #۶
  
روال های مفهومی
اما باید شرط درست بودن هم در یک مکان حافظه ذخیره بشه، و بعد اگه درست باشه ادامه بده.
این چیزی که من می گم براساس کتاب آل شیخ هست، اونجا یک حلقه for رو بررسی کرده، وحداقل ۵ روال مفهومی براش نوشته. تو قسمت ۲، منظور این هست که نتیجه شرط حلقه در یک مکان حافظه ذخیره بشه، اما قسمت ۲ میگه که اون شرط رو که در اون مکان از حافظه قرار داره، بررسی کنه (انشعاب شرطی) که اگه اشتباه بود پرش کنه به بعد از for.
حالا دوستان اگه اطلاع بیشتری دارن، ممنون میشیم راهنمایی کنید.
این چیزی که من می گم براساس کتاب آل شیخ هست، اونجا یک حلقه for رو بررسی کرده، وحداقل ۵ روال مفهومی براش نوشته. تو قسمت ۲، منظور این هست که نتیجه شرط حلقه در یک مکان حافظه ذخیره بشه، اما قسمت ۲ میگه که اون شرط رو که در اون مکان از حافظه قرار داره، بررسی کنه (انشعاب شرطی) که اگه اشتباه بود پرش کنه به بعد از for.
حالا دوستان اگه اطلاع بیشتری دارن، ممنون میشیم راهنمایی کنید.
۰
ارسال: #۷
  
روال های مفهومی
اگه به جای درست بودن شرط بیایم false بودن رو چک کنیم تعدادش میشه ۴ تا؟
ارسال: #۸
  
RE: روال های مفهومی
اگه فقط درست نبودن شرط رو بررسی کنیم و بفرستیم به بیرون حلقه میشه ۴تا.
اگه شرط برقرار باشه خودش وارد حلقه میشه.
اگه شرط برقرار باشه خودش وارد حلقه میشه.
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close