ult*_*use -1 comparison bit-manipulation operators
这可能是我脑子里一个愚蠢的问题,但我想我没有回答这个问题 -
如果A <B,处理器将如何找到?事实上还有其他的东西,比如A> B或A == B.
但如果我们解决A
我知道不同的处理器可能有不同的实现,但我想有一些高水平的想法这样做.
我相信,按位运算符的一些技巧应该这样做.
任何帮助将不胜感激.
在x86汇编中,CMP指令通常用于比较两个整数.
例如,如果你分别在EAX和EBX中有整数,并且执行CMP EAX,EBX,则sign(S)标志和零(Z)标志的值将告诉你哪个数字最大:
EAX > EBX: Z=0, S=0
EAX == EBX: Z=1, S=0
EAX < EBX: Z=0, S=1
Run Code Online (Sandbox Code Playgroud)
通过使用SUB指令可以获得相同的结果,SUB指令还存储目标寄存器中的数字之间的差异.