Replying to a message of Scott McNay to Darryl Gregorash:
SM> *** Darryl Gregorash wrote in a message to Arnoud Bakker:
AB>> What does LES do?
DG>> byte of THIS. An equivalent 3-instruction sequence is:
DG>> MOV BX, OFFSET THIS
DG>> MOV AX, SEG THIS
DG>> MOV ES, AX
I stand by this statement, Scott.. this accomplishes precisely what LES BX,
THIS accomplishes.
Well, OK, if you really must preserve AX, then embed the above within a PUSH
AX/POP AX pair :)
SM> "LEA reg, mem" causes the offset address of mem to be
SM> calculated and put into reg. "LES reg, [mem]" causes the
SM> 32-bit pointer located at mem to be loaded into ES and reg.
That is, LEA loads a NEAR pointer, and LES loads a FAR pointer.. ummm, but if
you read back what I said, I said that after LES BX, THIS, ES:BX contains a
pointer to THIS.
Ummm, I think that is the same thing as what you said, yes?
SM> There are also LDS and, on 386+, I think, there's LSS,
I do believe you are right.. and on a 386+, also LFS and LGS.
SM> which works in exactly the same way. LSS, of course, you'd
SM> normally use only with SP as the reg,
One certainly hopes so :)
--- FleetStreet 1.21 NR
---------------
* Origin: BIG BANG Burger Bar: Regina SK Canada (1:140/86)
|