如何讓C#、VB.NET實現複雜的二進位操作

來源:互聯網
上載者:User

VB.NET和C#屬於進階語言,對二進位位操作的支援不是很好,比如沒有了移位元運算等,用的時候確實很不方便,所以在閑暇之餘我重新封裝了一個用於C#、VB.NET的位操作類庫,通過該類庫可以實現資料移位、迴圈移位、轉換為二進位、將二進位轉換為資料等 

相應的類庫可在我的資源頁面中找到,關於類成員的說明可通過物件瀏覽器查看函數說明

複製代碼 代碼如下:


Imports BitOperatorLibrary.ShiftOperation.CircularShiftOperation
Imports BitOperatorLibrary.ShiftOperation.NormalShiftOperation
Imports BitOperatorLibrary.bitConvert

Module Module1

    Sub Main()
        Console.WriteLine("十六進位數0x2F2E左移一位後的結果為0x{0}。", Hex(_rol_16_(&H2F2E)))
        Console.WriteLine("十六進位數0x2F2E迴圈左移一位後的結果為0x{0}。", Hex(_crol_16_(&H2F2E)))
        Console.WriteLine("十六進位數0x2F2E右移一位後的結果為0x{0}。", Hex(_ror_16_(&H2F2E)))
        Console.WriteLine("十六進位數0x2F2E迴圈右移一位後的結果為0x{0}。", Hex(_cror_16_(&H2F2E)))
        Console.WriteLine("十六進位數0xFE1A2D的二進位字串為{0}。", GetBinaryString(&HFE1A2D))
        Console.WriteLine("十六進位數0xFE1A2D的第8位設定為1後的結果為0x{0}。", Hex(SetBitState(&HFE1A2D, 7, True)))
        Console.ReadKey()
    End Sub

End Module

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.