cottrell@nbs-vms.arpa (COTTRELL, JAMES) (12/14/85)
/* > >> > As far as relative code, the pdp is missing something. How do you > >> > load the address of a variable relative to the PC? This way: > >> > > >> > mov pc,r0 ; address of `here' > >> > here: add #foobar-here,r0 ; make relative > >> > > >> Bad example, now what are you going to do with this loaded > >> address? > > > >Bad example, now what can I do with that loaded question? You see, > >foobar just happens to be an array! What I need to do is get it's > >address into a register so I can auto-{in,de}crement the bugger. > > > > jim cottrell@nbs > >*/ > The most likely thing I would do with that loaded register is send > the value off to some external hardware, like a DMA controller, > which needs to know absolute addresses. > > carl lowenstein marine physical lab u.c. san diego That is one thing. Another is pass it to something like `strcpy'. Just because a program is position independent doesn't mean it doesn't use absolute addresses. Once PIC is loaded it may not be moved arbitrarily without its knowledge. jim cottrell@nbs */ ------