Cómo escribir una tabla de búsqueda de ensamblajes en detalle, preferiblemente con un ejemplo
Según el tamaño de una variable, encontrar la correspondiente en un conjunto de datos ordenados secuencialmente es una búsqueda en una tabla.
Los ejemplos son los siguientes:
;-----------------------
DIS_ALL: ;*** Tubo digital Yang, P0: segmento, P2: fase inversa
MOV R2, #254 ;Selección de bit, nivel bajo activo
MOV R0, #D_BUF
MOV A, @R0
AGREGAR A, #(TAB - $ - 3)
MOVC A, @A + comando de búsqueda de tabla
MOV P2, #255
MOV P0, A
MOV P2, R2
DJNZ R7, $ ;Pantalla 1ms
DJNZ R7, $
MOV A, R2
RL A
MOV R2, A
INC R0
CJNE R0, #D_BUF + 6, $ - 19 ;Mostrar 6 bits
MOV P2, #255
RET ;El tiempo de ocupación es de aproximadamente 6,2 ms
;-----------------------
TAB: ;Tabla de códigos
DB 0C0H, 0F9H, 0A4H, 0B0H, 099H, 092H, 082H, 0F8H;0~7
DB 080H, 090H, 088H, 083H, 0C6H, 0A1H, 086H, 08EH;8~F
DB 040H, 079H, 024H, 030H, 019H, 012H, 002H, 078H
DB 000H, 010H, 0FFH ;0.~9.
DB 08CH, 0BFH, 089H, 0C7H, 0A3H, 0AFH ;P,-,H,L,o,r
;========================== = ========
Referencia:
/do_sermon/item/78693092ff197abd83d29584