亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? comp_arithmetic_dmc.bas

?? 里面有二十一種加密的算法,很好用的哦,大家一定要多多下載啊
?? BAS
字號:
Attribute VB_Name = "Comp_Arithmetic_DMC"


Option Explicit

'This is a 1 run method

Private OutStream() As Byte
Private OutPos As Long
Private OutBitCount As Integer
Private OutByteBuf As Byte
Private Const MaxBits = 24  'at 16 bits precision is not high enough
Private BitsetPreset(255, 7) As Integer
Private IndexPreSet(255, 7) As Integer

Public Sub Compress_ArithMetic_DMC(ByteArray() As Byte)
    Dim InpPos As Long
    Dim LowValue As Long
    Dim HighValue As Long
    Dim RangValue As Long
    Dim MidValue As Long
    Dim Char As Byte
    Dim X As Integer
    Dim Y As Integer
    Dim Bitset As Integer
    Dim Index As Integer
    Dim TopBit As Long
    Dim One(256) As Long
    Dim Zero(256) As Long
    Call Init_Ari_Bit2
    LowValue = 0
    HighValue = (2 ^ MaxBits) - 1
    TopBit = 2 ^ (MaxBits - 1)
    InpPos = 0
    Index = -1
    For X = 0 To 256
        One(X) = 1
        Zero(X) = 1
    Next
    For Y = 0 To 255
        For X = 0 To 7
            BitsetPreset(Y, X) = (Y And (2 ^ (7 - X))) And &HFF
            IndexPreSet(Y, X) = (1 * (2 ^ X)) - 1 + Int(Y / (2 ^ (8 - X)))
        Next
    Next
    Do
        If InpPos > UBound(ByteArray) Then
            Exit Do
        Else
            Char = ByteArray(InpPos)
            InpPos = InpPos + 1
        End If
        For X = 0 To 7
            Bitset = BitsetPreset(Char, X)
            Index = IndexPreSet(Char, X)
'            Bitset = (Char And (2 ^ (7 - X))) And &HFF
'            Index = (1 * (2 ^ X)) - 1 + Int(Char / (2 ^ (8 - X)))
            RangValue = HighValue - LowValue
            MidValue = LowValue + (RangValue * (Zero(Index) / (One(Index) + Zero(Index))))
            If MidValue = LowValue Then MidValue = MidValue + 1
            If MidValue = HighValue - 1 Then MidValue = MidValue - 1
            If Bitset > 0 Then
                LowValue = MidValue
                One(Index) = One(Index) + 1
            Else
                HighValue = MidValue
                Zero(Index) = Zero(Index) + 1
            End If
            If AritmaticRescale = True Then
                If One(Index) > 127 Or Zero(Index) > 127 Then
                    One(Index) = Int(One(Index) / 2) + 1
                    Zero(Index) = Int(Zero(Index) / 2) + 1
                End If
            End If
            Do While (HighValue And TopBit) = (LowValue And TopBit) Or LowValue > HighValue - 255
                If (LowValue And TopBit) = 0 Then
                    Call AddBitsToOutStream(0, 1)
                Else
                    Call AddBitsToOutStream(1, 1)
                End If
                HighValue = (HighValue And (TopBit - 1)) * 2 + 1
                LowValue = (LowValue And (TopBit - 1)) * 2
                If LowValue >= HighValue Then HighValue = (2 ^ MaxBits) - 1
            Loop
        Next
    Loop
    For X = MaxBits - 1 To 0 Step -1
        If (LowValue And 2 ^ X) = 0 Then
            Call AddBitsToOutStream(0, 1)
        Else
            Call AddBitsToOutStream(1, 1)
        End If
    Next
    Do While OutBitCount > 0
        Call AddBitsToOutStream(1, 1)
    Loop
    ReDim ByteArray(OutPos - 1)
    Call CopyMem(ByteArray(0), OutStream(0), OutPos)
End Sub

Public Sub DeCompress_ArithMetic_DMC(ByteArray() As Byte)
    Dim InpPos As Long
    Dim InBitPos As Integer
    Dim LowValue As Long
    Dim HighValue As Long
    Dim RangValue As Long
    Dim MidValue As Long
    Dim Value As Long
    Dim Char As Byte
    Dim X As Integer
    Dim Index As Integer
    Dim EOF_State As Boolean
    Dim TopBit As Long
    Dim One(256) As Long
    Dim Zero(256) As Long
    Call Init_Ari_Bit2
    LowValue = 0
    HighValue = (2 ^ MaxBits) - 1
    TopBit = 2 ^ (MaxBits - 1)
    InpPos = 0
    Value = ReadBitsFromArray(ByteArray, InpPos, InBitPos, MaxBits)
    Index = -1
    For X = 0 To 256
        One(X) = 1
        Zero(X) = 1
    Next
    Do
        Char = 0
        For X = 0 To 7
            Index = (1 * (2 ^ X)) - 1 + Char
            RangValue = HighValue - LowValue
            MidValue = LowValue + (RangValue * (Zero(Index) / (One(Index) + Zero(Index))))
            If MidValue = LowValue Then MidValue = MidValue + 1
            If MidValue = HighValue - 1 Then MidValue = MidValue - 1
            If Value >= MidValue Then
                Char = Char + Char + 1
                LowValue = MidValue
                One(Index) = One(Index) + 1
            Else
                Char = Char + Char
                HighValue = MidValue
                Zero(Index) = Zero(Index) + 1
            End If
            If AritmaticRescale = True Then
                If One(Index) > 127 Or Zero(Index) > 127 Then
                    One(Index) = Int(One(Index) / 2) + 1
                    Zero(Index) = Int(Zero(Index) / 2) + 1
                End If
            End If
            Do While (HighValue And TopBit) = (LowValue And TopBit) Or LowValue > HighValue - 255
                If (LowValue And TopBit) = 1 Then
                    Char = Char
                End If
                If InpPos <= UBound(ByteArray) Then
                    Value = (Value And (TopBit - 1)) * 2 + ReadBitsFromArray(ByteArray, InpPos, InBitPos, 1)
                    HighValue = (HighValue And (TopBit - 1)) * 2 + 1
                    LowValue = (LowValue And (TopBit - 1)) * 2
                    If LowValue >= HighValue Then HighValue = (2 ^ MaxBits) - 1
                Else
                    EOF_State = True
                    Exit Do
                End If
            Loop
            If EOF_State = True Then Exit Do
        Next
        Call AddCharToArray(OutStream, OutPos, Char)
    Loop
    ReDim ByteArray(OutPos - 1)
    Call CopyMem(ByteArray(0), OutStream(0), OutPos)
End Sub

Private Sub Init_Ari_Bit2()
    Dim X As Integer
    ReDim OutStream(500)
    OutPos = 0
    OutBitCount = 0
    OutByteBuf = 0
End Sub

Private Sub AddBitsToOutStream(Number As Long, Numbits As Integer)
    Dim X As Long
    For X = Numbits - 1 To 0 Step -1
        OutByteBuf = OutByteBuf * 2 + (-1 * ((Number And CDbl(2 ^ X)) > 0))
        OutBitCount = OutBitCount + 1
        If OutBitCount = 8 Then
            OutStream(OutPos) = OutByteBuf
            OutBitCount = 0
            OutByteBuf = 0
            OutPos = OutPos + 1
            If OutPos > UBound(OutStream) Then
                ReDim Preserve OutStream(OutPos + 500)
            End If
        End If
    Next
End Sub

'this function will return a value out of the amaunt of bits you asked for
Private Function ReadBitsFromArray(FromArray() As Byte, FromPos As Long, FromBit As Integer, Numbits As Integer) As Long
    Dim X As Integer
    Dim Temp As Long
    For X = 1 To Numbits
        Temp = Temp * 2 + (-1 * ((FromArray(FromPos) And 2 ^ (7 - FromBit)) > 0))
        FromBit = FromBit + 1
        If FromBit = 8 Then
            If FromPos + 1 > UBound(FromArray) Then
                Do While X < Numbits
                    Temp = Temp * 2
                    X = X + 1
                Loop
                FromPos = FromPos + 1
                Exit For
            End If
            FromPos = FromPos + 1
            FromBit = 0
        End If
    Next
    ReadBitsFromArray = Temp
End Function

'this sub will add a char into the outputstream
Private Sub AddCharToArray(Toarray() As Byte, ToPos As Long, Char As Byte)
    If ToPos > UBound(Toarray) Then ReDim Preserve Toarray(ToPos + 500)
    Toarray(ToPos) = Char
    ToPos = ToPos + 1
End Sub


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
天天亚洲美女在线视频| 免费成人在线观看视频| 色综合天天在线| 自拍av一区二区三区| www.久久久久久久久| 亚洲欧美一区二区三区极速播放 | 欧美一区午夜视频在线观看 | 中文字幕一区二区三区四区不卡| 成人av影院在线| 亚洲美女区一区| 日韩一区二区三区免费观看| 久久国产精品一区二区| 国产精品天干天干在线综合| 99久久精品国产麻豆演员表| 亚洲国产欧美在线人成| 日韩欧美综合一区| 99久免费精品视频在线观看| 亚洲综合一区二区| 欧美放荡的少妇| 国产美女视频一区| 一区二区三区在线高清| 国产一区二区久久| 自拍偷拍欧美精品| 国产高清不卡二三区| 一区二区三区精品在线| 日韩欧美美女一区二区三区| 色欲综合视频天天天| 亚洲综合丁香婷婷六月香| 精品日韩欧美在线| 欧美最猛性xxxxx直播| 精品一区二区在线视频| 一区二区欧美国产| 久久久国产一区二区三区四区小说 | 亚洲一区二区视频在线| 国产亚洲精品超碰| 欧美精品一二三区| 色综合一区二区三区| 日本亚洲三级在线| 综合色中文字幕| 欧美大黄免费观看| 欧美日韩精品欧美日韩精品一| 国产专区欧美精品| 免费日韩伦理电影| 一区二区三区欧美| av激情成人网| 日本亚洲一区二区| 91精品国产黑色紧身裤美女| 日韩av一级电影| 五月婷婷久久丁香| 亚洲区小说区图片区qvod| 日韩欧美在线影院| 欧美三级一区二区| 久久国产精品无码网站| 亚洲一区欧美一区| 伊人一区二区三区| 一色桃子久久精品亚洲| 色成年激情久久综合| 国产精品自拍一区| 亚洲一二三四区| 一区二区三区在线观看欧美| 国产欧美一区二区在线| ww亚洲ww在线观看国产| 欧美一区二区美女| 91麻豆精品国产91久久久久 | 日本va欧美va精品| 日韩国产精品久久久| 一区二区三区四区五区视频在线观看 | 亚洲青青青在线视频| 国产欧美视频在线观看| 国产欧美视频在线观看| 久久伊99综合婷婷久久伊| 精品久久久久久久久久久久包黑料 | 国产精品美女www爽爽爽| 国产欧美一区二区精品久导航 | 久久久久国产免费免费| 国产成人免费视| 国产成人av电影在线播放| 亚洲免费av网站| 亚洲同性同志一二三专区| 欧美成人一区二区三区在线观看| 懂色av中文一区二区三区| 一区二区成人在线视频| 亚洲综合视频在线观看| 一区二区在线看| 一区二区三区四区蜜桃| 国产精品美女久久久久久久网站| 欧美激情一区二区三区四区| 国产精品剧情在线亚洲| 国产精品成人一区二区艾草| 中文字幕精品三区| 亚洲欧美日韩一区| 亚洲一区二区三区四区不卡| 肉色丝袜一区二区| 一区二区三区精品| 国产精品久久久久久久浪潮网站| 欧美在线看片a免费观看| 欧美男女性生活在线直播观看| 欧美欧美午夜aⅴ在线观看| 成人av网站在线观看| 日韩成人免费在线| 国产美女在线观看一区| 成人午夜在线免费| 色网站国产精品| 欧美美女视频在线观看| 欧美岛国在线观看| 国产精品高潮呻吟| 亚洲香蕉伊在人在线观| 久久精品国内一区二区三区| 美腿丝袜亚洲三区| www.66久久| 欧美狂野另类xxxxoooo| 国产亚洲欧美日韩在线一区| 69久久夜色精品国产69蝌蚪网| 日本高清不卡在线观看| 日韩免费观看高清完整版| 2欧美一区二区三区在线观看视频| 久久久国际精品| 日韩主播视频在线| 国产一区999| 欧美日韩一区在线| 日韩欧美精品在线视频| 一区二区三区 在线观看视频 | 日本一区二区免费在线| 亚洲欧洲日韩女同| 亚洲成人高清在线| 国产一区亚洲一区| 欧美日韩中文字幕精品| 精品国产1区二区| 亚洲精品在线免费观看视频| 亚洲欧洲av色图| 色综合久久综合网欧美综合网| 国产精品伦理一区二区| 成人涩涩免费视频| 中文一区一区三区高中清不卡| 懂色av中文字幕一区二区三区| 国产欧美日韩在线视频| 大桥未久av一区二区三区中文| 精品欧美乱码久久久久久1区2区 | 日本午夜一本久久久综合| 欧美主播一区二区三区美女| 夜夜嗨av一区二区三区| 欧美性猛片aaaaaaa做受| 亚洲成人动漫在线免费观看| 4438x成人网最大色成网站| 午夜在线成人av| 欧美乱熟臀69xxxxxx| 三级欧美在线一区| 欧美一区二区在线不卡| 日韩不卡在线观看日韩不卡视频| 日韩欧美一级二级| 午夜视黄欧洲亚洲| 欧美一区二区三区小说| 久久99深爱久久99精品| 久久综合九色综合97_久久久| 狠狠色狠狠色合久久伊人| 久久女同互慰一区二区三区| 国产99久久久国产精品| 国产精品久久久久久久岛一牛影视| 成人免费毛片app| 亚洲手机成人高清视频| 欧美婷婷六月丁香综合色| 国产精品美女久久久久av爽李琼| 色天使色偷偷av一区二区| 一区二区不卡在线播放| 91高清视频免费看| 日本特黄久久久高潮| 欧美一区二区久久| 不卡一区二区中文字幕| 亚洲国产视频在线| 久久中文娱乐网| 日本vs亚洲vs韩国一区三区| 久久综合久久99| 欧美在线不卡一区| 国产自产v一区二区三区c| 亚洲精品一二三四区| 日韩一区二区视频| 91一区二区三区在线播放| 日韩电影在线观看电影| 国产精品九色蝌蚪自拍| 91精品国产综合久久久久久久久久 | av一区二区三区四区| 亚洲一区二区av在线| 337p粉嫩大胆色噜噜噜噜亚洲 | 亚洲乱码中文字幕| 91在线精品一区二区| 日韩1区2区日韩1区2区| 欧美国产日韩在线观看| 欧美色手机在线观看| 国产高清精品网站| 亚洲午夜久久久久久久久久久| 久久午夜电影网| 欧美人xxxx| 色综合久久综合| 国产精品亚洲一区二区三区在线 | 亚州成人在线电影| 国产精品久久福利| 久久久久国产一区二区三区四区| 色中色一区二区| 懂色av一区二区三区蜜臀| 蜜桃av一区二区在线观看 |