汇编语言中的查表指令(XLAT)使用相对较多,现在,稍微介绍一下它。
所谓查表,就是查找表中元素,具体实现如下。
首先,将数组偏移地址给BX,再将在该数组中元素的下标值给AL,使用XLAT指令,即可获得该元素,该元素放置在AL中。
下面是例子:
LEA BX,A
MOV AL,00H
XALT
下面是使用查表输出HELLO WORLD:
DATA SEGMENT
A DB 'HELLO WORLD','$';'$'作为停止
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
LEA BX,A;数组偏移地址放入BX
MOV CL,00H;中转量
MOV AL,CL
ONE:
XLAT;查表
CMP AL,'$'
JZ END1
MOV DL,AL;输出字符
MOV AH,02H
INT 21H
INC CL
MOV AL,CL
JMP ONE
END1: ;结束
MOV AX,4C00H
INT 21H
CODE ENDS
END START