Underc0de

Programación General => ASM => Mensaje iniciado por: ErielSinh en Diciembre 10, 2020, 12:38:56 AM

Título: leer por teclado e imprimir por pantalla librerias emu8086 [facil]
Publicado por: ErielSinh en Diciembre 10, 2020, 12:38:56 AM
siguiendo con los ejercicios para familiarizarnos con assembler en el procesador 8086 mediante emu8086 haremos el uso de las librerias para capturar datos por teclado o imprimirlos por pantalla de forma sencilla

include emu8086.inc  ; declaramos la libreria
org 100h           

PRINT 'oh mae ya mo shindeiru'; podemos utilizar print para imprimir una cadena
gotoxy 10,5 ; nos vamos a la direccion 10 en x, 5 en y
putc 65 ; imprimimos el caracter 65 en ascii que es el caracter A
gotoxy 10,6
putc 'B' ; imprimimos B

utilizamos putc y print desde la libreria
ejecutamos
(https://i.ibb.co/pRqRpsk/etnedenr6.jpg)
ahora que entendimos el funcionamiento con algo basico subamos de nivel
Programa que recoge un numero por teclado y lo imprime por pantalla
Programa que imprime una cadena por pantalla
Programa que recoge 2 numeros por teclado e imprime la suma de ambos por pantalla


include 'emu8086.inc'
org 100h   
  print 'ejercicio 1'
  ;recoger primer numero
  printn ''
  lea si, msg1
  call print_string
  call scan_num
  mov ax,cx
  ; imprime las siguientes palabras
  ;call pthis
  ;db 13,10,'el numero que ingresaste es: ',0
  ;call print_num
  mov bx,ax
 
  ;recoger el segundo numero
  lea si,msg2
  printn ''
  call print_string
   
  push ax
  lea si, msg1
  call scan_num
  mov ax,cx
 
  ;call pthis
  ;db 13,10,'el numero que ingresaste es: ',0
  ;call print_num
  mov bx,ax
  pop ax
  add ax,bx
  ; imprime la suma de los dos numeros guardada en ax 
  call pthis
  db 13,10,'la suma total es : ',0
  call print_num
         
ret             
msg1 db 'ingresa el primer numero: ',0
msg2 db 'ingresa el segundo numero: ',0
DEFINE_SCAN_NUM
DEFINE_PRINT_STRING
DEFINE_PRINT_NUM
DEFINE_PRINT_NUM_UNS
DEFINE_PTHIS
 
END

utilizamos definiciones, estas se declaran despues del RET


(https://i.ibb.co/n6n2b16/etnedenr7.jpg)