testl指令,这个指令说是将两个操作数做与来设置零标志位和负数标识,常用的方法是testl %eax,%eax来检查%eax是正数负数还是0;
标志位通过结果值来设置.%eax = %eax & %eax;
不改变%eax通过testl %eax,%eax却可以设置或者清除一些标志,以便实现分支结构
总结:test语句是根据上次计算结果的性质设置相应的状态码(condition code),而testl %eax,%eax的结果就是%eax,于是就针对%eax值的属性设置状态码,例如上面说到的是正是负还是零
testl指令的问题
最新推荐文章于 2023-05-11 11:34:43 发布