Home  Site Map  Instruction Index 

LGS  -  Load Far Pointer Instruction


The LGS instruction is used to load (read) a segment and address from memory into registers. The memory address most hold the Segment and offset address.

This command has 3 parts, Instruction, Register, and a 32 bit memory address made up of 16 bit Segment number followed by an offset from the start of it.

LGS loads the Offset address into the Register provided in the first operand, then the Segment in to the GS Register



Breakdown   Description16 bit Machine
Code
LGS ; Instruction0F B5
SI ; Register number
[BX] ; A memory address from [BX]
;  pointed to by BX
DataAddress; A Label address 25 C0


LGS using a memory address

Assembly
Sample
Description
MOV BX, 0x0345;  Assign the memory address of the Pointer
or
MOV BX, DataAddress;  Assign the memory address of the Pointer
LGS SI, [BX];  Call LGS


Alternate method

Assembly
Sample
Description
MOV BX, 0x0005;  Assign the memory address of the Pointer
PUSH BX
POP GS
MOV SI, DataAddress ;  Assign the memory address of the Pointer
;  to a Register


Assembly
Sample
Description   16 bit Machine
  Code
LGS SI, [BX];  Load GS and a Register from
;  the memory adress in [BX]
  0F B5 33