十进制和二进制换算。vb版本

vb现在都快绝版了吧。。
哈哈,但是我现在的工作用的就是vb。
所以把这个分享出来。
十进制和二进制换算
还有个二进制小数部分换算成十进制小数部分

'十进制装换为二进制
'参数dec十进制的数,BinLen换算的二进制位数
Public Function DecToBin(dec As Double, BinLen As Byte) As String
    
    Dim binStr As String
    Dim a As Double
    Dim i As Integer
    
    Do While dec <> 0
        a = dec Mod 2
        binStr = a & binStr
        dec = dec \ 2
    Loop
    
    For i = 1 To 32 - Len(binStr)
        binStr = "0" & binStr
    Next
    DecToBin = binStr
End Function


'二进制换算为十进制
'参数Bin二进制的数
Public Function BinToDec(Bin As String) As Double
    Dim i As Integer
    Dim s As Integer
    
    s = Len(Bin)
    
    Dim decStr As Double
    
    For i = 1 To s
      decStr = decStr + Val(Mid(Bin, i, 1)) * 2 ^ (s - i)
    Next i
    
    
    BinToDec = decStr
    
End Function

'小数二进制换算十进制
'参数Bin 小数部分二进制数。换算出来是十进制的小数部分
Public Function dBinToDec(Bin As String) As Double
    Dim i As Integer
    Dim s As Integer
    
    s = Len(Bin)
    Dim decStr As Double
    
    For i = 1 To s
      decStr = decStr + Val(Mid(Bin, i, 1)) * 2 ^ (-i)
    Next i
    
    dBinToDec = decStr
    
End Function
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值