Recuerda que puedes sugerir contenido :)
Identificar números primos de un arreglo en emu8086 - Código

Identificar números primos de un arreglo en emu8086 - Código

Encuentra el código utilizado en el video de Identificar números primos de un arreglo en emu8086.

TITLE ESTRUCTURA_BASICA

DATOS SEGMENT
    ; DECLARAR LAS VARIABLES AQU?
    NUMEROS DB 2,255,7,44,43,18,53,22,61,66,71,1
    PRIMOS DB 12 DUP(?)
    NOPRIMOS DB 12 DUP(?)
    ;--------------------------------------------------------------------------
DATOS ENDS

PILA SEGMENT
    DB 64 DUP(0)
PILA ENDS

CODIGO SEGMENT

    INICIO PROC FAR ;NEAR Y FAR
    ASSUME DS:DATOS, CS:CODIGO, SS:PILA
    PUSH DS
    MOV AX, 0
    PUSH AX
    
    MOV AX, DATOS
    MOV DS, AX
    MOV ES, AX
    
    ; CODIGO DE NUESTRO PROGRAMA AQUI---------------------------------------------
    MOV SI,0
    MOV DI,0
    MOV AX,0
    
    CICLO:
    CMP SI, 12
    JE EXIT ;CUANDO SEA 12 VA SALIR AL LLEGAR A ESTE CODIGO
    MOV BL, 1
    MOV AL, NUMEROS[SI]
    CMP AL, 2
    JE PARPRIMO
    JA PRIMO
    JB GUARDARNOPRIMO
    
    PRIMO:
    MOV AX, 0 
    MOV AL, NUMEROS[SI]
    INC BL
    DIV BL
    CMP AH, 0
    JE GUARDARNOPRIMO
    JA CONTADOR
    
    CONTADOR:
    MOV CL, NUMEROS[SI]
    SUB CX, 3
    JMP PRIMOCORROBORA
    
    PRIMOCORROBORA:
    MOV AX, 0
    MOV AL, NUMEROS[SI]
    INC BL
    DIV BL
    CMP AH, 0
    JE GUARDARNOPRIMO 
    LOOP PRIMOCORROBORA
    
    GUARDARPRIMO:
    MOV AL, NUMEROS[SI]
    MOV PRIMOS[DI], AL
    INC SI
    INC DI
    JMP CICLO
    
    PARPRIMO:
    MOV PRIMOS[DI], AL
    INC SI
    INC DI
    JMP CICLO
    
    GUARDARNOPRIMO:
    MOV AL, NUMEROS[SI]
    MOV NOPRIMOS[DI], AL
    INC SI
    INC DI
    JMP CICLO   
    
    ; REGISTROS DE ENSAMBLADOR
    ;8086 CPU has 8 general purpose registers, each register has its own name:
    
    ; AX - the accumulator register (divided into AH / AL).
    ; BX - the base address register (divided 
    ; CX - the data register (divided into DH / DL)
    
    ; SI - source index register.
    ; DI - destination index register.
    ; BP - base pointer.
    ; SP - stack pointer.
    
    ;-----------------------------------------------------------------------------
    EXIT:
    RET
    INICIO ENDP
CODIGO ENDS 
END INICIO

Regresar al curso

Contenidos del bloque de: Avanzado #1

Instrucciones PUSH y POP en emu8086 Instrucciones PUSH y POP en emu8086 Método de ordenamiento burbuja en emu8086 (parte 1/2) Método de ordenamiento burbuja en emu8086 (parte 2/2) Método de ordenamiento burbuja en emu8086 - Código Identificar números primos de un arreglo en emu8086 (parte 1/4) Identificar números primos de un arreglo en emu8086 (parte 2/4) Identificar números primos de un arreglo en emu8086 (parte 3/4) Identificar números primos de un arreglo en emu8086 (parte 4/4) Identificar números primos de un arreglo en emu8086 - Código