Archived

This topic is now archived and is closed to further replies.

Optimizing mod as value range control

This topic is 5748 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have a code chunk that''s getting executed about 120,000,000 (120mhz) times per second. I looking for ways of reducing the time it takes to complete.
  
var I,MaxValue:LongWord; //unsigned 32 bit integer

...
I:=I mod MaxValue; //Ensure that I is between 0 and MaxValue-1

  
The requirements are that if I is already within the range 0..MaxValue-1 then I should remain unchanged, if I is outside the range it must be changed to a value (any value) within that range. My only solution so far is if MaxValue is a power of 2 (Which it won''t always be), allowing for (If MaxValue=16): I:=I and $FF;

Share this post


Link to post
Share on other sites