羅蓋仙 发表于 2013-8-18 12:29:46

十进制转换成二进制的小程序

本帖最后由 羅蓋仙 于 2013-8-18 12:35 编辑



十进制转换成二进制:
#1=181.(欲想转换成2进制的数值)
#101=ABS]
#33=501.(储存到#501~)
WH[#101GE1.]DO1
#[#33]=#101 MOD 2.
#101=FIX[#101/2.]
#33=#33+1.
END1
M0

结果:
#501=1.(低位)
#502=0.
#503=1.
#504=0.
#505=1.
#506=1.
#507=0.
#508=1.(高位)


以下为10进制,想得知#101有几位数的小程序
#101=1234.
#10=1.(用1去比→用10去比→用100去比....)
#30=0.
WH[#101GE#10]DO1
#30=#30+1.
#10=#10*10.
END1
#30=有4位数(#101有4位数)
M0

羅蓋仙 发表于 2013-8-18 13:32:37

本帖最后由 羅蓋仙 于 2013-8-18 13:40 编辑

如果嫌10进制转换成2进制,占了太多变量番号的空间
我把它修改了一下
#1=181.
#101=ABS]
#10=1.
#500=0.
WH[#101GT0.]DO1
#500=#500+[#101 MOD 2.]*#10
#101=FIX[#101/2.]
#10=#10*10.
END1
M0

结果:
#500=10110101.

丹存印才 发表于 2013-8-22 11:22:06

真精神!!!!!!

羅蓋仙 发表于 2013-8-29 18:57:39

回复 4# ois90597

这是我那台湾某网友,我们互相分享讨论,他的写法感覺比我好:
#1=181.
#10=10000000.
#31=FIX]
#32=128.
IF[#31/#32GE2.]THEN#3000=200.
WHILE[#32GE1.]DO1
#33=FIX[#31/#32]
#500=#500+#33*#10
#31=#31-#32*[#33EQ1.]
#32=#32/2.
#10=#10/10.
END1
M30

还是有改良的空间

bruceding 发表于 2013-9-21 22:25:07

回复 2# 羅蓋仙


    精辟

zhangjun 发表于 2014-4-4 00:23:46

不错经典资料,值得学习

wslaoa 发表于 2014-4-4 20:05:03

好久没来了挺不错

getto 发表于 2015-1-8 10:49:17

很好,就是看不懂

ya_blueang 发表于 2015-2-18 16:18:28

學習,謝謝樓主分享

919616 发表于 2015-11-6 10:48:32

good..............
页: [1] 2
查看完整版本: 十进制转换成二进制的小程序