资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

vb.net10进制转 vb 10进制转16进制

VB 中怎么将 十进制转换成十六进制?

VB 中如果要将 一个十进制数转换成十六进制进行输出,可以直接使用一个函数。例如,

创新互联建站2013年至今,先为鄄城等服务建站,鄄城等地企业,进行企业商务咨询服务。为鄄城企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

x=255

print hex$(x)

运行后就会得到输出为:FF

vb 十进制转换成 八进制 二进制原码 二进制补码 二进制反码 程序

VB.NET控制台程序:

Module module3

Sub Main()

Dim i As Integer

Dim num As Integer = -35

Dim R As Integer = 8

Dim arr(33) As Integer

Dim len As Integer

arr = TransToR(num, R)

len = arr(0)

Console.Write(num " 转换成 " R " 进制后:" vbTab)

If (arr(1) = 1) Then

Console.Write("-")

End If

For i = len + 1 To 2 Step -1

Console.Write(arr(i))

Next

Console.WriteLine()

arr = TransToSourceCode(num)

Console.Write(num " 转换成32位二进制源码后:" vbTab)

Console.Write(arr(1))

For i = 32 To 2 Step -1

Console.Write(arr(i))

Next

Console.WriteLine()

arr = TransToReverseCode(num)

Console.Write(num " 转换成32位二进制反码后:" vbTab)

Console.Write(arr(1))

For i = 32 To 2 Step -1

Console.Write(arr(i))

Next

Console.WriteLine()

arr = TransToCompensatoryCode(num)

Console.Write(num " 转换成32位二进制补码后:" vbTab)

Console.Write(arr(1))

For i = 32 To 2 Step -1

Console.Write(arr(i))

Next

Console.WriteLine()

End Sub

'将十进制数num转换为R(2=R=9)进制数,结果存在arr数组中

'arr(0)存储长度, arr(1)存储符号位:1为负,0为正

Function TransToR(ByVal num As Integer, ByVal R As Integer) As Integer()

Dim arr(33) As Integer

arr(0) = 0 '初始长度

'设置符号位

If (num 0) Then

arr(1) = 1

Else

arr(1) = 0

End If

num = Math.Abs(num)

While num 0

arr(0) = arr(0) + 1

arr(arr(0) + 1) = num Mod R

num \= R

End While

Return arr

End Function

'将十进制数num转换为二进制原码

Function TransToSourceCode(ByVal num As Integer) As Integer()

Dim arr(33) As Integer

Dim i As Integer

arr = TransToR(num, 2)

'高位补零

For i = arr(0) + 2 To 32

arr(i) = 0

Next

arr(0) = 32

Return arr

End Function

'将十进制数num转换为二进制反码

Function TransToReverseCode(ByVal num As Integer) As Integer()

Dim arr(33) As Integer

Dim i As Integer

arr = TransToSourceCode(num)

If num = 0 Then

Return arr

End If

'除符号位外各位取反

For i = 2 To 33

arr(i) = 1 - arr(i)

Next

Return arr

End Function

'将十进制数num转换为二进制补码

Function TransToCompensatoryCode(ByVal num As Integer) As Integer()

Dim arr(33) As Integer

Dim i As Integer

Dim c As Integer = 0 '进位

arr = TransToReverseCode(num)

If num = 0 Then

Return arr

End If

'末尾加1

i = 2

arr(i) += 1

Do While True

arr(i) = c + arr(i)

c = arr(i) \ 2

arr(i) = arr(i) Mod 2

i += 1

If c 1 Then

Exit Do

End If

Loop

Return arr

End Function

End Module

VB.NET,八/十六进制转十进制的函数,怎么转?

'此函数用于十进制到二进制

Private Function Bin(Number As Long) As Long

Dim Div_value As String

Do

Div_value = (Number Mod 2) Div_value

Number = Int(Number / 2)

Loop Until Number 2

Bin = Number Div_value

End Function

'此函数用于二进制到十进制

Private Function value_Bin(Number As Long) As Long

Dim Temp_value As Long, Cyc As Long

For Cyc = 0 To Len(Str(Number))

If Cyc = Len(Str(Number)) Then

value_Bin = Temp_value + Val(Mid(Str(Number), Cyc, 1))

Exit For

End If

If Cyc 0 Then Temp_value = (Temp_value + Val(Mid(Str(Number), Cyc, 1))) * 2

Next Cyc

End Function

'====写入以上函数后转值操作:

'十进制到十六进制:Hex(十进制数值)

'十进制到八进制:Oct(十进制数值)

'十进制到二进制:Bin(十进制数值)

'二进制到十进制:value_Bin(二进制数值)

'八进制到十进制:Val("O" 八进制数值)

'十六进制到十进制:Val("H" 十六进制数值)

比如

msgbox DEC_to_BIN(10)

就会返回一个10转换为十进制后的结果

或者简单点就用

VB自带函数:

十进制转八进制:Oct(num)

十六进制转八进制:oct("H" num)

十进制转十六进制:hex(num)

八进制转十六进制:hex("O" num)

十六进制转换为十进制

Dim str As String

str = Text2.Text

Text10.Text = CLng("H" str)

vb.net 把十进制数转成十六进制数的函数有哪些?

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

MsgBox(DEC_to_HEX(255))

End Sub

Public Function DEC_to_HEX(ByVal Dec As Long) As String

Dim a As String

DEC_to_HEX = ""

Do While Dec  0

a = CStr(Dec Mod 16)

Select Case a

Case "10" : a = "A"

Case "11" : a = "B"

Case "12" : a = "C"

Case "13" : a = "D"

Case "14" : a = "E"

Case "15" : a = "F"

End Select

DEC_to_HEX = a  DEC_to_HEX

Dec = Dec \ 16

Loop

End Function


当前标题:vb.net10进制转 vb 10进制转16进制
路径分享:http://cdkjz.cn/article/dogiids.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220