私は書くべきアセンブリプログラムを持っています。 AXレジスタが0より大きい場合、AXレジスタが0より小さい値を持っていれば、BXで-1を動かし、AX = 0ならば0を動かし、BXで0を動かす必要があります。私はそれを行う次のコードがありますが、私は代わりの解決策を探しています。助けてください。ありがとうAXとゼロとの比較
1
A
答えて
3
あなたが与えたコードは常に-1を返します。これを試してみてください:
CMP AX, 0
JG GREATER
JL LESS
MOV BX, 0
JMP END
GREATER:
MOV BX, 1
JMP END
LESS:
MOV BX, -1
END:
+0
ああ、私の悪い。終了ジャンプを追加してくれてありがとう。 – Foo
1
は、単一の条件分岐なし無条件ジャンプを必要とし、これを試してみてください:
mov bx, ax // copy ax to bx
sarw bx, 15 // arithmetic shift - any -ve => -1, 0 or +ve => 0
cmp ax, 0 // compare original number to zero
jle end // if it's <=, we're done
mov bx, 1 // else bx = 1
end:
NB - 私のx86コードは非常に非常にさびです。また、sar
のそのバージョンは、私はせずに386+のためのより良いバージョンを見つけたと思う8086ではありませんでしたが、286にあった以降、および80386
EDITまで、特に迅速な取得できませんでした任意の支店:
関連する問題
- 1. 浮動小数点数とゼロ比較
- 2. signbitによって検出されたサインの変化とゼロとの比較と比較
- 3. ゼロとの浮動小数点の比較
- 4. 先頭のゼロと文字列を比較する
- 5. 浮動小数点数をゼロと比較する
- 6. Googleアナリティクスとリアルタイムアナリティクスの比較:ChartbeatとClickyとMixpanelの比較
- 7. カウントループと比較
- 8. コピーデータと比較
- 9. コロナSDK数字の数をゼロと比較しようとしました
- 10. 比較条件と比較条件
- 11. MySQLの比較と '%'
- 12. OrElseとの比較
- 13. プライベートインターフェイスとの比較
- 14. ViewStateとクッキーとの比較対キャッシュの比較
- 15. MPI_IprobeとMPI_Probeとの比較
- 16. BroadcastReceiver.getResultsExtra()とIntent.getExtras()との比較
- 17. FuzzyとSeleniumとの比較
- 18. NULLとINTとの比較
- 19. React.ComponentとReact.PureComponentとの比較
- 20. File.Delete()とFileInfo.Delete()との比較
- 21. iosとjsonとの比較
- 22. ELとequalIgnoreCaseとの比較
- 23. OnItemClickListenerとOnItemTouchListenerとの比較
- 24. mapsqlparametersourceとjava.util.mapとの比較
- 25. HttpContextとHttpListenerContextとの比較
- 26. Display.asyncExecとDisplay.timerExecとの比較
- 27. DataSourceUtils.getConnectionとDataSource.getConnectionとの比較
- 28. PHPとWordPressとの比較
- 29. BufferedOutputStreamとByteArrayOutputStreamとの比較
- 30. momentjsとタイムゾーンとの比較
なぜ代替ソリューションが必要なのですか? –
@KendallFrey:別の方法があるかどうかを理解したい。 – Foo
あなたはそれを好きなようにすることができます。必要に応じて、独自のハードウェアデバイスを構築して変換を行います。言い換えれば、それを行うには多くの方法があります。動作する小さなソリューションを使用してください。 –