问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎样在vb上将十进制数转换为二进制字符串

发布网友 发布时间:2022-05-01 08:03

我来回答

1个回答

热心网友 时间:2022-06-26 11:47

1、在VB中没有一种所谓的“真正的二进制”,只有long、integer、byte这样的整数。

2、VB中不支持二进制字符串。只支持16进制字符串,需要在前面加前缀"&H"。
比如:CLng("&HFFFF")

3、如果你想将"1010011101"这样的二进制字符串转换为数值,需要自己写一个函数。
下面是我给你写的一个:
Function BinaryValue(ByVal strBin As String) As Long
Dim lngOutValue As Long
Dim bytBytes() As Byte
Dim bytAscii(0 To 255) As Byte
Dim lngBytes_Start As Long
Dim lngBytes_Length As Long
Dim lngBytes_Index As Long
bytAscii(49) = 1
bytBytes() = StrConv(strBin, vbFromUnicode)
lngBytes_Length = UBound(bytBytes)
If lngBytes_Length > 30 Then lngBytes_Start = lngBytes_Length - 30
For lngBytes_Index = lngBytes_Start To lngBytes_Length
lngOutValue = lngOutValue + bytAscii(bytBytes(lngBytes_Index)) * 2 ^ (lngBytes_Length - lngBytes_Index)
Next
BinaryValue = lngOutValue
End Function

BinaryValue函数可以将31位以下的二进制字符串转换为Long类型整数。
比如下面的用法:
MsgBox (BinaryValue("1111111111111111111111111111110"))

4、如果你想获取一个整数的二进制位可以使用下面的函数:
Function BinaryBit(ByVal lngValue As Long, ByVal lngIndex As Long) As Long
BinaryBit = (lngValue \ 2 ^ lngIndex) Mod 2
End Function
lngValue是long类型数值;
lngIndex是二进制位,从0开始计算,最大值是30。第0位是二进制最右边的那个位。
比如5的二进制是"101"
MsgBox BinaryBit(5, 0) 返回1
MsgBox BinaryBit(5, 1) 返回0
MsgBox BinaryBit(5, 2) 返回1

下面演示如何获取&HFF(255)的二进制字符串。
Dim i As Long
Dim s As String
For i = 0 To 30
s = BinaryBit(&HFF, i) & s
Next
MsgBox s
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...分?普通话不好没事吧?我现在东营工作,这边有没有短期的培训... “腾马培训”的公务员面试辅导有实战模拟吗? 北京腾马顺通物流有限公司是骗人的吗?在木樨园那一带 vivonex屏幕是多大的 vivoNEX配置是怎么样的 衣服被染色了怎么能恢复? 描写关于旅行的唯美句子 关于旅行的文艺句子 旅行简短文艺句子出去玩的心情发朋友圈 麻辣捞面怎么做? 南京市有哪些私立高中 求在vb中十进制转换为二进制的代码(附带每一句的意思) VB 十进制转二进制 代码问题 急!! 用VB编程序实现十进制与二进制之间的相互转化. VB编程序实现一个十进制数转换成2进制的数? vb中怎么从十进制转换成二进制? 用VB编程序实现十进制与二进制之间的相互转化。 vb中十进制转换成二进制 VB中十进制转换为二进制的函数是什么? vb 十进制转化为二进制! sqlPrompt5里面没有格式化SQL的功能 在间接代理中,什么是委托人的介入权?什么是第三人的选择权 使用sql prompt时怎么刷新库结构 代理分为哪几类? 请问什么叫间接代理 麻烦举个例子说一下 间接代理的间接代理的特点 直接代理和间接代理,显名代理和隐名代理,它们到底是什么关系? 在代理报关中,直接代理,和间接代理有区别吗,哪个要报关行,承担法律责任 代理报关中直接代理报关和间接代理报关的区别 直接代理和间接代理 直接代理和间接代理是什么意思? vb中如何十进制转换为二进制?? vb实现一个十进制转换二进制的功能,求代码,控件已添加,如图 VB 十进制转二进制 vb中把十进制转换为二进制的程序怎么写 急求 T_T 用VB,输入一个十进制正整数,将其转换为二进制数 vb讲十进制数转为二进制数的函数是什么? VB程序设计:将十进制数转换成二进制或十六进制 vb题目 将十进制转化为二进制??? VB程序十进制转化为八进制、二进制、十六进制(同一个程序里) 明基W1080ST 投影仪怎么样 明基投影仪es7287北京中关村在线,有这个型号吗?多少钱? 如果我卸载钉钉,把手机进行重置。再安装钉钉,那之前数据会在吗? 逸这个字什么意思 逸字什么意思 win10+sql2016 +SQLPrompt7,但是菜单help里没有 Enter Serial Number,这咋破解? 逸是什么含义 我的钉钉年前卸载了,现在重新下载后,里面的信息为什么会没有了? 为什么说逸字不能取名 逸字取名的寓意男孩 逸,这个字代表什么意思?