主题:跪问无比英俊潇洒的大大们一个关于多项式运算的问题
411tomb411
[专家分:0] 发布于 2006-02-21 14:21:00
问题:例如某多项式y = -9.8108x2+20.1293x-0.0317,输入x,求出y。怎么编程序?大大们,拜托了~[em10]
回复列表 (共2个回复)
沙发
erping [专家分:3660] 发布于 2006-02-22 14:58:00
;为了省事,使用了 win32 汇编
;y = -9.8108x2+20.1293x-0.0317
.386
.model flat, stdcall
option casemap :none
include windows.inc
include kernel32.inc
includelib kernel32.lib
includelib MSVCRT.LIB
.data
x dq ?
y dq ?
tmp1 dq -9.8108
tmp2 dq 20.1293
tmp3 dq 0.0317
szMsg1 db 'please input x:', 0
szFmt1 db '%f', 0
szFmt2 db 'result: %f', 0
scanf proto C :DWORD, :VARARG
printf proto C :DWORD, :VARARG
.code
_main:
invoke printf, addr szMsg1
invoke scanf, addr szFmt1, addr x
fld qword ptr tmp1
fmul qword ptr x
fadd st, st ;* 2
fld qword ptr tmp2
fmul qword ptr x
faddp st(1), st
fsub qword ptr tmp3
fstp qword ptr y ;保存结果
invoke printf, addr szFmt2, y
invoke ExitProcess, 0
end _main
板凳
411tomb411 [专家分:0] 发布于 2006-02-25 10:00:00
谢谢上面的大大,不过我想用51单片机的汇编写,好像很麻烦。给个思路也行
我来回复