Programación General > ASM (Ensamblador)
Operaciones Aritmeticas
(1/1)
Snowhite66:
Hola;
Busco hacer el siguiente programa; (x^2 +y)-z, donde x=5, y=2, z=1. Esto es lo que hize pero el resultando no es 26. Que estoy haciendo mal?
.model small
.stack 100h
.data
marca db '>>>>'
x db 5
y db 2
z db 1
resultado db ?
.code
main proc
mov ax, @data
mov ds, ax
mov al, x ; mueve x al registro al
mul x ; multiplico x por si mismo
add y, al ; le sumo y
sub z, al ; resto z
mov resultado, al ; el resultado se almacenara en al
mov ax, 4c00h
int 21h
main endp
end main
Nebire:
antes de:
mov AL, x
añade esta línea:
xor AX, AX
Para borrar su contenido, estás trabajando sobre al, pero n has borrado el contenido de ah, fíjate que al pasarlo por la pantalla, muestra el registro AX...
Navegación
Ir a la versión completa