我正在查看一些小型汇编代码,我不太理解TEST指令及其用法。我在观察循环结尾处的以下代码:
8048531: 84 c0 test al,al
8048533: 75 dc jne 8048511 <function+0x2d>
我理解的TEST指令有点像AND运算符,它会设置一些标志位。但我并不完全理解这些标志位是如何工作的。test al,al
对我来说看起来像是检查相同的低位比特,并且总是得到相同的结果。
有人可以解释一下吗?