PDA

View Full Version : سوال: مشکل در اجرای کد



sara_noori
شنبه 02 دی 1391, 11:56 صبح
ببخشید من کد فیبونانچی زیر را نوشتم اما بی نهایت بار اجرا میشه اشکال کجاست
ممنون میشم زود جوابمو بدیدSTSEG SEGMENT STACK
DB 64 DUP (?)
STSEG ENDS
;=================
DTSEG SEGMENT
DATA DB ?
ORG 80H
DTSEG ENDS
;=================
CDSEG SEGMENT
MAIN PROC FAR
ASSUME CS:CDSEG,DS:DTSEG,SS:STSEG
MOV AX,DTSEG
MOV DS,AX
;-----------
MOV SI,OFFSET DATA
MOV DX,0H
MOV CX,70
;-----------
MOV AX,0H ;IMPORT TWO NUMBER
MOV BX,1H
MOV [SI],AX
INC SI
MOV [SI],BX
INC SI
;-----------
L1: ;LOOP OF FIB
MOV DX,0H
ADD DX,BX
ADD DX,AX
MOV AX,BX
MOV BX,DX
MOV [SI],DX
INC SI
LOOP L1
;=================
MOV AH,4CH
INT 21H
MAIN ENDP
CDSEG ENDS
END MAIN

bhasoft
شنبه 02 دی 1391, 12:23 عصر
دوست عزیز من کد فیبوناچی رو برا شما میزارم.ولی شما خودتون تحلیلش کنید... چون کار خوبی نیس که پروژه آماده رو برا شما بدم و شمام چیزی بلد نباشید...
÷س این رو بع عنوان یه نمونه کد در نظر بگیرید و از بخش هاش استفاده کنید.... با تشکر

STACKSEG SEGMENT PARA 'STACK'

DW 32 DUP(' ')

STACKSEG ENDS
;-----------------------
DATASEG SEGMENT PARA 'DATA'
adad dw 0
adad1 dw 0
Sum Dw 0
fib dw 0
npush db 0
MSG DB 'input n for fibpnachi series:=','$'
msg1 db 'fibonaci sereas is:=','$'

DATASEG ENDS
;----------------
CODESEG SEGMENT PARA 'CODE'
MAIN PROC FAR

ASSUME CS:CODESEG,DS:DATASEG,SS:STACKSEG
MOV AX,DATASEG
MOV DS,AX
;+++++++++++

lea dx,msg
mov ah,09h
int 21h
begin1:
mov ah,01h
int 21h
mov ah,0
cmp ax,13
je end1
sub ax,48
mov adad,ax
mov ax,sum
mov cx,10
mul cx
mov sum,ax
mov bx,adad
add sum,bx
jmp begin1
end1:



mov ah,02
mov dl,10
int 21h
mov ah,9
lea dx,msg1
int 21h
mov adad,0
mov adad1,1
mov cx,0
begin2:
cmp cx,sum
jg endn
cmp cx,1
jg ik
mov fib,cx
jmp ike1
ik:
mov ax,adad
mov bx,adad1
mov adad,bx
add adad1,ax
mov ax,adad1
mov fib,ax
ike1:




mov npush,0
ff:
cmp fib,10
jl we
mov ax,fib
mov dx,0
mov bx,10
div bx
push dx
mov fib,ax
inc npush
jmp ff
we:
inc npush
push fib
ik_783:

cmp npush,1
jl endf
mov dx,0
pop dx
add dx,48
mov ah,02
int 21h
dec npush
jmp ik_783
endf:
mov dl,','
mov ah,02h
int 21h
inc cx
jmp begin2
endn:
;+++++++++++
mov ah,01h
int 21h
MOV AX,4C00H
INT 21H

MAIN ENDP

CODESEG ENDS
END MAIN

sara_noori
شنبه 02 دی 1391, 12:33 عصر
ممنون از لطفت بی نظیرتون

bhasoft
شنبه 02 دی 1391, 12:36 عصر
خواهش میکنم.بازم اگه مشکلی بود در خدمتم.وب سایت بنده هم جوابگوی شماست... میتونید ÷یغام بزارید تا جوابتونو بدم.با تکشر www.kavoshsoftware.ir