Java中的Little Endian和Big Endian(Android)

Java中的Little Endian和Big Endian(Android),第1张

概述我正在使用AndroidStudio构建应用程序,并且在我的项目中,我需要进行很多转换,例如将short/int转换为字节数组.我还希望我的应用程序从使用C语言编码的机器人接收数据,并且该机器人发送的结构中包含很多uint16-32,int16-32….我发现了很多帮助我将字节数组中的属性转换为我的帖

我正在使用Android Studio构建应用程序,并且在我的项目中,我需要进行很多转换,例如将short / int转换为字节数组.我还希望我的应用程序从使用C语言编码的机器人接收数据,并且该机器人发送的结构中包含很多uint16-32,int16-32….
我发现了很多帮助我将字节数组中的属性转换为我的帖子和代码,但是我总是看到人们在谈论little Endian和Big Endian,而我却无法理解它们之间的区别.如果有人可以向我解释….
注意:机器人通过具有TCP协议的Wifi套接字发送数据

解决方法:

little Endian和Big Endian只是指数据结构字节的显示顺序.

想象一下,您有一个由十六进制值0xabcd表示的16位整数.因为8位= 1个字节,所以我们的整数由两个字节ab和cd组成.在Big Endian系统中,最高有效字节位于较低的内存地址中,而在little Endian系统中,我们将其置于较高的字节中.

为了直观地显示这一点,假设我们将整数放在内存地址0处.

在Big Endian系统中,我们的内存如下所示:

Memory address  -> |  0 |  1 |Value           -> | ab | cd |

在little Endian系统中,它看起来像这样:

Memory address  -> |  0 |  1 |Value           -> | cd | ab |

传统上,网络字节顺序是Big Endian.

总结

以上是内存溢出为你收集整理的Java中的Little Endian和Big Endian(Android)全部内容,希望文章能够帮你解决Java中的Little Endian和Big Endian(Android)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1090602.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存