Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
02/14/01 17:17
Read: times


 
#9321 - RE: use of multiply in large data arrays
Erik Malund wrote:
-------------------------------
Could be the answer to FAST access, never.

- - - - - - - - - - - - - - - -
That is NOT the fast method of using binary trees. You don't need pointers on a fixed tree since its not dynamic.

You can use a single byte as the traversal index. You load the first comparison value from offset 01 then immediately double or shift left the index. Compare the value at the offset and if its one state, access the next comparison from the current offset (1*2). If the other comparison state results, increment the current offset before accessing the next comparison (1*2)+1=3.

This leads to a packed binary tree with implied addressing and a quick bit manipulation of the index pointer to find the next cell of two. You can considered it an interleaved power series of two, set packing.

[1][2,3][(4,5),(6,7)]etc.

Obviously binary trees are more powerful attacking bigger tables. I use this technique for finding where a 24 bit value fits in a table of rounded decimal display answers.

It uses THREE hierarchial tables using the same traversal index into each. The first table has the high order comparison bytes, only if there is an identical match do I proceed into the lower order tables (remaining two). As soon as I get a higher/lower result, I modify the traversal index to the next comparison value.

To keep the opcodes fast, I use 256 byte page tables. I expand the tables beyond that limit by alterring the DPTR into extended tables.

aka j

List of 30 messages in thread
TopicAuthorDate
use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
<types.h> invisible !            01/01/70 00:00      
RE: <types.h> invisible !            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
RE: use of multiply in large data arrays            01/01/70 00:00      
The FASTEST !            01/01/70 00:00      
RE: The FASTEST !            01/01/70 00:00      
Work the problem backwards            01/01/70 00:00      

Back to Subject List