常用的字节序
Little endian:将低序字节存储在起始地址。例如一个4字节的值为0x1234567的整数与高低字节对应关系:
01 23 45 67
Byte3 Byte2 Byte1 Byte0
将在内存中按照如下顺序排放:
内存地址序号 字节在内存中的地址 16进制值
0x03 Byte3 01
0x02 Byte2 23
0x01 Byte1 45
0x00 Byte0 67
Big endian:将高序字节存储在起始地址。例如一个4字节的值为0x1234567的整数与高低字节对应关系:
01 23 45 67
Byte3 Byte2 Byte1 Byte0
将在内存中按照如下顺序排放:
内存地址序号 字节在内存中的地址 16进制值
0x03 Byte0 67
0x02 Byte1 45
0x01 Byte2 23
0x00 Byte3 01
网络字节序
网络字节顺序是TCP/IP中规定好的一种数据表示格式,它与具体的CPU类型、操作系统等无关,从而可以保证数据在不同主机之间传输时能够被正确解释。网络字节顺序采用big endian排序方式。
如果通信的一方是JAVA程序,一方是C/C++程序时,则需要在C/C++一侧使用以上几个方法进行字节序的转换,而JAVA一侧,则不需要做任何处理,因为JAVA字节序与网络字节序都是BIG-ENDIAN,只要C/C++一侧能正确进行转换即可(发送前从主机序到网络序,接收时反变换)。如果通信的双方都是JAVA,则根本不用考虑字节序的问题了。
分享到:
相关推荐
举例而言,有一个4字节的数据0x01020304,要存储在内存中或文件中编号0~3字节的位置,两种字节序的排列方式分别如下:Big Endian 低地址
主要介绍了Java整型数与网络字节序byte[]数组转换关系,结合实例形式归纳整理了java整型数和网络字节序的byte[]之间转换的各种情况,需要的朋友可以参考下
这是一个采用RTP协议进行网络实时传输的java文件,你既可以传输话筒,摄像头的实时数据,也可以传输音视频文件,还可以传输网上的资源文件。
2.3.7 java平台实现中的bug 2.3.8 测试 2.4 平台无关的七个步骤 2.5 平台无关性的策略 2.6 平台无关性和网络移动对象 2.7 资源页 第3章 安全 3.1 为什么需要安全性 3.2 基本沙箱 3.3 类装载器...
Java程序(后缀为java的文件)在Java平台上被编 译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台 的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。 7、Java语言是可...
10.还原4个字节的网络字节序recoverNetworkBytesOrder 11.解密完之后是一个Sring类型的xml字符串,还需要在java中解析xml元素 12.其他更多内容可以查看本人博客中关于微信服务(公众)号的开发 13.有不明白的可以...
杂性,同时提供对现有应用稈序集成强有力支持,完全支持 Entcrprise java beans,有良 好的向导攴持打包和部署应用,添加了目录攴持,增强了安全机制,提高了性能 JE是对标准版进行功能扩展,提供一系列功能,用来解决进行...
除了java语言具有的许多安全特性以外,java对通过网络下载的类具 有一个安全防范机制(类classloader),如分配不同的名字空间以防替代本地的同名类 、字节代码检查,并提供安全管理机制(类securitymanager)让java...
该消息具有以下结构: 8 位常量 -- 0x01(“相对”命令) 16 位有符号整数,网络字节序 -- R 偏移量16 位有符号整数,网络字节序 -- G 偏移量16 位有符号整数,网络字节序 -- B 偏移量偏移字段为 16 位以备将来使用...
作业2:将数据从小字节序转换为大字节序,为主机到网络和网络到主机的交互做准备。 将数字翻转为二进制。 更多信息 XOR触发器:XOR功能 嵌入式系统最终项目 语言:C 使用[STM32F4发现板微控制器板],最终项目包括...
基于java tcp socket通信的拆包和装包源码 TCP、UDP的区别 TCP面向连接,UDP是无连接的,即发送数据之前不需要建立连接 TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;...
� Google 提供了一套 Java 核心包 (J2SE 5,J2SE 6) 的有限子集,尚不承诺遵守 Java 任何 Java 规范 , 可能会造 成J ava 阵营的进一步分裂。 � 现有应用完善度不太够,需要的开发工作量较大。--------------------...
基于java tcp socket通信的拆包和装包源码 netty-im-exercise IO 编程 传统的IO模型中,每个连接创建成功之后就需要一个线程来维护,每个线程包含一个 while 死循环, 1w 个连接对应 1w 个线程。就会有 1w 个 while ...
译者序 第一部分 概 述 第1章 引言 1 1.1 早期的路由功能 2 1.2 ATM与IP 4 1.3 IP交换 6 1.4 路由器IP交换 8 1.5 一个IP交换的标准 9 1.6 结论 10 第2章 TCP/IP、寻址和选路 12 2.1 TCP/IP的历史 12 2.2 TCP/IP体系...
EasyRpc EasyRpc是基于Netty,ZooKeeper和ProtoStuff开发的一个简单易用,...理解字节序[J / OL]。阮一峰的网络日志,2016-11-22。 [2]猿码道。聊聊Linux五种IO模型[J / OL]。简书,2016.05.18。 [3]猿码道。聊聊同步,
18.2 在 C #代码中调用 C++和 VB 编写的组件 .240 18.3 版 本 控 制 .249 18.4 代 码 优 化 .252 18.5 小 结 .254 第五部分 附 录 .255 附录 A 关 键 字.255 附录 B 错 误 码.256 附录 C .Net 名字空间...