C# 中大端序與小端序

JerryMouseLi發表於2020-11-17

C# 中大端序與小端序

        static void Main(string[] args)
        {
            uint value = 0x12345678;
            Console.WriteLine("原始位元組序:0x12345678");
            byte[] bigLittleEndian = BitConverter.GetBytes(value);   //得到小端位元組序陣列
            //低地址存高位為大端序
            if (bigLittleEndian[0] == 0x12)
            {
                Console.WriteLine("C#在Windows中是大端序儲存");
            }
            //低地址存低位為小端序
            else if (bigLittleEndian[0] == 0x78)
            {
                Console.WriteLine("C#在Windows中小端序儲存");
            }

            Console.WriteLine("小端位元組序:"+BitConverter.ToString(bigLittleEndian)+ "低地址存低位元組");
            Array.Reverse(bigLittleEndian);   //反小端序陣列轉成大端。
            Console.WriteLine("大端位元組序:" + BitConverter.ToString(bigLittleEndian)+ "低地址存高位元組");
        }

執行結果

而modbus中的Data的是大端序,即低地址存高位元組符合網路標準位元組序。


版權宣告:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處連結和本宣告。 本文連結:https://www.cnblogs.com/JerryMouseLi/p/13977500.html

相關文章