请问有没有将2进制转换成10进制的函数?

0551 2003-10-30 02:11:30
请问有没有将2进制转换成10进制的函数?
...全文
443 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
northwolves 2003-10-30
  • 打赏
  • 举报
回复
我写的,也可以转换二进制小数:
Function bindec(x As String) As Double ' 2 TO 10
Const BINS = "01."
For i = 1 To Len(x)
If InStr(1, BINS, Mid(x, i, 1)) <> 0 Then GoTo OK
MsgBox "NOT A BINARY FORMAT!": Exit Function
Next
OK:
Dim a
a = Split(x, ".")
y = 0
For i = 1 To Len(a(0))
y = y + Mid(a(0), i, 1) * 2 ^ (Len(a(0)) - i)
Next
For i = 1 To Len(a(1))
y = y + Mid(a(1), i, 1) / 2 ^ i
Next
bindec = y
End Function

Private Sub Command1_Click()
MsgBox bindec("101101.11001")
End Sub
jpinglee 2003-10-30
  • 打赏
  • 举报
回复
MSDN中有好多的数值转化函数,去看看,即使没有,自己可以写
leo4587 2003-10-30
  • 打赏
  • 举报
回复
我認為這需要寫代碼,下面是我剛寫的一段,你試試吧!希望對你有幫助。
Private Sub Command1_Click()
Dim lenght As Integer
Dim i As Integer
Dim num As Integer
lenght = Len(Text1.Text)
For i = 1 To lenght
num = num + Mid(Text1.Text, i, 1) * 2 ^ (lenght - i)
Next i
Label1.Caption = num
End Sub
  • 打赏
  • 举报
回复
自己找:
VB函數說明 VB函數用法
絕對值 Abs(number)
傳回陣列範本 Array(arglist)
算字元的ASCII碼 Asc( string)
轉Boolean型態值 CBool( expression )
轉Byte型態值 CByte( expression )
轉Currency型態值 CCur (expression )
轉Date型態的值 CDate (date )
轉 Double 型態的值 CDbl (expression )
轉ASCII碼表示的字元 Chr (charcode)
轉為整數型態 CInt(expression)
轉為長整數型態 Clng (expression )
傳回物件範本 CreateObject (class)
轉為單精度型態 CSng (expression)
轉為字串型態 CStr (expression )
傳回目前系統時間 Date
傳回更改的時間 DateAdd (interval, number, date)
傳回兩日期的間隔 DateDiff (interval,date1,date2)
傳回某時間的部分值 DatePart (interval,date)
轉換某時間Date型態 DateSerial(year, month, day)
傳回陣列內的字串位置 Filter (InputStrings, Value)
傳回Date 型態的值 DateValue(date)
傳回1~31的日期數字 Day(date)
最大整數值 Int (number )
無條件捨去小數 Fix (number)
傳回表示式型式 FormatCurrency(Expression)
傳回日期或時間表示式 FormatDateTime (Date)
傳回數字的表示式 FormatNumber(Expressiom)
傳回百分比的表示式 FormatPercent(Expression)
取回檔案內的物件 GetObject([pathname][,class])
轉為16進位 Hex(number)
傳回時間的時數 Hour(time)
顯示可供輸入的對話窗 inputBox(prompt,......)
傳回搜尋字串的位置 InStr(string,searchstr)
從尾端搜尋字串位置 InstrRev(string,searchstr)
判定變數是否為陣列 IsArray(varname)
判定是否為日期表示式 IsDate(expression)
判定變數內是否有內容 IsEmpty(expression)
判定是否為NULL值 IsNull(expression)
判定是否為數字值 IsNumeric(expression)
傳回一個圖片物件 LoadPicture(picturename)
判定是否為一個變數 IsObject(expression)
字串加入陣列內 Join(list[,delimiter])
轉為小寫字串 LCase(string)
字串取左邊長度 Left(string,ength)
傳回字串長度 Len(string|varname)
傳回自然對數值 Log(number)
去除字串的左邊空白 LTrim(string)
去除字串的右邊空白 RTrim(string)
去除字串的左右邊空白 Trim(string)
傳回指定位置的字串 Mid(string,start[,length])
傳回時間的分鐘 Minute(time)
傳回日期的月份 Month(date)
傳回月份字串 MonthName(month[,abbreviate)
顯示一個訊息窗 MsgBox(prompt,...)
傳回系統日期與時間 Now
轉為八進位數字 Oct(number)
取代部份字串 Replace(string,find,replacewith)
字串取右邊長度 Right(string,ength)
傳回一個隨機數字 Rnd[(number)]
指定字串轉成陣列 Split(expression,...)
傳回使用的Script語言 ScriptEngine
傳回時間的秒數 Second(time)
判斷數字的正負符號 Sgn(number)
傳回弧度數字的Sin值 Sin(number)
產生空白字元字串 Space(number)
算數值的二次方根植 Sqr(number)
比較兩字串 StuComp(string1,string2[,compare])
反過來排列字串 StrReverse(string)
產生重複字元字串 String(number,character)
傳回目前的系統時間 Time
傳回時間Date型態 TimeSerial(hour,minute,second)
傳回含時間的Date型態 TimeValue(time)
傳回變數的資料型態 TypeName(varname)
從尾端傳回陣列小索引 UBound(anayname)
轉為大寫字元 UCase(string)
kmzs 2003-10-30
  • 打赏
  • 举报
回复
应该有!
felix 2003-10-30
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Dim i As Integer, j As String
Dim lResult As Long
j = Trim(Text1.Text)
For i = 1 To (Len(j) - 1)
lResult = (lResult + CInt(Left(j, 1))) * 2
j = Mid(j, 2)
Next i
lResult = lResult + j
MsgBox lResult
End Sub
demo001 2003-10-30
  • 打赏
  • 举报
回复
请问是几位的二进制数啊?

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧