在單個比較指令之後是否可以有多個條件跳轉?如何在組件中實現「多分支」條件跳轉
例如:
CMP EAX,ECX
JG More
JL Less
Equal:
;... do something
RETN
More:
;... do something different from "equal" and "less"
RETN
Less:
;... do something different from "more" and "equal"
RETN
,使程序運行 「更多」 分支時EAX > ECX,並執行 「少」 分支時EAX < ECX。
這可能嗎?更重要的是,是否有更好的方法來實現相同的程序?
你顯然只是寫了它。它有用嗎? –
目前還不清楚GCC標籤的位置,但GCC已經[這是](https://godbolt.org/g/I5iESF) – harold
爲什麼不能這樣工作,當你查看我假設x86指令後,你沒有標記這個,CMP哪些標誌改變了? JG使用什麼標誌,JG是否改變任何標誌,爲什麼在CMP之後使用JG(標誌是否正確?)。 JG是否會更改JL可能依賴的標誌來使其工作? –