MOV EDX, EAX;
SAR EDX, 31; //如果EAX是负数:EDX=oxffffffff,否则EDX=0
XOR EAX, EDX; //如果EAX是负数:EAX取反,否则EAX不变
SUB EAX, EDX; //如果EAX是负数:EAX减0xffffffff(-1) 取反加1就是绝对值,否则EAX不变
int temp = Num;
temp = temp >> 31;
Num= Num^ temp;
Num= Num- temp;
MOV EDX, EAX;
SAR EDX, 31; //如果EAX是负数:EDX=oxffffffff,否则EDX=0
XOR EAX, EDX; //如果EAX是负数:EAX取反,否则EAX不变
SUB EAX, EDX; //如果EAX是负数:EAX减0xffffffff(-1) 取反加1就是绝对值,否则EAX不变
int temp = Num;
temp = temp >> 31;
Num= Num^ temp;
Num= Num- temp;