16 bit Assembly
Home Site Map Instruction Index
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 Description Code LGS ; Instruction 0F B5 SI ; Register number [BX] ; A memory address from [BX]
pointed to by BXDataAddress ; 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 |