ジャンプ命令が正確に5バイトでFROM
あり、このジャンプ命令のアドレスであると仮定すると、式は正しいです。長さが5FROM
でないか、jmpがない場合は、正しくありません。
これで、モジュロ232算術を取得します。
2980000H-(6259326BH + 5)=0A03ECD90H。
2980000H-62593270Hが32ビットで0A03ECD90Hに等しいことを理解していない場合は、2980000Hではなく102980000Hから減算している、つまり33番目のビットが設定されていると想像してみてください。次に、102980000H-62593270H=0A03ECD90Hになります。そして、102980000H = 62593270H+0A03ECD90Hであることを確認できます。ただし、計算には32ビットしかないため、その33ビットは、それが何であれ、合計と差に影響を与えることはありません。したがって、2つの数値を32ビットの数値として減算し、結果の最下位32ビットを取得して、32ビットを超えるビットからの未処理の借用を無視します。
また、0A03ECD90Hは、jmp命令で最下位バイトから最上位バイトまでエンコードする必要があるため、命令をエンコードする次のバイトシーケンスを取得します。
E9、90、CD、3E、A0。
同様の質問が以前に尋ねられました。