تالار گفتمان مانشت
پرش های شرطی و غیرشرطی - نسخه‌ی قابل چاپ

پرش های شرطی و غیرشرطی - fulgent - 06 بهمن ۱۳۹۲ ۰۹:۱۹ ب.ظ

سلام دوستان قضیه پرش شرطی و غیر شرطی چیه؟ میشه توضیح بدین چطور حسابشون می کنیم؟

RE: پرش های شرطی و غیرشرطی - Riemann - 07 بهمن ۱۳۹۲ ۰۱:۴۲ ب.ظ

این بر میگرده به اسمبلی! فرض کنید شما میخواهی این عبارت رو کد کنید:
(چرا تگ کد مانشت درست کار نمیکنه!)
کد:
if (a)
    b = b + 1;
else
    b = b - 1


    if a > 0 set 101 = true else false
    jpf 101, elselabel
    add b, 1, b
    jmp end
elselabel:
    sub b, 1 , 1
end:

ما مثلا شرطمون رو چک میکنیم و اگه غلط بود یه جایی توی حافظه false قرار میدیم، بعد توی خط بعد چک میکنیم اگه فالس بود که پرش شرطی میکنیم به else در غیر اینصورت کار ادامه پیدا میکنه و وقتی b++ انجام شد برای این که else رو اجرا نکنیم باید یه پرش غیر شرطی به انتهای if خودمون که میشه برچسب end بزنیم.

RE: پرش های شرطی و غیرشرطی - fulgent - 07 بهمن ۱۳۹۲ ۰۴:۳۲ ب.ظ

(۰۷ بهمن ۱۳۹۲ ۰۱:۴۲ ب.ظ)Riemann نوشته شده توسط:  این بر میگرده به اسمبلی! فرض کنید شما میخواهی این عبارت رو کد کنید:
(چرا تگ کد مانشت درست کار نمیکنه!)
کد:
if (a)
    b = b + 1;
else
    b = b - 1


    if a > 0 set 101 = true else false
    jpf 101, elselabel
    add b, 1, b
    jmp end
elselabel:
    sub b, 1 , 1
end:

ما مثلا شرطمون رو چک میکنیم و اگه غلط بود یه جایی توی حافظه false قرار میدیم، بعد توی خط بعد چک میکنیم اگه فالس بود که پرش شرطی میکنیم به else در غیر اینصورت کار ادامه پیدا میکنه و وقتی b++ انجام شد برای این که else رو اجرا نکنیم باید یه پرش غیر شرطی به انتهای if خودمون که میشه برچسب end بزنیم.

متشکرم
خب الان میشه سوال زیر رو با توضیح حل کنید؟

[تصویر:  241842_78320536882453706275.jpg]

RE: پرش های شرطی و غیرشرطی - Riemann - 07 بهمن ۱۳۹۲ ۰۴:۳۷ ب.ظ

این سوال خیلی سخته! باید شرط ها رو درست بچینی و ببینی کدوم else برای کدوم if هست و .... خیلی کار میبره! ولی توی پوران یا هر کتاب دیگه ای حلش کرده بخونی میفهمیش.

RE: پرش های شرطی و غیرشرطی - fulgent - 07 بهمن ۱۳۹۲ ۰۴:۴۵ ب.ظ

(۰۷ بهمن ۱۳۹۲ ۰۴:۳۷ ب.ظ)Riemann نوشته شده توسط:  این سوال خیلی سخته! باید شرط ها رو درست بچینی و ببینی کدوم else برای کدوم if هست و .... خیلی کار میبره! ولی توی پوران یا هر کتاب دیگه ای حلش کرده بخونی میفهمیش.

خب سوال من توی همین مباحثه!Big Grin
حلشونو خوندم ولی درست متوجه نشدم...
از دوستان کسی توضیح میده؟Angel

RE: پرش های شرطی و غیرشرطی - sonia11 - 08 بهمن ۱۳۹۲ ۰۱:۱۵ ب.ظ

[attachment=15025]
فکر کنم جوابتون این باشه

RE: پرش های شرطی و غیرشرطی - fulgent - 08 بهمن ۱۳۹۲ ۰۵:۱۱ ب.ظ

(۰۸ بهمن ۱۳۹۲ ۰۱:۱۵ ب.ظ)sonia11 نوشته شده توسط:  فکر کنم جوابتون این باشه

متشکرم، میشه توضیح هم بدین؟Smile