برگزیده های پرشین تولز

كمك فوري ...برنامه اسمبلي كه اجرا نميشه !!

bloody

کاربر فعال علم و دانش
کاربر فعال
تاریخ عضویت
19 آپریل 2007
نوشته‌ها
1,256
لایک‌ها
17
محل سکونت
IRAN
سلام دوستان اگه كسي ميدونه يه برنامه ميخوام كه ريشه هاي معادله درجه دوم رو حساب كنه يه چيزايي دارم ولي اجرا نميشه البته اسمبلي !!

HTML:
.386
.MODEL FLAT

include io.h          ;header file for input/output
Cr   EQU   0dh        ;carriage return character
Lf   EQU   0ah        ;line feed

.STACK 4096
.DATA
A    DBYTE   ?
B    DBYTE   ?
C    DBYTE   ?
S1   DBYTE   ?
S2   DBYTE   ?
prompt1 BYTE "Enter first number as b: "
prompt2 BYTE "Enter second number as a: "
prompt3 BYTE "Enter third number as c: "
String  BYTE  40 DUP(?)
labell  BYTE  cr,Lf, "the one root is: S1=      the second root is: S2=
 "

.CODE                 ;start of main program code
_start:


                      output prompt1        ;prompt for first number
B DB ?
A DB ?
C DB ?
X DB ?
D DB 0
E DB 2
MOV CL
MOV AL,B;
IMUL B;
MOV X,4
MOV BL,A
IMUL X
IMUL C
CMP AX,BX
JL LAB1;
JZ LAB2;
SUB AX,BX;
LAB3:INC D;
MOV BX, D;
IMUL D;
CMP BX,AX;
JA LAB4;
JZ LAB5;
JC LAB3;
LAB4:DEC D;
LAB5:NEG B;
MOV CL,D; 
SUB B,CL;
MOV AL,E;
IMUL A;
IDIV B;
ADD BL,D;
IDIV A;
MOV S1,AX
MOV S2,BX;
LAB1: ;GHEYRE GHABELE MOHASEBE
; THE END
LOOP
END
 

pirmard

Registered User
تاریخ عضویت
21 آگوست 2007
نوشته‌ها
841
لایک‌ها
5
سلام دوستان اگه كسي ميدونه يه برنامه ميخوام كه ريشه هاي معادله درجه دوم رو حساب كنه يه چيزايي دارم ولي اجرا نميشه البته اسمبلي !!

HTML:
;program to print instruction for"roots of moadele daraje 2"
;date:revised 1/2008

.386
.MODEL FLAT

include io.h          ;header file for input/output
Cr   EQU   0dh        ;carriage return character
Lf   EQU   0ah        ;line feed

.STACK 4096
.DATA
A    DBYTE   ?
B    DBYTE   ?
C    DBYTE   ?
S1   DBYTE   ?
S2   DBYTE   ?
prompt1 BYTE "Enter first number as b: "
prompt2 BYTE "Enter second number as a: "
prompt3 BYTE "Enter third number as c: "
String  BYTE  40 DUP(?)
labell  BYTE  cr,Lf, "the one root is: S1=      the second root is: S2=
 "

.CODE                 ;start of main program code
_start:


                      output prompt1        ;prompt for first number
B DB ?
A DB ?
C DB ?
X DB ?
D DB 0
E DB 2
MOV CL
MOV AL,B;
IMUL B;
MOV X,4
MOV BL,A
IMUL X
IMUL C
CMP AX,BX
JL LAB1;
JZ LAB2;
SUB AX,BX;
LAB3:INC D;
MOV BX, D;
IMUL D;
CMP BX,AX;
JA LAB4;
JZ LAB5;
JC LAB3;
LAB4:DEC D;
LAB5:NEG B;
MOV CL,D; 
SUB B,CL;
MOV AL,E;
IMUL A;
IDIV B;
ADD BL,D;
IDIV A;
MOV S1,AX
MOV S2,BX;
LAB1: ;GHEYRE GHABELE MOHASEBE
; THE END
LOOP
END


دیباگ کردن برنامه اسمبلی سخت تر از نوشتن برنامه از اوله !

ولی خوب حالا ارور میده ؟ یا منطقش مشکل داره ؟
 

bloody

کاربر فعال علم و دانش
کاربر فعال
تاریخ عضویت
19 آپریل 2007
نوشته‌ها
1,256
لایک‌ها
17
محل سکونت
IRAN
ممنون كه جواب دادي ...فكر كنم منطق برنامه مشكلي نداشته باشه ...ولي ارور ميده تا دلت بخواد !!!
 
بالا