ytmf0795
級(jí)別: 略有小成
|
我有一臺(tái)印刷機(jī)的程序在印刷版徑觸摸屏輸入的運(yùn)算上用的是32位2進(jìn)制浮點(diǎn)數(shù)四則運(yùn)算(DEMUL DEDIV) 這樣數(shù)值運(yùn)算為什么就更精確嗎 用32位2進(jìn)制浮點(diǎn)數(shù)四則運(yùn)算的程序比普通10進(jìn)制四則運(yùn)算麻煩復(fù)雜好多好多哦 我自已做的DA程序就沒用32位2進(jìn)制浮點(diǎn)數(shù)四則運(yùn)算也可以用啊 不明白用32位2進(jìn)制浮點(diǎn)數(shù)四則運(yùn)算的程序比普通10進(jìn)制四則運(yùn)算 好在哪里啊? 請(qǐng)前輩給我講講行嗎? |
---|---|
|
sjm213
有小知識(shí),無大學(xué)問。
級(jí)別: 論壇版主
|
確實(shí)要精確的多啊! 非浮點(diǎn)數(shù)的計(jì)算結(jié)果:DIV K10 K6 D0,那么D0=1,這個(gè)結(jié)果能接受嗎? DIV K100 K51 D0,那么D0=1,這個(gè)結(jié)果能接受嗎? DIV K1000 K501 D0,那么D0=1,這個(gè)結(jié)果能接受嗎? |
---|---|
本帖最近評(píng)分記錄: |
ghost.net
級(jí)別: 家園常客
|
版主說得有理。 |
---|---|
本帖最近評(píng)分記錄: |
中國工控
學(xué)習(xí)
級(jí)別: VIP會(huì)員
|
太精辟了 ,就是這樣的,浮點(diǎn)數(shù)還分單精度和雙精度浮點(diǎn),雙精度浮點(diǎn),精度就更高了。 |
---|---|
|
ytmf0795
級(jí)別: 略有小成
|
呵呵 我的意思當(dāng)然要避開這樣的工式啦 我有做過控制4DA模塊 大概是這樣的 DDIV K1000 K6 D0 DDIV K10000 K51 D0 D0這個(gè)數(shù)值在屏里顯示時(shí) 它可以設(shè)定表達(dá)式為 D0/ 100 啊 一樣可以顯示1。67啊 這樣也比2浮和10實(shí) 轉(zhuǎn)來轉(zhuǎn)去簡略點(diǎn)啊 |
---|---|
|
meng2008
級(jí)別: 家園常客
|
按樓主這種場合,常用的BIN除法就夠用了。 如果除數(shù)或被除數(shù)是浮點(diǎn)數(shù)的話,利用浮點(diǎn)數(shù)運(yùn)算會(huì)比較省力且準(zhǔn)確!當(dāng)然,也可以把除數(shù)或被除數(shù)放大倍數(shù),再用BIN運(yùn)算去解決。 精確相對(duì)而言的,是看需要到小數(shù)點(diǎn)后幾位了哈。。。 |
---|---|
本帖最近評(píng)分記錄: |
luoyingdong
級(jí)別: 略有小成
|
5樓有道理,把數(shù)值乘上100倍再作計(jì)算,精度還能接受。但是這樣一樣會(huì)把事情搞復(fù)雜。 浮點(diǎn)運(yùn)算最好的程序方式是用結(jié)構(gòu)文字 Function Block 來作,程序很簡潔,很容易看懂的。 |
|
---|---|---|
本帖最近評(píng)分記錄:
|
ytmf0795
級(jí)別: 略有小成
|
浮點(diǎn)運(yùn)算最好的程序方式是用結(jié)構(gòu)文字 Function Block 來作??? 什么叫是用結(jié)構(gòu)文字 Function Block 來作啊? 請(qǐng)不吝指教 |
---|---|
|