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

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
10/12/01 20:58
Read: times


 
#15641 - RE: 8052 - machine language - more info,
He said why he wanted it, to push the address onto a pseudo-stack (to save space on his regular stack?)

It is a very useful technique in assembler programming, in that you can follow a call to a subroutine with the data. Let the subroutine extract the data from the subsequent address locations (after the call), then jump back to the address after the call.
Erik showed the key issues. One possible use is to transmit text strings:

lcall xmit
db 'This is my message.',13,10,0
lcall xmit
db 'and another string...',13,10,0
.
.
ret

xmit:
pop dpl ; is this the right order?
pop dph
xmitloop:
clr a
movc a,@a+dptr ; characters in code space
inc dptr
orl a,a ;(test a - I'm rusty)
jnz notnull
jmp @a+dptr ; return to last byte+1
notnull:
(send character to device...)
jmp xmitloop





List of 7 messages in thread
TopicAuthorDate
8052 - machine language - more info            01/01/70 00:00      
RE: 8052 - machine language - more info            01/01/70 00:00      
RE: 8052 - machine language - more info,            01/01/70 00:00      
RE: 8052 - machine language - more info            01/01/70 00:00      
RE: 8052 - machine language - more info            01/01/70 00:00      
RE: 8052 - machine language - more info            01/01/70 00:00      
RE: 8052 - machine language - more info,            01/01/70 00:00      

Back to Subject List