سلام دوستان اگه كسي ميدونه يه برنامه ميخوام كه ريشه هاي معادله درجه دوم رو حساب كنه يه چيزايي دارم ولي اجرا نميشه البته اسمبلي !!
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