请教,以下汇编代码是否已经是最合理最精简的状态了?

SilentHunter460 2022-05-09 14:34:12
if( op1 == op2 )
{
    X = 1;
    Y = 2;
}

 

mov eax, op1
cmp eax,op2                  ; op1 == op2?
jne L1                       ; 否:跳过后续指令
mov X, 1                     ; 是:X, Y 赋值
mov Y, 2
L1:

 

...全文
107 2 打赏 收藏 举报
写回复
2 条回复
切换为时间正序
请发表友善的回复…
发表回复

可以用cmove指令,但是指令数并不少,因为CMOVcc指令不支持源操作数为立即数,但是可以消去分支指令

  • 打赏
  • 举报
回复
zara 05-09

还真看过指令优化的那个 pdf,感觉看来点儿之后,都要神经质了,探出手指头,不知道该怎么敲了。
所以,还是别太在意了。

  • 打赏
  • 举报
回复
发帖
汇编语言
加入

2.1w+

社区成员

汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
申请成为版主
帖子事件
创建了帖子
2022-05-09 14:34
社区公告
暂无公告