0

Z80 アセンブリを使用してゲームボーイ プログラミングの実験を開始しましたが、奇妙なものを見つけました。

遅延を作成するために使用されるコードのスニペットを見つけました。

simpleDelay:
dec bc
ld  a,b
or  c
jr  nz, simpleDelay
ret

それをいじってみると、dec bc を 2 回書き込むと遅延が短くなることがわかりましたが、3 回書き込むと 1 回または 2 回使用するよりも遅延が長くなります。dec偶数のステートメントを使用すると遅延が短縮されるのはなぜですか?

編集:遅延を呼び出すコードのスニペットは次のとおりです。

ld  hl,Title2
ld  de, _SCRN0+3+(SCRN_VY_B*5) ;
ld  bc, Title2End-Title2
call    mem_CopyVRAM
call simpleDelay
4

1 に答える 1