当前位置: 首页 > news >正文

湛江网站制作费用网站收录提交

湛江网站制作费用,网站收录提交,网站建设产业pest分析,视频网站的防盗链是怎么做的1 大端、小端字节序 术语“大端”和“小端”表示多个字节值的哪一端#xff08;小端或大端#xff09;存储在该值的起始地址。 大端#xff1a;将高序字节存储在起始地址#xff0c;这称为大端#xff08;big-endian#xff09;字节序小端#xff1a;将低序字节存储在…1 大端、小端字节序 术语“大端”和“小端”表示多个字节值的哪一端小端或大端存储在该值的起始地址。 大端将高序字节存储在起始地址这称为大端big-endian字节序小端将低序字节存储在起始地址这称为小端little-endian字节序 为什么要有大端、小端字节序多麻烦统一使用大端字节序不是更方便吗 计算机电路先处理低位字节效率比较高因为计算都是从低位开始的。所以计算机的内部处理都是小端字节序。但是人类还是习惯读写大端字节序。所以除了计算机的内部处理其他的场合几乎都是大端字节序比如网络传输和文件储存。 来个实例要不然实在记不住。 操作系统的字节序一般是和处理器架构有关系的具体来说 小端序: x86、MOS Technology 6502、Z80、VAX、PDP-11等处理器大端序: Motorola 6800、Motorola 68000、PowerPC 970、System/370、SPARC除V9外等处理器另外 ARM、PowerPC除PowerPC 970外、DEC Alpha、SPARC V9、MIPS、PA-RISC及IA64的字节序是可配置的。 2 网络字节序、主机字节序 主机字节序不同的机器主机字节序不相同与CPU设计有关数据的顺序是由cpu决定的而与操作系统无关。我们把某个给定系统所用的字节序称为主机字节序host byte order。比如x86系列CPU都是little-endian的字节序。 正是由于这个原因不同体系结构的机器之间无法通信,所以要转换成一种约定的数序,也就是网络字节顺序。 网络字节序网络字节序是TCP/IP中规定好的一种数据表示格式它与具体的CPU类型、操作系统等无关从而可以保证数据在不同主机之间传输时能够被正确解释。网络字节序采用大端(big endian)排序方式。 3 网络字节序与主机字节序之间转换 3.1 C/C 头文件netinet/in.h 转换函数htons(), ntohs(), htons()htonl()htons和ntohs完成16位无符号数的相互转换htonl和ntohl完成32位无符号数的相互转换。在使用little endian的系统中这些函数会把字节序进行转换 在使用big endian类型的系统中这些函数会定义成空宏3.2 Java 首先声明Java虚拟机JVM的规范并没有明确要求使用大端序或小端序来表示多字节数据类型。 然而Java的DataInput和DataOutput接口确实规定了使用大端序网络字节序。具体原因我认为有如下几点 一致性和跨平台兼容性 Java的设计原则之一是“一次编写到处运行”。为了确保这一点Java选择了一个确定的字节序即大端序使得Java程序的数据读取和写入在所有平台上都具有一致性。 网络字节序 在网络传输中大端序通常被认为是网络字节序。因为Java最初是为网络应用设计的想想Java的口号“The network is the computer.”所以选择网络字节序作为默认的字节序是合理的。 与大多数网络协议的兼容性 许多早期的网络协议例如IP、TCP、UDP都使用大端序。由于Java希望与这些协议兼容因此采用大端序作为默认设置也是有道理的。 直观性 对于人类来说大端序的表示方式更为直观。例如数字 0x12345678 在大端序中的表示方式是 12 34 56 78这与我们的阅读习惯相符。 作者程序员_可乐 https://www.bilibili.com/read/cv25882429/ 出处bilibili Java设置大小端 public class HelloEndian {public static void main(String[] args) {ByteBuffer b ByteBuffer.wrap(new byte[4]);b.order(ByteOrder.BIG_ENDIAN);b.putInt(0x01020304);System.out.println(Big-Endian: Arrays.toString(b.array()));b ByteBuffer.wrap(new byte[4]);b.order(ByteOrder.LITTLE_ENDIAN);b.putInt(0x01020304);System.out.println(Little-Endian: Arrays.toString(b.array()));}}在用C/C写通信程序时在发送数据前务必用htonl和htons去把整型和短整型的数据进行从主机字节序到网络字节序的转换而接收数据后对于整型和短整型数据则必须调用ntohl和ntohs实现从网络字节序到主机字节序的转换。 如果通信的一方是JAVA程序、一方是C/C程序时则需要在C/C一侧使用以上几个方法进行字节序的转换而JAVA一侧则不需要做任何处理因为JAVA字节序与网络字节序都是BIG-ENDIAN只要C/C一侧能正确进行转换即可发送前从主机序到网络序接收时反变换。如果通信的双方都是JAVA则根本不用考虑字节序的问题了。 转载链接 Java 的字节序讨论
http://www.zqtcl.cn/news/522346/

相关文章:

  • 深圳网站建设黄浦网络 技术差做网站的怎么跑业务
  • 青岛崂山区网站建设广东企业网站建设多少钱
  • 男女做那个的小视频网站韩国儿童才艺网站建设模板
  • 餐饮品牌网站建设淮北论坛最新招聘
  • 给客户做网站网站自动适应屏幕
  • 人力资源培训与开发什么是网站优化
  • 制作 网站 盈利农村自建房设计图一层平房
  • 佛山住房和城乡建设厅网站wordpress图片外链转内链
  • 海东高端网站建设价格wordpress侧边栏淘宝客
  • 网站功能建设中页面wordpress让投稿
  • 学校网站 asp网站结构方面主要做哪些优化
  • 深圳做网站(信科网络)做网站需要多少资金
  • 做网站实例教程网站图片的作用
  • 网站建设展板营销渠道的三个类型
  • 用php做视频网站有哪些十大免费logo设计
  • 网站建设对于网络营销的意义微信购物商城
  • 基于个性化推荐的电商网站设计与实现网站 用户体验的重要性
  • 怎么用ajax做电商网站企业网查询是什么
  • 海淀企业网站建设张店学校网站建设公司
  • 专业微网站开发做购物网站怎么赚钱
  • 怎样做酒店网站ppt什么是企业网络营销平台
  • 科技部网站改版方案济南众筹网站建设
  • 中国城乡与住房建设部网站电子商务公司名字推荐
  • 设计参考网站有哪些wordpress 支付宝免签
  • 网站关键词排名优化应该怎么做外包加工网缝纫机外放加工活
  • 电影网站建设模板从传播的角度
  • 北京建网站的公司广州冼村和猎德村哪个最有钱
  • 成都网站建设有限公司济南j建设网
  • 一家网站建设公司需要什么资质互联网网站模块
  • 网站开发php支付接口网站平台建设缴纳什么税