Ensamblador - fibonacci urgente

 
Vista:

fibonacci urgente

Publicado por Riku (7 intervenciones) el 18/04/2008 08:16:18
include numero
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ;
CODIGO SEGMENT 'CODE'
FIBONACI PROC fAR

ASSUME CS:CODIGO,DS:DATOS,SS:PILA,ES:DATOS
ORG 0100H

push ds ; Esto es necesario para
sub ax,ax ; el retorno al simolo
push ax ; del sistema.

mov ax,DATOS
mov es,ax

mov al,003h
mov ah,0
int 10h
mov ax,0b800h
mov ds,ax

mov si,OFFSET DATO_1
mov di,0
mov cx,(OFFSET FIN_DATO_1 - OFFSET DATO_1)
pantallazo:
mov al,es:[si]
mov ds:[di],al
add di,2
inc si
loop pantallazo

mov dx,1
xor bx,bx
mov ax,bx

aqui:
mov ax,bx
add ax,dx
mov bx,dx
mov dx,ax

numero 11,11

hay_tecla_anagrama_?:
mov ah,1
int 16h
jnz hay_tecla_pulsada_anagrama
jmp hay_tecla_anagrama_?
hay_tecla_pulsada_anagrama:
mov ah,0
int 16h
es_escape_anagrama_?:
cmp ah,1
jnz no_es_escape_anagrama
jmp salir_programa
no_es_escape_anagrama:
jmp aqui

salir_programa:
ret

FIBONACI ENDP
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ;
CODIGO ENDS

DATOS SEGMENT 'DATA'
DATO_1 LABEL BYTE
DB '********** Pulsar una tecla **********'
FIN_DATO_1 LABEL BYTE
DATOS ENDS

PILA SEGMENT STACK
DB 1024 DUP ('PILA')
PILA ENDS

END FIBONACI

hola alguien me podria ayudar?, este codigo en teoria deberia poder compilars con tasm, pero me marca error con en numero, ojala m puedan echar la mano, y k la serie fibonaci se imprima
como serie. gracias de antemano

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:fibonacci urgente

Publicado por MSH (120 intervenciones) el 27/04/2008 01:53:04
Saludos:

No quería subir el código fibonacci porque la intención era que alguien más posteara una respuesta. En fin, si al joven "Riku" ya no le es útil el programa, lo publicaé por si alguien lo llega a necesitar posteriormente.

;código original :[email protected]
;corregido por MSH. Ensamblado en TASM y enlazado con TLINK

stack segment
dw 500h
stack ends

data segment

array dw 15h dup(0000h)
disparray dw 10h dup(0000h)

data ends

code segment
assume cs:code, ds:data ,ss:stack
;..........................................................

begin: main proc far

mov ax,data
mov ds,ax

call new_line
call new_line

mov array[0],0001h
mov array[2],0001h
mov si,0004h

sss:

mov ax,0000h
mov ax,array[si-2]
add ax,array[si-4]
mov array[si],ax
add si,0002h
cmp si,001eh
jnz sss

;......muestra el arreglo..............

mov si,0000h

loop6:
mov ax,array[si]
mov di,0000h

loop4:
mov dx,0000h
mov bx,0ah
div bx
mov disparray[di],dx
add di,0002h
cmp ax,0000h
jnz loop4

loop8:
sub di,0002h
mov bx,disparray[di]
mov disparray[di],0000h

mov dl,bl
and dl,0fh
or dl,30h
mov ah,02h
int 21h
cmp di,0000h
jnz loop8

add si,0002h

mov ah,02h
mov dl,20h
int 21h
cmp si,001eh
jnz loop6

call new_line

ending:

mov ax,4c00h
int 21h

main endp
;........................................................
new_line proc near
mov ah,02h
mov dl,0dh
int 21h
mov ah,02h
mov dl,0ah
int 21h
ret
new_line endp
;.......................................................

code ends
end begin
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:fibonacci urgente

Publicado por hestor (1 intervención) el 07/05/2008 21:13:21
porfa yalo necesito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:fibonacci urgente

Publicado por Riku (7 intervenciones) el 19/05/2008 09:42:16
THANX^^
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar