一般一个16位(双字节)的数据,比如 FF1A (16进制)
那么高位字节就是FF,低位是1A

如果是32位的数据,比如 3F68415B
高位字(不是字节)是3F68
低位字是415B

右边是低位位,左边是高位

C语言中的高位字节和低位字节是什么意思?
通常我们从最高有效位(most significant digit)开始自左向右书写一个数字。在理解有效位这个概念时,可以想象一下你的支票数额的第一位增加1和最后一位增加1之间的巨大区别,前者肯定会让你喜出望外。

计算机内存中一个字节的位相当于二进制数的位,这意味着最低有效位表示1,倒数第二个有效位表示2×1或2,倒数第三个有效位表示2×2×1或4,依此类推。如果用内存中的两个字节表示一个16位的数,那么其中的一个字节将存放最低的8位有效位,而另一个字节将存放最高的8位有效位,见图10.5。存放最低的8位有效位的字节被称为最低有效位字节或低位字节,而存放最高的8位有效位的字节被称为最高有效位字节或高位字节。
高位字节 低位字节
↓--------------------------↓ ↓---------------------------↓

15 14 13 12 11 10 9. 8. 7. 6. 5. 4. 3. 2. 1. 0.

16位和32位的数是怎样存储的

一个16位的数占两个字节的存储空间,即高位字节和低位字节(见10.5中的介绍)。如果你是在纸上书写一个16位的数,你总是会把高位字节写在前面,而把低位字节写在后面。然而,当这个数被存储到内存中时,并没有固定的存储顺序。

如果我们用M和L分别表示高位字节和低位字节,那么可以有两种方式把这两个字节存储到内存中,即M在前L在后或者L在前M在后。把M存储在前的顺序被称为“正向(forward)”或“高位优先(big—endian)”顺序;把L存储在前的顺序被称为“逆向(reverse)”或“低位优先(little—endian)”顺序。

big—endian这个术语的含义是数的“高位(big end)”存储在前,同时这也是对《Gulliver’sTravels》这本书中的一个词的引用,在该书中big—endian一词是指那些从大头开始吃一个煮鸡蛋的人。

大多数计算机按正向顺序存储一个数,Intel CPU按逆向顺序存储一个数,因此,如果试图将基于Intel CPU的计算机连到其它类型的计算机上,就可能会引起混乱。

一个32位的数占4个字节的存储空间,如果我们按有效位从高到低的顺序,分别用Mm,Ml,Lm和Ll表示这4个字节,那么可以有4!(4的阶乘,即24)种方式来存储这些字节。在过去的这些年中,人们在设计计算机时,几乎用遍了这24种方式。然而,时至今天,只有两种方式是最流行的,一种是(Mm,MI,Lm,LD,也就是高位优先顺序,另一种是(Ll,Lm,Ml,Mm),也就是低位优先顺序。和存储16位的数一样,大多数计算机按高位优先顺序存储32位的数,但基于Intel CPU的计算机按低位优先顺序存储32位的数。

高位字节与低位字节简单介绍相关推荐

  1. 关于高位字节与低位字节简洁明了的说明,以及高低字节序转换函数

    一般一个16位(双字节)的数据,比如 FF1A  (16进制) 那么高位字节就是FF,低位是1A 如果是32位的数据,比如  3F68415B 高位字(不是字节)是3F68 低位字是415B 右边是低 ...

  2. java 二进制 2个字节 高位 低位_高位字节、低位字节

    一般一个16位(双字节)的数据,比如 FF1A  (16进制) 那么高位字节就是FF,低位是1A 如果是32位的数据,比如  3F68415B 高位字(不是字节)是3F68 低位字是415B 右边是低 ...

  3. 获取WORD的高位字节和低位字节

    在WinDef.h中有这样两组宏定义: #define LOBYTE(w) ((BYTE)(((DWORD_PTR)(w)) & 0xff)) #define HIBYTE(w) ((BYTE ...

  4. java 二进制 2个字节 高位 低位_高位字节,低位字节应该怎么理解

    一般一个16位(双字节)的数据,比如 FF1A (16进制) 那么高位字节就是FF,低位是1A 如果是32位的数据,比如 3F68415B 高位字(不是字节)是3F68 低位字是415B 右边是低位位 ...

  5. Intel 64/x86_64/IA-32/x86处理器 - 指令格式(6) - 8086/16位指令位移量字节/立即数字节

    第三-六字节(BYTE3-BYTE6) 这4个字节是指令的可选字节,通常用来指示存储器操作数的位移量,和/或立即操作数的值. 位移量字节可以是单字节或者双字节.只要有可能,程序语言翻译器(例如汇编器) ...

  6. 计算机网络——网络字节序(大端字节序(Big Endian)\小端字节序(Little Endian))

    网络字节序 网络字节序 1.网络字节序 (Network Byte Order)和本机转换 2.字节序转换函数 网络字节序 1.网络字节序 (Network Byte Order)和本机转换 1.大端 ...

  7. java中shot占几个字节_Java 占用字节数

    数据类型 大小(二进制位数) 范围 默认值 byte(字节) 8 -128 - 127 0 shot(短整型) 16 -32768 - 32768 0 int(整型) 32 -2147483648-2 ...

  8. 高位字节 低位字节_所有字节从何而来?

    高位字节 低位字节 by Colt McAnlis 通过Colt McAnlis 所有字节从何而来? (Where do all the bytes come from?) Great questio ...

  9. 大小端高位低位字节的理解

    字节高低位: 一般左边为高位 右边为低位(这个高低来自于人类的阅读习惯,数字从左向右,表示由大到小) 一般一个16位(双字节)的数据,比如 FF1A (16进制) 那么高位字节就是FF,低位是1A 如 ...

最新文章

  1. CSP 201909-2 小明种苹果(续)Python实现+详解
  2. R语言偏相关或者部分相关性系数计算实战:通过拟合两个回归模型、或者pysch包计算偏相关系数(Partial Correlation)、通过方差分析获得偏相关系数的F统计量(偏F检验、二型检验)
  3. 跟着 Event loop 规范理解浏览器中的异步机制
  4. 监控整页,非AJAX,要求通知
  5. Flask框架项目实例:**租房网站(二)
  6. Kali Linux工具文档翻译计划
  7. python背诵技巧_python如何记忆方法
  8. Java基础学习总结(66)——配置管理库typesafe.config教程
  9. 深度学习---循环神经网络RNN详解(LSTM)
  10. Flutter 移动端屏幕适配方案和制作
  11. jquery queue ajax,插件 jQuery ajaxQueue 中文API文档
  12. 微信小程序富文本去除首行缩进样式_小程序富文本处理wxParse
  13. php 真太阳时间修正,北京时间与真太阳时以及换算方法!
  14. 西安北邮html5,西安北邮在线菜鸟的IT梦,给我一个支点,我就能撬动地球
  15. jike2012年5月实习题
  16. 时间与相关类型(2) - TDate、TTime、TTimeStamp
  17. layui表格时间显示格式
  18. View补间动画Animation运行原理
  19. linux系统微信登录失败,在Manjaro系统登陆微信提示“默认保存位置不能使用”的解决...
  20. 简单OR复杂?机器学习专家为你解密企业风险量化模型

热门文章

  1. 嵌入式 Linux 入门 环境篇(二、安装虚拟机 — 体验 Ubuntu 22.04)
  2. vs2013如何调用监视窗口实现调试(如何打断点、逐步调试、逐过程调试、退出调试、条件调试)
  3. 软件设计师:07-法律法规与标准化与多媒体基础
  4. MATLAB中运动造成的图像模糊
  5. 量化噪声的大小与什么成正比_什么叫 量化噪声?什么叫 量化白噪声?
  6. 夜曲编程python_夜曲编程app免费版下载-百词斩夜曲编程下载v1.0.0安卓版-西西软件下载...
  7. 系统集成都考什么,需要注意什么
  8. MySQL系列4—数据库安全性
  9. udp客户端与服务器端模型_客户端-服务器模型
  10. iphone文件访问ftp服务器,ipad ftp服务器 iPhone/iPad访问FTP服务器设置步骤