My question is, can i assign different registers and some of their individual bits to a single array ? ( or similar process?)

Some background. im using a 16f917 and driving a 3 1/2 numeric display- this being on a mechaatronics demo board. I'm writing to the lcd segment registers LCDDATA0 to LCDDATA11 in order to map the individual elements of the display. However for example in order to drive all elements in the first numeric i'm using


lcddata2.6=1 'seg a
lcddata2.7=1 'seg b
lcddata8.7=1 'seg c
lcddata11.6=1 'seg d
lcddata8.6=1 'seg e
lcddata5.6=1 'seg f
lcddata5.7=1 'seg g

and then doing all the above again to show a different number (ie to show '2' the pattern for segments a-g is 1101101, to show '3' the pattern is 1111001) etc

to my mind there must be a better (more elegant) way than a seperate call for every single segment but as the assignments of LCDDATA addresses to LCD segments seems to be scattered almost randomly I cannot see how to map these in a more meaningful way

Any ideas?

Alastair

ps whats a tag?