标题:二进制的数字怎么获取?
只看楼主
琅拿度
Rank: 1
等 级:新手上路
帖 子:148
专家分:5
注 册:2016-4-7
结帖率:84.62%
已结贴  问题点数:20 回复次数:4 
二进制的数字怎么获取?
我想用二进制表示数字,该用什么命令?比如:

十进制0,二进制是0
十进制1,二进制是1
十进制2,二进制是10
十进制3,二进制是11
十进制4,二进制是100
十进制5,二进制是101
....

请问有这样的命令吗?


搜索更多相关主题的帖子: 获取 命令 十进制 数字 二进制 
2022-11-05 09:30
琅拿度
Rank: 1
等 级:新手上路
帖 子:148
专家分:5
注 册:2016-4-7
得分:0 
找到方法了,目前好像好用的方法只是瓜神的 myfll

?"二进制:"+NumConver(5,2)

应该没有更好的方法了吧
2022-11-05 10:31
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:10 
程序代码:
FOR i=0 TO 255
    ? NumToBin(i)
ENDFOR

FUNCTION NumToBin(num)
    LOCAL i,num,bin
    num = BITAND(num,0xFFFFFFFF)
    bin = ""
    FOR i=31 TO 0 STEP -1
        bin = bin + TRANSFORM(BITAND(BITRSHIFT(num,i),1))
    ENDFOR
    RETURN bin
ENDFUNC
2022-11-05 11:14
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:54
帖 子:802
专家分:1914
注 册:2015-12-30
得分:10 
以下是引用琅拿度在2022-11-5 10:31:50的发言:

找到方法了,目前好像好用的方法只是瓜神的 myfll

?"二进制:"+NumConver(5,2)

应该没有更好的方法了吧


已经这样了,还要怎么样呢?
2022-11-05 14:14
sam_jiang
Rank: 8Rank: 8
等 级:贵宾
威 望:10
帖 子:542
专家分:781
注 册:2021-10-13
得分:0 
我也pose段代码,简单实用
程序代码:
PARAMETERS num
LOCAL nanswer,nremainder,creturn
creturn=""
DO WHILE .t.
    nanswer=INT(num/2)
    nremainder=MOD(num,2)
    IF nanswer>1
        num=nanswer
        creturn=TRANSFORM(nremainder)+creturn
        loop
    ELSE 
        IF nanswer<1
            creturn=TRANSFORM(nremainder)+creturn
        ELSE 
            creturn=TRANSFORM(nanswer)+TRANSFORM(nremainder)+creturn
        ENDIF
        exit
    ENDIF
ENDDO

creturn=PADL(creturn,32,"0")

RETURN creturn    
2022-11-06 12:18



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-510551-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.091885 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved