一段反汇编分析

.text:00010634                 cmp     ax, [ebx]
.text:00010637                 sbb     eax, eax
.text:00010639                 inc     eax


写了一段测试C语言

int main(int argc, char *argv[])
{

    char input = -1;//测试用
    ULONG output;

    __asm
    {
        lea        ebx,input
        cmp     ax, [ebx]
        sbb     eax, eax
        inc     eax
        mov        output,eax
    }
    printf("%x\n",output);

    return 0;
}

测试结果input为负数时,output==0
input为负数时,output==1

posted @ 2010-02-11 21:20  Fan Zhang  阅读(149)  评论(0编辑  收藏  举报