Hex Editor的使用教程(VS Code)

Hex Editor(十六进制编辑器)是一种用于查看和编辑计算机文件的低级别编辑工具。与常规文本编辑器不同,它允许用户直接查看和修改文件的二进制数据。在 Hex Editor 中,数据通常以十六进制(hex)格式显示,这是计算机科学中常用的数值表示法。

这里我以VS Code中的插件Hex Editor为例,介绍一下怎么使用。

下载上面的插件之后,打开任意一个二进制文件(.bin)。

直接打开会出现一堆乱码。此时选择【右键】->【打开方式】->【Hex Editor】

接着就会以如下的方式打开:

Hex Editor 会以字节的形式对数据进行读取,因此每一组数实际上代表了8bit的二进制数。例如第一个数是B2 ,实际上代表的是1011 0010

考虑到我事先存储的是一个uint32位的数,因此应该4个一起读。也就是B2 53 AE 60,转成十进制就是2991828576。

但真的是这样吗?

我们常见的符合人脑思维的正常逻辑的是大端格式,即高字节在低地址,低字节在高地址。这里注意,右下角默认勾选了Little Endian,即更符合计算机思维的小端格式,也就是高字节在高地址,低字节在低地址。因此真正的数应该反过来读,60 AE 53 B2,转成十进制就是1622037426,和右边解码出来的数一样。

同样,第二个数应该为:E6 AF F3 BA

为了验证数据对不对,可以使用matlab读取.bin文件查看:

这里关于字符的总数我们也做一下验证。可以看到,上图中matlab一共读取了16648个数,在VS Code中我们可以查看:

每16个数一行,一共是1042(16进制)行,1042转成10进制就是4162。而一行又表示了4个数(每4个字节表示一个uint32位数),因此一共是4162*4=16648个数。和matlab中读取的一致。

相关推荐
海的诗篇_19 分钟前
前端开发面试题总结-JavaScript篇(一)
开发语言·前端·javascript·学习·面试
AgilityBaby28 分钟前
UE5 2D角色PaperZD插件动画状态机学习笔记
笔记·学习·ue5
AgilityBaby29 分钟前
UE5 创建2D角色帧动画学习笔记
笔记·学习·ue5
武昌库里写JAVA2 小时前
iview Switch Tabs TabPane 使用提示Maximum call stack size exceeded堆栈溢出
java·开发语言·spring boot·学习·课程设计
一弓虽3 小时前
git 学习
git·学习
Moonnnn.5 小时前
【单片机期末】串行口循环缓冲区发送
笔记·单片机·嵌入式硬件·学习
viperrrrrrrrrr76 小时前
大数据学习(131)-Hive数据分析函数总结
大数据·hive·学习
fen_fen6 小时前
学习笔记(26):线性代数-张量的降维求和,简单示例
笔记·学习·算法
布伦鸽8 小时前
C# WPF 左右布局实现学习笔记(1)
笔记·学习·c#·wpf
陳麦冬9 小时前
深入理解指针(二)
c语言·学习