首页 > 其他分享 >字节序、大小端

字节序、大小端

时间:2024-01-05 16:14:42浏览次数:28  
标签:小端 存储 字节 buffer 二进制 大小 低位

机器存储方式根据字节序分为大端存储和小端存储。字节序,顾名思义,是指多个字节间的排列顺序。
举个栗子
存储数16进制0X12345678占了4个字节,从左到右是二进制的高位到低位。1234就是高位,5678就是低位(字节高低位,也可以叫做二进制的高低位)
数据存储在内存中,需要先划分一个区域给数据保存buffer[0]、buffer[1]、buffer[2]、...,其中0就是低地址,2就是高地址

二进制的低位存储在内存的高位,二进制的高位存储在内存的低位,称之为大端存储
二进制的低位存储在内存的低位,二进制的高位存储在内存的高位,称之为小端存储

大端存储
buffer[3] 0X78
buffer[2] 0X56
buffer[1] 0X34
buffer[0] 0X12

小端存储
buffer[3] 0X12
buffer[2] 0X34
buffer[1] 0X56
buffer[0] 0X78

字节序按应用场景分为网络字节序、主机字节序
网络字节序是大端字节序,是确定的
主机字节序由CPU架构决定,可能是小端、也可能是大端

那么,为什么要区分大小端呢? 计算机电路先处理低位字节,效率比较高,因为计算都是从低位开始的,所以,计算机的内部处理都是小端字节序。
而大端序存储,由于符号位在高位,因此对于数据正负或大小的判断也就方便许多。另外,大端序也更符合人们的读写习惯。所以,除了计算机的内部处理,其他的场合几乎都是大端字节序,比如网络传输和文件储存。

标签:小端,存储,字节,buffer,二进制,大小,低位
From: https://www.cnblogs.com/whoiszhangben/p/17947474

相关文章

  • 如何不是用 width 和 height 控制 svg 的渲染大小?
    除了使用width和height属性控制SVG的渲染大小外,还可以使用以下方法:使用CSS样式:可以通过设置CSS的width和height属性来控制SVG的渲染大小。例如,设置SVG元素的样式为width:100px;height:100px;。使用viewBox属性:viewBox属性定义了SVG的可视区域,在该区域内进行缩放和裁剪。可以通过......
  • 不愧是字节,这薪资....
    字节跳动按照岗位职级对工资区间进行划分,看看下面这个内部员工爆料的薪资收入。根据岗级,1-2到2-1都是属于执行岗,工作经验一般在五年以下,2-2以上研发岗位,能够拿到的年薪加上股权,差不过就超过一百万了。看到这个收入,很多同为高级研发,技术经理的同学,说不羡慕肯定是有点言不由衷的。下......
  • Apache Commons BCEL与Java字节码操作
    第1章:ApacheCommonsBCEL简介大家好,我是小黑,咱们今天来聊聊ApacheCommonsBCEL(ByteCodeEngineeringLibrary)。你可能会问,BCEL是什么鬼?别急,小黑这就给你娓娓道来。BCEL,它是一款专门用来操作Java字节码的库。想象一下,Java代码编译后变成了字节码,这些字节码是Java虚拟机执行的......
  • mysql8.0大小写的坑
    这两天又被mysql8.0大小写的问题坑到了,看下面的报错:chown:cannotaccess'./proc/38/fd/6':Nosuchfileordirectorychown:cannotaccess'./proc/38/fd/7':Nosuchfileordirectorychown:cannotaccess'./proc/38/fdinfo/4':Nosuchfileordire......
  • 字节跳动校招薪资,字节范~
    对比今年字节24届和23届的校招薪资待遇,你怎么看?......
  • MD5三种方式加密(16位大小、32位大小),Base64两种方式加解密
    MD5加密后的位数有两种:16位与32位。16位实际上是从32位字符串中取中间的第9位到第24位的部分,用Java语言来说,即:Stringmd5_16=md5_32.substring(8,24)Java实现md5加密有三种方式可供选择1.Spring自带DigestUtils(优点,方便,代码简洁,缺点只可进行MD5加密)spring自带jar包......
  • 页面结构据不同屏幕手机大小进行自适应+底部标签
    微信小程序请简单创建一个页面结构,要求页面结构根据不同屏幕手机大小进行自适应。<!--pages/test/test.wxml--><viewclass="tab">顶部区域</view><viewclass="content">内容区域</view><viewclass="player">底部区域</view>/* p......
  • java比较mac大小
    Java比较MAC大小在Java编程中,我们经常需要比较两个对象的大小。在某些情况下,我们可能需要比较MAC地址的大小。本文将介绍如何在Java中比较MAC地址的大小,并提供相关的代码示例。什么是MAC地址?MAC地址(MediaAccessControlAddress)是用于标识网络设备的物理地址。它是一个唯一的标......
  • C++基础 -13- 类的字节对齐
    ———————标准输入输出——————— ......
  • 结合 element -Plus组件库,压缩图片大小,限制图片格式
    业务背景:业务上需求满足上传的图片不能太大,但是有时候上传的图片确实超过了限制大小,所以前端这边可以将图片压缩再上传,亦或者是上传给后端接口的图片只能是指定格式,我们前端需要将图片后缀转化,也可以处理!封装的使用方法如下:使用canvas对图片进行压缩处理:/**压缩图片......