use*_*376 9 x86 assembly
cmp %al, %cl js x
我对js(跳号)正在做什么感到困惑.它是说如果al是正的而cl是负的则反之亦然然后跳?
此外,如果%cl为0或者没有任何内容,会发生什么?
谢谢!
Aki*_*nen 15
JS如果设置了sign标志(通过之前的指令)将跳转.在这种情况下,CMP将始终通过执行减法来修改标志%al - %cl.(假设是英特尔语法,而不是AT&T).
JS
%al - %cl
由于指令的长度,符号将是表达式%al-%cl的第7位(并且被丢弃).
如果%cl == 0,则临时值将精确地为%al,并且符号将是寄存器%al的符号.因此,如果%al为负,则进行跳转.
这是所有条件跳转的参考.
归档时间:
11 年,6 月 前
查看次数:
23149 次
最近记录: