根据cpu的不同我们可以把主机字节序在内存中存储的顺序叫做主机序,也就是我们常说的,大端机和小端机。我们经常看到的有两种:

1.小端机(内存中以小端序存储的机器);将低字节序存储在开始的地址(及内存较小的内存)

2.大端机(内存中以大端序存储的机器):将高字节序存储在开始的的地址

举个例子:我们将内存从左到右排列:在内存中存放0x01020304

2000     2001    2002     2003

小 : 04             03         02           01

大: 01               02         03          04

(我们熟悉的x86系列的cpu都是小端序)

网络字节序就不一样了,它是tcp/ip中规定好的一种表示数据的格式,没有什么大端小端之分。跟cpu和操作系统都没关系。只是为了保证数据在不同的操作系统之间能够正确的传递共享。网络字节序是用的大端序模式。所以在我们用的小端机中如果伴随着信息的传递,就会有大端序,小端序之间的转换。当然这都是系统内部的好函数自己来完成的。

转载于:https://www.cnblogs.com/MrZHj/p/4463218.html

主机字节序和网络字节序(大端序,小端序,网络序)相关推荐

  1. 网络传输大端序_大端、小端与网络字节序

    大端(Big-Endian),小端(Little-Endian)以及网络字节序的概念在编程中经常会遇到.网络字节序(Network Byte Order)一般是指大端(Big-Endian,对大部分网 ...

  2. Java中的大端和小端

    Java整型的字节序是() A.Little-Endian(小端) B.Big-Endian(大端) C.由运行程序的CPU决定 D.由编译程序的CPU决定 对于大小端,我估计肯定有很多开发人员跟我一 ...

  3. Java中大端、小端和>>运算符

    下面对java中的大端.小端和>>运算符进行整理记录. 字节序,指多字节数据在计算机内存中存储或者网络传输时各字节的存储顺序,有大端和小端两种方式: 大端:指高位字节存放在内存的低地址端, ...

  4. java 为什么用大端_Java中的大端和小端

    Java整型的字节序是() A.Little-Endian(小端) B.Big-Endian(大端) C.由运行程序的CPU决定 D.由编译程序的CPU决定 对于大小端,我估计肯定有很多开发人员跟我一 ...

  5. 网络通信时字节序转换原理与网络字节序、大端和小端模式 .

    引言:在进行网络通信时是否需要进行字节序转换? 相同字节序的平台在进行网络通信时可以不进行字节序转换,但是跨平台进行网络数据通信时必须进行字节序转换.原因如下:网络协议规定接收到得第一个字节是高字节, ...

  6. 网络通信之 字节序转换原理与网络字节序、大端和小端模式

    一.在进行网络通信时是否需要进行字节序转换? 相同字节序的平台在进行网络通信时可以不进行字节序转换,但是跨平台进行网络数据通信时必须进行字节序转换. 原因如下:网络协议规定接收到得第一个字节是高字节, ...

  7. 大端模式小端模式 主机序网络序

    1. 主机序 不同的CPU有不同的字节序类型这些字节序是指整数在内存中保存的顺序,这个叫做主机序.最常见的有两种: 1.         Little endian:将低序字节存储在起始地址. 即小端 ...

  8. 大端模式小端模式、主机序网络序、入栈地址高低问题

    一.大端模式&小端模式 所谓的"大端模式",是指数据的低位(就是权值较小的后面那几位)保存在内存的高地址中,而数据的高位,保存在内存的低地址中,这样的存储模式有点儿类似于把 ...

  9. 大端和小端传输字节序

    大端和小端 在计算机中是以字节为单位,每一个地址对应一个字节,一个字节8bit.在C中,除了8bit的char以外,还有16bit的short,32位的int,64位long,当然具体要由编译器决定, ...

  10. 网络字节码、本地字节码(大端,小端)

    大端模式和小端模式的起源 关于大端小端名词的由来,有一个有趣的故事,来自于Jonathan Swift的<格利佛游记>:Lilliput和Blefuscu这两个强国在过去的36个月中一直在 ...

最新文章

  1. python爬虫入门-Python 爬虫从入门到进阶之路(一)
  2. 程序员在囧途之软件投标实战
  3. 操作系统(三十三)内存管理
  4. java 2wei shuzu_JavaScript 2维数组(JavaScript 2 dimension array)
  5. mysql 执行报错及解决方法 Multi-statement transaction required more than ‘max_binlog_cache_size‘
  6. JS 判断一个字符串是否包含在一个数组中
  7. 【Netty】Netty之Bootstrapping
  8. mysql数据库相关操作
  9. 2011年计算机控制期末,2011计算机控制技术期末复习题详解
  10. SAP License:财务流程-新
  11. R 语言从Github上安装R语言的程序包
  12. Scrum 敏捷项目管理
  13. 论文阅读《Language Models are Unsupervised Multitask Learners》
  14. R 实战学生成绩描述分析
  15. 设置eMMC和DDR的工作频率
  16. 在腾讯轻量云上搭建 CS:GO 服务器
  17. FPGA:实现快速傅里叶变换(FFT)算法
  18. MLY翻译 -- 3.Prerequisites and Notation
  19. Grunt视频-佟刚-专题视频课程
  20. WordPress BuddyPress 越权RCE漏洞复现(CVE-2021-21389)

热门文章

  1. PAT (Basic Level) Practice1013 数素数
  2. Java Collection框架入门
  3. Vmware虚拟机集群设置静态ip
  4. 07-0.部署 worker 节点
  5. 命令式编程面向算法vs声明式编程面向描述
  6. 【火炉炼AI】机器学习042-NLP文本的主题建模
  7. mysql:mysql安装及一些配置和图形界面介绍
  8. 2018 计蒜之道 初赛 第一场
  9. WPF Invoke与BeginInvoke的区别
  10. MySQL入门第三天(下)——存储过程与存储引擎