Programa en lenguaje ensamblador de principios de microcomputadora
Al depurar, debe cambiar los signos de puntuación chinos a signos de puntuación en inglés; de lo contrario, aparecerá el mensaje SIN MEMORIA
SEGMENTO DE DATOS definir segmento de datos
ADR DB 10,-31,-45,67,80,46,0,-31,0,77
NUM EQU $-ADR;NUM es el número de datos
DA1 DB 0;DA1 se usa para almacenar el número de números positivos y el valor inicial es 0
DA2 DB 0;DA2 se usa para almacenar el número de números negativos y el valor inicial es 0
DA3 DB 0; DA3 se utiliza para almacenar el número de 0 y el valor inicial es 0
FIN DE DATOS
SEGMENTO DE CÓDIGO Definir segmento de código;
ASUME DS:DATA,CS: CODE
INICIO: MOV AX,DATA carga de dirección de segmento de datos
MOV DS,AX
LEA SI,ADR
MOV CX,NUM
MOV AL,0;AL borrar
DON1:MOV AL,[SI]
CMP AL,0
JGE DON2
INC DA2
JMP END0
DON2:CMP AL,0
JZ DON3
INC DA1
JMP END0
DON3:INC DA3
END0:INC SI
DEC CX
JNZ DON1
MOV AH,4CH
INT 21H
EL CÓDIGO FINALIZA
END INICIO