ayuda con suma

Iniciado por karmi, 18 Marzo 2011, 03:46 AM

0 Miembros y 1 Visitante están viendo este tema.

karmi

Hola, estoy empezando con ensamblador (MASM) e hice este prog. para sumar dos numeros que ingresados desde el teclado se sumen, pero no me arroja el resultado, alguien pudiera ayudarme? gracias





PILA SEGMENT PARA STACK "STACK"
  DB 200 DUP (0)
PILA ENDS
;---------------------------------------------------

DATOS SEGMENT PARA "DATA"
  uno DB "Ingresa el primer numero ","$"
  dos DB 13,10, "ingresa el segundo numero: ","$"
  PRIMER DB 15 DUP (0)
  SEGUN DB 15 DUP (0)
  resp DB 15 DUP (0)

DATOS ENDS ; cierre del segmento
;---------------------------------------------------

CODIGO SEGMENT PARA "CODE"  
EMPIEZA PROC FAR
  ASSUME CS: CODIGO, DS: DATOS, SS: PILA    
  MOV AX, DATOS
  MOV DS, AX
  MOV AH, 0FH
  INT 10H
  MOV AH, 00H
  INT 10H  

 ;CALL PREGUNTA

    EMPIEZA ENDP

 PREGUNTA PROC NEAR
 

  MOV DX,OFFSET uno
  MOV AH,9
  INT 21H

  MOV AH,0AH
  MOV DX,OFFSET primer
  MOV primer[0],15
  INT 21H

  MOV DX,OFFSET dos
  MOV AH,9
  INT 21H
 
   MOV AH,0AH
  MOV DX,OFFSET segun
  MOV segun[0],15
  INT 21H
 

 
  MOV AL, primer
  ADD AL, segun  



  MOV  AH,09H
  MOV DX, OFFSET resp
  MOV  resp[0], AL  
  INT 21H



   
    PREGUNTA ENDP

 
CODIGO ENDS ; cierra programa
END EMPIEZA  




Иōҳ

bien yo no se mucho de interrupciones, pero el mismo masm32 tiene una carpeta  example donde hace uso de consola y usa la macro input, en realidad no se si seria el caso usar pero con input puedes obtener lo que escribe el teclado, y en el IDE del RadAsm hay un ejemplo de un code en 16bits... seria cuestion de hecharle un vistaso, pero algo que noto en tu code es que nunca sumas =/, el mnemónico add es el indicado aparentemente.

Seguro ya vendra alguien que sepa sobre interrupciones :P

Salu2
Eres adicto a la Ing. Inversa? -> www.noxsoft.net

Eternal Idol

http://www.ctyme.com/intr/int-21.htm

Investiga como funcionan todos los servicios que usas y depura tu programa con debug.com, cuando leas una cadena recorda que no es un numero DECIMAL sino una secuencia de CARACTERES, si escribis 25 vas a tener '2' y '5' (49 y 53 en decimal).
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón