Re: A83: Re: jr and jp
[Prev][Next][Index][Thread]
Re: A83: Re: jr and jp
How can we know if the jump is backward or forward?
On Tue, 30 Nov 1999 21:49:18 David Phillips wrote:
>
>JR = 38 XX ; 2 bytes, 12 t-states
>
>XX is a signed byte, indicating a relative number of bytes to jump to,
>backwards or forwards. The jump takes place after the program counter is
>incremented, so a value of 0 would be the instruction following the JR. JR
>should be used anytime to move inside the program, if possible. It can be
>used at all times, since the assembler will (should) warn if the relative
>jump is too long. In that case, it can be changed to a JP.
>
>JP = C3 XX XX ; 3 bytes, 10 t-states
>
>XX XX is a word value, indicating an absolute address to jump to. This can
>be used to make jumps of any distance, anywhere in memory. It should be
>used when jumping to ROM calls, or memory locations too far away for JR to
>be used.
>
>The difference in a large program could be several hundred bytes, but in a
>small program would not likely be very noticable. However, all effort
>should be made to use JR when possible. The differences in speed do not
>warrant using JP in even the most tightly optimized code (no code I have
>ever seen or written would be sped up enough to make JP useful over
>JR...including the ROM linking routines).
>
>> i know ASMhuru explains these commands but..how do i know which one to
>> use...and will using jr make any significant size differences in the
>program
>
>
>
>
Get your FREE Email at http://mailcity.lycos.com
Get your PERSONALIZED START PAGE at http://my.lycos.com
Follow-Ups: