نمایش نتایج 1 تا 3 از 3

نام تاپیک: سوال در مورد CMP و JNZ

  1. #1
    کاربر دائمی آواتار aryasoft2872
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    بیرجند
    پست
    399

    سوال در مورد CMP و JNZ

    عرض سلام و روز بخیر

    امروز داشتم یک آموزش درباره کرک می دیدم که یک قسمتش رو هر کاری می کنم نمی فهمم.ممنون میشم دوستان راهنمایی کنند.

    توی خط قبل از JNZ در تصویر -1 با EAX مقایسه شده که چون مقدار EAX در اینجا FFFFFFF یا همون -1 نتیجه شرط صحیحه و Z Flag مقدارش 1 میشه حالا توی شرط JNZ بررسی می کنه که آیا صفر هست یا نه و منطقا چون صفر نیست باید Jump رو انجام بده و از روی دستور نمایش پیغام عبور کنه در حالی که اینکارو نمی کنه...چرا اینجوری میشه البته توی آموزش فلگ زد رو صفر کرد و در نهایت هم شرط رو تبدیل به JMP کرد ولی نمی فهمم زد که مقدارش 1 و در شرط صدق می کنه چرا شرط انجام نمیشه.

    پیشاپیش ممنونم
    عکس های ضمیمه عکس های ضمیمه  

  2. #2

    نقل قول: سوال در مورد CMP و JNZ

    Z Flag مقدارش 1 میشه
    ????

    cmp
    عدد ها رو sub می کنه اگه برابر بودن ZF باید 0 بشه در این جا چون برابر هستن باید ZE=0 باشه و شرط پرش هم JNZ هستش یعنی اگه 0 نبود پرش کن و نباید هم پرش کنه

    The zero flag is set whenever the result of the subtraction is equal to zero. This, of course, only occurs when the operands are equal

  3. #3

    نقل قول: سوال در مورد CMP و JNZ

    من متوجه نشدم ، دقیق تر بگید.
    چه کار کردید؟؟؟ ، چی توقع داشتید بشه و نشده؟؟؟

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •