レジスタaxの値が7で割り切れていて、余りが0であるかどうかをチェックしたいと思います。どうすればいいですか?レジスタが7で割り切れるかどうかを確認する方法はありますか?
答えて
this answerのように、さまざまな定数を使用できます。
7 MOD 2 のモジュラ逆数は、(定義により)、0x6db7あるフォームx = n * 7
の数がn
が以下0xffff/7
に等しくなるx * 0x6db7 = n
を、従うであろうことを意味します。したがって、x * 0x6db7
のうち大きい方が得られれば、それは7の倍数ではないことが分かります。また、7の非倍数も低い結果にマップすることはできません。
だから、これは当然の符号なしの数字です
imul ax, ax, 0x6db7
cmp ax, 0x2492
ja not_multiple_of_7
(テストしていません)を使用することができます。ボーナスとして
、ax
はときに限り7 で割った元の値になり、それは7
乗算付きのCPU(例えば、表示しているようにインテルなど)がある場合は、通常は剰余を生成する除算命令もあります。分割して残りをチェックする。それは概念的に簡単です。あなたの計画は、この小切手の*性能*が重要なときには良いです。ほとんどの場合、パフォーマンスは重要ではありません。この魔法はほとんどの読者にとっては不透明で、数学に依存するため保守が難しいコードを生成しますほとんどの読者は持っていません。 (それは賢いから上書きする)。 –
@IraBaxter:質問の「残余なし」というフレーズは、「残った命令を使わずに」意味しました。しかし、OPの自己回答はそれが意味するものではないことを証明します。 –
org 100h
mov ax,14
mov cl,7
div cl
cmp ah,0
je positive
PRINTN "The number has a remainder"
jmp finish
positive:
PRINTN "The number has no remainder"
finish:
PRINTN "After comparison"
mov ah, 0
int 16h
ret
これで注意してください。商が255以下であれば、1792以降で#DE – harold
- 1. 日付が期限切れになったかどうかを確認する方法はありますか?
- 2. Angularfire2:ユーザーがログインしているかどうかを確認する適切な方法はありますか?
- 3. mysql_query()が結果を返したかどうかを確認する適切な方法はありますか?
- 4. 私はGACかどうかを確認する方法はありますか?
- 5. 指定されたファイルがFASTAであるかどうかを確認する方法はありますか?
- 6. ピボットキャッシュがリフレッシュする必要があるかどうかを確認する方法はありますか?
- 7. 色がSassでグレースケールであるかどうかを確認する方法はありますか?
- 8. .NETでBitmapが空であるかどうかを確認する方法はありますか?
- 9. テンプレートでListBlockが空であるかどうかを確認する方法はありますか?
- 10. Angularjs - ディレクティブがアクティブであるかどうかを/ domで確認する方法はありますか?
- 11. AUTOLISPでSHIFTが押されているかどうかを確認する方法はありますか?
- 12. cudaコードがリロケータブルデバイスコードでコンパイルされているかどうかを確認する方法はありますか?
- 13. Entity Frameworkでデータが取得されるかどうかを確認する方法はありますか?
- 14. iPhoneアプリでボタンが押されているかどうかを確認する方法はありますか?
- 15. クラスがPythonでインスタンス化されているかどうかを確認する方法はありますか?
- 16. バッチファイルから、プログラムがインストールされているかどうかを確認する方法はありますか?
- 17. UDIDがビルドに含まれているかどうかを確認する方法はありますか?
- 18. プロセスが子プロセスであるかどうかを確認する方法はありますか?
- 19. HttpResponseがSpringインターセプタのリダイレクトであるかどうかを確認する方法はありますか?
- 20. Win32ウィンドウポインタが有効な.Netコントロールであるかどうかを確認する方法はありますか?
- 21. 文字列が正の整数であるかどうかを確認する方法はありますか?
- 22. JSスレッドがビジーであるかどうかを確認する方法はありますか?
- 23. インデックスがSQL Serverのシステムインデックスであるかどうかを確認する方法はありますか。
- 24. コンピュータがSurface Studioであるかどうかを確認する方法はありますか?
- 25. 2つのイメージファイルが同じであるかどうかを確認する方法はありますか?
- 26. IPPのフレームがIDRフレームであるかどうかを確認する方法はありますか?
- 27. は、performSelector:withObject:afterDelay:が登録されているかどうかを確認する方法はありますか?
- 28. Pythonで特定のキーが押されたかどうかを確認する方法はありますか?
- 29. WebDriver(java)でページがリロードされたかどうかを確認する方法はありますか?
- 30. WebDriver(C#)でページがリロードされたかどうかを確認する方法はありますか?
の複数た符号付きまたは符号なしとしてAXの値は、治療されるべきか?あなたは16ビットモードに制限されていますか?もしそうなら、なぜですか? IDIVを使用した回答は受け入れられるのでしょうか、(遅い)ハードウェア分割命令を避ける巧妙なやり方を探していますか?最初にアセンブリ言語を手で書くのはなぜですか? – zwol