5

ループに問題があり、それに含まれるコードが長く、「範囲外の短いジャンプ」というエラーが表示されるため、ループの量を減らさずにループを機能させる方法があるかどうかを知りたいその中のコード?

例1:

label:
my code
    LOOP label

; 正常に動作しますが、さらにコードを追加すると

例 2:

label:
my code
    more code added
    LOOP label

; 動作せず、「範囲外の短いジャンプ」というエラーが表示されます

4

2 に答える 2

8

命令は、LOOP127 バイトを超える距離にジャンプできません。DEC ECX命令で使用するには、コードを変更する必要がありますJNZ

例えば:

    MOV ECX, 10
label:
    ;some codes
    LOOP label

なる:

    MOV ECX, 10
label:
    ;some codes
    DEC ECX
    JNZ label
于 2012-08-27T18:56:50.993 に答える
0

near指導を受けてみましたか?

于 2017-01-04T13:30:21.873 に答える