Red de conocimiento informático - Conocimiento sistemático - En ensamblador, cómo usar la subrutina n.° 2 con 21 interrupciones para generar "¡Hola, mundo!".

En ensamblador, cómo usar la subrutina n.° 2 con 21 interrupciones para generar "¡Hola, mundo!".

Hay más errores en su programa.

1. Después de la definición del segmento, la definición de datos pasa a la siguiente línea. Esto es válido para los tres segmentos del programa.

2. Por conveniencia, las variables en la sección de datos deben tener nombre.

3. Una vez iniciado el código, se debe asignar un valor de dirección de segmento al registro de segmento de datos DS.

4. El operando fuente en la instrucción LEA no puede ser un carácter como "H" y debe ser un operando de memoria.

5. Tu recuento de bucles es incorrecto, 12 caracteres son 0CH, mientras que el 1CH que escribiste tiene 28 caracteres.

Puedes intentar cambiarlo a:

STACK SEGMENT

STACK DW 40H DUP(?)

TOP ETIQUETA WORD

p>

TERMINA LA PILA

SEGMENTO DE DATOS

S DB '¡HOLA,MUNDO!','$

TERMINA LOS DATOS

SEGMENTO DE CÓDIGO

ASUMIR CS.CODE,SS:STACK,DS:DATA

INICIO:

MOV AX, DATA

MOV DS , AX

MOV CX,1H

LEA BX, S

L1:

MOV DL,[BX]

MOV AH,2

INT 21H

INC BX

INC CX

CMP CX, 0CH

JNE L1

MOV AH,4CH

INT 21H

CÓDIGO FINALIZA

FINAL INICIO

CÓDIGO