zoukankan      html  css  js  c++  java
  • 16进制转二进制、八进制

    ' 用途:将二进制转化为八进制
    ' 输入:Bin(二进制数)
    ' 输入数据类型:String
    ' 输出:BIN_to_OCT(八进制数)
    ' 输出数据类型:String
    ' 输入的最大数为2147483647个字符
    Public Function BIN_to_OCT(ByVal Bin As String) As String
        Dim i As Long
        Dim H As String
        If Len(Bin) Mod 3 <> 0 Then
            Bin = String(3 - Len(Bin) Mod 3, "0") & Bin
        End If
        
        For i = 1 To Len(Bin) Step 3
            Select Case Mid(Bin, i, 3)
                Case "000": H = H & "0"
                Case "001": H = H & "1"
                Case "010": H = H & "2"
                Case "011": H = H & "3"
                Case "100": H = H & "4"
                Case "101": H = H & "5"
                Case "110": H = H & "6"
                Case "111": H = H & "7"
            End Select
        Next i
        While Left(H, 1) = "0"
            H = Right(H, Len(H) - 1)
        Wend
        BIN_to_OCT = H
    End Function
    
    ' 用途:将十六进制转化为二进制
    ' 输入:Hex(十六进制数)
    ' 输入数据类型:String
    ' 输出:HEX_to_BIN(二进制数)
    ' 输出数据类型:String
    ' 输入的最大数为2147483647个字符
    Public Function HEX_to_BIN(ByVal Hex As String) As String
        Dim i As Long
        Dim B As String
        
        Hex = UCase(Hex)
        For i = 1 To Len(Hex)
            Select Case Mid(Hex, i, 1)
                Case "0": B = B & "0000"
                Case "1": B = B & "0001"
                Case "2": B = B & "0010"
                Case "3": B = B & "0011"
                Case "4": B = B & "0100"
                Case "5": B = B & "0101"
                Case "6": B = B & "0110"
                Case "7": B = B & "0111"
                Case "8": B = B & "1000"
                Case "9": B = B & "1001"
                Case "A": B = B & "1010"
                Case "B": B = B & "1011"
                Case "C": B = B & "1100"
                Case "D": B = B & "1101"
                Case "E": B = B & "1110"
                Case "F": B = B & "1111"
            End Select
        Next i
        While Left(B, 1) = "0"
            B = Right(B, Len(B) - 1)
        Wend
        HEX_to_BIN = B
    End Function
    
    ' 用途:将十六进制转化为八进制
    ' 输入:Hex(十六进制数)
    ' 输入数据类型:String
    ' 输出:HEX_to_OCT(八进制数)
    ' 输出数据类型:String
    ' 输入的最大数为2147483647个字符
    Public Function HEX_to_OCT(ByVal Hex As String) As String
        Dim Bin As String
        Hex = UCase(Hex)
        Bin = HEX_to_BIN(Hex)
        HEX_to_OCT = BIN_to_OCT(Bin)
    End Function
    
  • 相关阅读:
    Spring Boot+Vue前后端分离(1):准备环境 +项目启动
    Git使用SSH协议clone项目及SSH简介
    Intelij ideas windows版本快捷键整理
    Spring Boot配置—— yml 配置map
    Nginx配置——多站点配置
    String分割
    Spring日志处理——logger占位符
    Java缓存经验
    maven项目——maven跳过单元测试maven.test.skip和skipTests的区别
    Java工具类——Hutool Java
  • 原文地址:https://www.cnblogs.com/lbnnbs/p/4784839.html
Copyright © 2011-2022 走看看