intel汇编学习笔记 loop和test

loop

xor eax, eax
mov ecx, 1024   

.begin:
add eax, 1
loop .begin               ; if( --ecx > 0 ) goto .begin:

如c版本注释所示,当–ecx > 0时会跳转到.begin

test

test eax,eax              ;if(( eax & eax ) == 0 )
jz label                  ;    goto label;

将前后两个操作数进行AND运算,结果为零设置比较寄存器的0位,一般如上用法,判断eax值是否为0,如果是则跳到label。

你可能感兴趣的:(随笔)