помогите изменить код в ассемблере чтобы функция х^2-5*x+1 заменилась на x^3-5*x-1...за ранее спасибо!)
title LaborRabota3
my_stack SEGMENT STACK 'Stack'
DW 32 DUP (?)
my_stack ENDS
data SEGMENT
mes1 db 10,13,'Vvedite X=$'
mes2 db 10,13,'Rezyltat: Y=$'
XX db 3,?
X1 db 2 dup(?)
X dw 1 dup(?)
N dw 1 dup(?)
M dw 1 dup(?)
Ent db '',0Ah,0Dh,'$'
data ends
text SEGMENT
assume CS:text, DS:data, SS:my_stack
main proc far
push DS
xor AX,AX
push AX
mov AX,data
mov DS,AX
lea DX,Mes1
mov Ah,09h
int 21h
lea DX,XX
mov AH,0Ah
int 21h
mov AX,0
mov BX,0
mov SI,0
mov CH,0
mov CL,[XX]+1
mov DI,CX
dec DI
m1:
mov BL,X1[SI]
mov BH,0
sub BX,30h
cmp DI,0
je exit
mov N,CX
mov M,AX
mov CX,DI
mov AX,BX
N1:
mov DX,10
mul DX
loop N1
mov BX,AX
mov CX,N
mov AX,M
exit:
mov DX,0
add AX,BX
inc SI
dec DI
loop m1
mov X,AX
cmp AX,1
jge P
jmp Ex
P:
cmp AX,4
jg P1
mul AL
mov DX,AX
jmp Ex
P1:
cmp AX,10
jg Ex
mul AL
mov DX,AX
mov AX,X
mov CL,5
mul CL
sub DX,AX
add DX,1
Ex:
mov BX,DX
lea DX,Mes2
mov AH,09h
int 21h
mov AX,BX
cmp AL,10
jge D
jmp D1
mov BL,10
div BL
mov BX,AX
add BL,30h
add BH,30h
mov DL,BL
mov AH,06h
int 21h
mov DL,BH
mov AH,06h
int 21h
jmp D2
D1:
add BL,30h
mov DL,BL
mov AH,06h
int 21h
D2:
lea DX,Ent
mov AH,09h
int 21h
;-------------------------
ret
main endp
text ends
end main