Red de conocimiento informático - Conocimiento sistemático - Preguntas sobre programación en lenguaje ensamblador ¡URGENTEMENTE!

Preguntas sobre programación en lenguaje ensamblador ¡URGENTEMENTE!

; El programa se compila y ejecuta correctamente

Segmento de código

Supongamos CS: código, DS: código

---- ------- --- ---------- ---------- ---

Función: Mostrar la cadena de la dirección especificada (Str_Addr)

;

; Entrada:

; Str_Addr = dirección de cadena (obligatoria en el segmento de datos)

; Método de uso: Salida Str_Addr

;

Salida MACRO Str_Addr

lea dx,Str_Addr

mov ah,9

int 21h

EndM

; ---------- ---------- ---------- -------

; Función: Salida de carro Retorno Avance de línea

Output_CTLF proc Near

push ax

push dx

mov ah,02h

mov dl,0dh

int 21h

mov dl,0ah

int 21h

pop dx

pop ax

ret

Output_CTLF endp

------- ---------- -- --------

Función: Calcular el valor de la variable dependiente y en función del valor de la variable independiente x

; >

; Salir: muestra el valor de y en la posición actual del cursor

Calculate_y Proc Near

cmp x,1

jnz $+8

mov y ,0

ret

cmp x,3

jae $+8

mov y, 1

ret

mov y,2

ret

Calcular_y EndP

----- ----- ---------- ------

x db ?;Variable independiente

y db ;Variable dependiente

Prompt_x db 'x=$' ;Pregunta por el valor de x

Prompt_y db 13,10,'y=$' ;Mostrar solicitud por el valor de y

Inicio: push cs

pop ds

Input_x:Salida Prompt_x; Solicita el valor de x

mov ah,1

int 21h

cmp al,27 ;Esc?

jz Exit_Proc ;Finalizar programa

cmp al,'1' ;<1?

jb Input_x ;Vuelva a ingresar

cmp al,'9' ;>9?

ja Input_x ; vuelva a ingresar

y al,0fh

mov x,al ; guardar variables independientes

llamar a Calculate_y; Calcular el valor de la función

Salida Prompt_y; Muestra el valor de y en el indicador. Solicite mostrar el valor de y

mov dl,y

o dl,30h

mov ah,2; mostrar un carácter

int 21h

Llamar a Output_CTLF

Llamar a Output_CTLF

jmp Input_ x

Exit_Proc: mov ah,4ch;Finalizar programa

int 21h

Código FINALIZA

FIN Inicio ;La compilación termina aquí