Ejemplo de separar numero pares de impares
.model small
.stack 100h ;tamaño de la pila
.data
tabla1 Db 39h,45h,33h,52h,28h
impar db 5 dup (?) ; espacios en memoria para guardar los valores de la tabla
par db 5 dup (?)
.code
INICIO: mov ax,seg tabla1 ; iniciar segmento desde la tabla1
mov ds,ax
mov si,offset tabla1 ; posicionar apuntador a la tabla
mov BX,offset IMPAR
mov Di,offset PAR
mov cx,5
Definir_p: MOV AX,0000H
mov al,[si]
AND AL,0FH
SUB AL,08H
CMP AL,00H
JZ PAR_N
MOV AL,[SI] ;los corchetes son para mover donde lo que esta apuntando SI a AL
AND AL,0FH
SUB AL,06H
CMP AL,00H
JZ PAR_N
MOV AL,[SI]
AND AL,0FH
SUB AL,04H
CMP AL,00H
JZ PAR_N
MOV AL,[SI]
AND AL,0FH
SUB AL,02H
CMP AL,00H
JZ PAR_N
JMP IMPAR_N
RETORNO: INC SI
LOOP DEFINIR_P
JMP FIN
PAR_N: MOV DL,[SI]
MOV [DI],DL
INC DI
JMP RETORNO
IMPAR_N: MOV DH,[SI]
MOV [BX],DH
INC BX
JMP RETORNO
FIN: MOV AX,4C00H ; salida del sistema
INT 21H
END INICIO
END
Esto puede ayudar un poco son varios vídeos
No hay comentarios.:
Publicar un comentario