??? 08/16/05 07:44 Read: times |
#99493 - 16 bit table Responding to: ???'s previous message |
If I understand it right, you have an 8 bit index and want to read up to 256 values of 16 bit:
mov a, r0 ;r0 = index (8 bit) add a, r0 ;index * 2 mov dptr, #table ;table base jnc m1 inc dph ;upper 128 values m1: mov r0, a movc a, @a+dptr ;get high byte xch a, r0 inc a movc a, @a+dptr ;get low byte mov dpl, a mov dph, r0 ret table: dw 1, 5, 1234, 65534 ;table of 16 bit values dw 0, 255 Peter |
Topic | Author | Date |
Code optimization suggestion? | 01/01/70 00:00 | |
Table | 01/01/70 00:00 | |
Table? | 01/01/70 00:00 | |
Another table ... | 01/01/70 00:00 | |
CJNE | 01/01/70 00:00 | |
Everybody is saying to use a table | 01/01/70 00:00 | |
My confsion | 01/01/70 00:00 | |
two tables | 01/01/70 00:00 | |
Tables | 01/01/70 00:00 | |
sure | 01/01/70 00:00 | |
gurus don't subtract constants | 01/01/70 00:00 | |
16 bit table | 01/01/70 00:00 | |
bit table | 01/01/70 00:00 | |
Table indexing![]() | 01/01/70 00:00 |