惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Y
Y Combinator Blog
IT之家
IT之家
博客园_首页
量子位
博客园 - 三生石上(FineUI控件)
小众软件
小众软件
博客园 - 聂微东
罗磊的独立博客
酷 壳 – CoolShell
酷 壳 – CoolShell
Hugging Face - Blog
Hugging Face - Blog
V
V2EX
爱范儿
爱范儿
大猫的无限游戏
大猫的无限游戏
宝玉的分享
宝玉的分享
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
雷峰网
雷峰网
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Google DeepMind News
Google DeepMind News
Microsoft Azure Blog
Microsoft Azure Blog
有赞技术团队
有赞技术团队
S
SegmentFault 最新的问题
Engineering at Meta
Engineering at Meta
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com

博客园 - yiyide266

[Express.js]next()函数的作用 [css]浏览器默认样式 have的实质 This comes after Chinese authorities announced an investigation against Mayday, in response to a viral video. [Linux]终端ssh远程连接如何保持 [PHP]PDO的dsn对mysql的连接影响 [PHP]回调函数参数(callable类型)的一些细节 vscode处理HTML标签两个光标的问题 intend,intent和indent [css]一个块格式化上下文(BFC)阻止外边距重叠的示例 [PHP_yaf]内部注册到spl_autoload的方法 [PHP_yaf]Yaf_Application [PHP_yaf]写在用户代码的配置项 [PHP_yaf]保存在php.ini中的配置项 [PHP]spl_autoload函数栈的向下遍历机制 [英语单词]关于战争 [MySql]1820错误码重置密码方法 [Linux]信号捕捉函数总是第一时间执行 [Linux]信号捕捉函数与exec
[javascript]端序(endian)和Buffer对象的read|write系列函数
yiyide266 · 2023-02-17 · via 博客园 - yiyide266

假设有如下对象:

var buf = Buffer.from("Hello.\n");

其保存在内存当中的形式实际上是这样的,这里我们假设该对象的内存地址从0x00开始:

地址 0x00 0x01 0x02 0x03 0x04 0x05 0x06
48 65 6c 6c 6f 2e 0a
编码对应 H e l l o . LF

当我们调用方法buf.readInt32BE(3)对其进行输出时,其意义相当于“从buffer第三个地址开始,往后4个字节当成是一个长度为32的大端序整型输出”,那么由于大端序把低位一边保存大数的特点,它的输出就是:
0x6c6f2e0a,可以看到cp[0]是6c;

当我们调用方法buf.readInt32LE(3)对其进行输出时,其意义相当于“从buffer第三个地址开始,往后4个字节当成是一个长度为32的小端序整型输出”,那么由于小端序把低位一边保存小数的特点,它的输出就是:
0x0a2e6f6c,可以看到cp[0]是0a;

可以到,大端序是更符合人类对数字的阅读视角的;