Problema de ensamblaje: solo un bit en BL es 1, escriba un programa para probar y generar el mensaje "X bit es 1".
Segmento de datos
S1 DB 'El 1 bit es 1$'
S2 DB 'El 2 bit es 1$'
S3 DB 'Los 3 bits son 1$'
S4 DB 'Los 4 bits son 1$'
S5 DB 'Los 5 bits son 1$'
S6 DB '6 bits son 1$'
S7 DB '7 bits son 1$'
S8 DB '8 bits son 1$'
Fin de datos
Segmento de código
Supongamos cs.code, ds:data
inicio:
mov ax,data
mov ds,ax
XOR dx,dx
;-------Ingrese BL--------
MOV BL , 01000000B
MOV AL,BL
;------ Inicio ciclo--------
MOV CX, 8
p>GOGO:
SHL AL,1
;-------Ir a------------ -
SALIDA JC
añadir dx, 3
BUCLE GOGO
;************ ** **********
SALIDA:
MOV AH,9
LEA SI,JMPTABLE
AÑADIR SI ,DX
JMP SI
JMPTABLE:
JMP CERCA DE PTR L1
JMP CERCA DE PTR L2
JMP CERCA DE PTR L3
JMP CERCA DE PTR L4
JMP CERCA DE PTR L5
JMP CERCA DE PTR L6
JMP CERCA DE PTR L7
JMP CERCA DE PTR L8
L1:
LEA DX,S1
JMP HECHO
L2: p>
LEA DX,S2
JMP HECHO
L3:
LEA DX,S3
JMP HECHO
L4:
LEA DX,S4
JMP HECHO
L5:
LEA DX,S5
JMP HECHO
L6:
LEA DX,S6
JMP HECHO
L7:
LEA DX, S7
JMP HECHO
L8:
LEA DX,S8
HECHO:
INT 21H
MOV AH, 4CH
INT 21H
Fin del código
Fin del inicio