与众不同的进制转换方法 |
| 作者:佚名 来源:csdn 作者: eastunfail 更新:2006-8-25 21:05:35 错误报告 我要投稿 |
|
小弟最近无聊,研究了一下进制转换,发现一般人使用的方法都是用来除一个数的方法得到的,觉得很是没有创意,于是我就凭着我们中国人的聪明以及不屈不饶,刻苦求知的精神,终于得到另外一种独特的方法.
那个方法首先要使用两个Function:
Function bLength(x As Long) As Long '用来得到要转换的数字转换后的二进制长度 bLength = Int(Log(x) / Log(2)) End Function
Function bBit(x As Long, Pos As Long) As String '得到指定位的字符 Dim lTmp As Long lTmp = 2 ^ Pos bBit = IIf((x And lTmp) = lTmp, "1", "0") End Function
以下是主程序: Function DecToBin(x As Long) As String Dim sBuf As String, lLength As Long, lPos As Long sBuf = "" lLength = bLength(x) For lPos = 0 To lLength sBuf = bBit(x, lPos) & sBuf Next DecToBin = sBuf sBuf = "" End Function
x是要转换的Dec,返回值就是转换后的Bin了. 不过只是无聊的时候写的,所以也就没有研究相关的反函数和其它的转换方法.
|
|
| 文章录入:skyuu 责任编辑:skyuu |
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |