x86平台上使用汇编如何判断一个值是否为0?
一般会使用该指令:
test %rax %rax
je xxx
test指令会判断后面两个操作数执行AND操作,结果为0就设置zero flag,然后搭配je跳转指令从而实现对一个值是否为0的判断。
如果%rax值为0,那么他们相与才会等于0,否则该值不会为0.
x86平台上使用汇编如何判断一个值是否为0?
一般会使用该指令:
test %rax %rax
je xxx
test指令会判断后面两个操作数执行AND操作,结果为0就设置zero flag,然后搭配je跳转指令从而实现对一个值是否为0的判断。
如果%rax值为0,那么他们相与才会等于0,否则该值不会为0.