XLATB
Usage: XLATB translation-table Modifies flags: None
Replaces the byte in AL with byte from a user table addressed by BX.
Translate Byte in Lookup Table
XLAT ; D7 [8086]
XLATB ; D7 [8086]
XLATB adds the value in AL, treated as an unsigned byte, to EBX, and loads the byte from the resulting address (in the segment specified by DS) back into AL.
The segment register used to load from [EBX+AL] can be overridden by using a segment register name as a prefix (for example, es xlatb).
The original value of AL is the index into the translate table. The best way to describe this is MOV AL,[BX+AL].
EXAMPLE:
[Data: B$ 0, 1, 2, 3, 8, 5, 6, 7, 4, 9]
xor eax eax
mov ebx Data
mov al 4
xlatb ; eax= 8