ユーザが4桁の数字を入力する(1960年に入力すると言う)別の数字を最後の2桁(60)と比較する必要があります。最初の2桁は00から99までの何でもかまいませんので、1900を引くことはできません。私はバイナリを操作しようとしましたが、運はありません。どのように私は1960年から60を得ることができるか、または2005年から05、どのような提案。整数の最初の2桁を削除する - アセンブリ/ nasm
1
A
答えて
3
2
分割し、残りを使用:
mov dx, 0
mov ax, 1960
mov bx, 100
div bx
;REMAINDER 60 IS IN DX.
0
最初に整数に文字列から変換するときに最初の2桁をスキップします。
10は2の累乗ではないため、10進数の上位桁は2進表現の下位ビットに影響するため、ビット単位のトリックは役に立ちません。
+0
最初の2桁*は使用しないことをお勧めします*実際には、入力時(文字列として数字が短く存在する場合)と使用時間(比較が行われる場所と数字は単に整数として存在します)。 –
+0
@SepRoland:そうです、それは本当です。しかし、これはアセンブリ言語ですが、可能な限りすべてのショートカットや機会を活用できるはずです。大規模なプログラムの一部として使用する場合は、おそらくこれを書き直す必要があります。他の答えはすでに一般的な/柔軟な解決策をカバーしているので、私はDIVについて言及しませんでした(または効率的に行うためにモジュラ乗法逆関数を使用します)。 –
関連する問題
- 1. SQL Server:10桁の数字の最初の2桁を削除し、最後に2桁の固定桁を追加する方法
- 2. Array数字の最後の2桁を削除します
- 3. 整数の最後の数を削除
- 4. 整数の最後の2桁を取得するSQL
- 5. curl_exec()引数最後の2桁の数字を削除します
- 6. 2桁の整数を生成する
- 7. 整数から先頭の桁を削除します
- 8. 数字の最初の2桁を抽出するhaskell
- 9. JS Regexの最後の2桁が最初の2桁に一致します
- 10. 短い整数の最初と最後の3桁をスプライスしますか?
- 11. 最後の2桁の整数ですか? Python 3
- 12. アセンブリ内のファイルを削除
- 13. 文字列の最初の2桁、負の「数字」
- 14. 整数リストの最後のカンマを削除するには?
- 15. NASM&GDB:最初の命令を失う
- 16. 最初のフォルダ名を削除する
- 17. 最初の一致を削除する
- 18. NASMに2つの整数、浮動小数点数を追加するには?
- 19. 2桁の整数を1つの整数で加算するVB.net
- 20. Javaが最初に2つの小数点以下2桁を得ます
- 21. 複数のcsvファイルの最初の2行をPythonで削除します
- 22. sedはIPから最初の2オクテットを削除します
- 23. ハスケルの整数の桁数
- 24. 最初のdivの削除ボタンを削除しますか?
- 25. 最初の数字を文字列から削除するJquery
- 26. 2桁の整数をPythonリストの中の1桁に変換しますか?
- 27. リストビューのアイテムを削除する最初のアイテムのみを削除する
- 28. 整数を強制的にJavaScriptの2桁にするには?
- 29. プロジェクトオイラー:2桁の3桁の数字の最大の回文プロダクト
- 30. 2桁のスペースのみを削除しますか?
また、単純ではあるが効率の悪い方法は、値をチェックして100を引くループを作ることです。最後の結果は答えです。 – lurker