Haz una pregunta
  Foros de Electrónica » Diseño digital » Interfaces y Programación
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

02/06/2008 #1


Multiplicar en asm. alguien me ?
Hola a todos! ando haciendo un programita y la verdad apenas se imprimir algo en asm, este programa no me multiplica el numero que entra desde el teclado, a ver si alguien me ayuda, aqui esta :

; --- EXE file format
.model small
.stack 100h
.data

data2 db 10,"Introduzca el texto.", 10, 13, '$'
data3 db "Al terminar, presione Enter.", 10, 13, '$'

;--------- Insert Data and Equates HERE

;--------- Declare other variables with DB, DW, etc. here


.code
start:
mov ax, @data
mov ds, ax ;set segment register
mov es, ax ;set segment register
and sp, not 3 ;align stack to avoid AC fault

lea dx, data2
mov ah, 09
int 21h

lea dx, data3
mov ah, 09
int 21h

print1:
mov ah, 01
int 21h

cmp al, 0dh
je divx
jne print1

divx:
mov cx, 0
mov cl, al

mov al, cl
mov bl, 4
mul bl

mov dx, ax
mov ah, 9
int 21h

exit:
mov ax, 4c00h ; terminate program
int 21h
end start

mil gracias de antemano!
02/06/2008 #2

Avatar de Eduardo

Re: Multiplicar en asm. alguien me ?
dimmer dijo:
Hola a todos! ando haciendo un programita y la verdad apenas se imprimir algo en asm, este programa no me multiplica el numero que entra desde el teclado
No te multiplica porque:
- Al digito que vas leyendo tel teclado no lo guardas en ningun lado.
- Termina el bucle y lo unico que tenes en AL es 0Dh (Enter).
- Despues de multiplicar AL*4 llamas a la int21h sin haber convertido el numero a ASCII.


Para que eso ande tenes que pasar el string de entrada a binario --> multiplicar --> convertir de bin a asc --> llamar la int21h

O bien, si no queres convertir de binario<-->ascii , hacer un bucle de multiplicacion bcd usando aam.

Tambien podrias usar instrucciones del 8087, pasas el string de entrada a bcd (restarle 30h), usas fbld y fbst y lo convertis a ascii (sumas 30h).
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Interfaces y Programación

Lenguajes de programación, gestión y manejo de puertos

Cerrar
Foros de Electrónica » Diseño digital » Interfaces y Programación

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.