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中读取的一致。

相关推荐
Yurko1336 分钟前
【计网】基于三层交换机和 RIP 协议的局域网组建
网络·学习·计算机网络·智能路由器
lijun_xiao200942 分钟前
Dubbo-学习笔记1
笔记·学习
奋斗的牛马1 小时前
硬件工程师-基础知识电阻(四)
单片机·嵌入式硬件·学习·fpga开发
楼田莉子1 小时前
Linux学习:进程的控制
linux·运维·服务器·c语言·后端·学习
降临-max2 小时前
OpenStack创建实例一直处于创建且未分配IP问题解决
笔记·学习·openstack
老虎06273 小时前
黑马点评学习笔记10(优惠券秒杀下单优化(分布式锁的优化,Lua脚本))
笔记·分布式·学习
递归不收敛3 小时前
config.json 完全指南:项目配置的核心实践
笔记·学习·json
shenghaide_jiahu3 小时前
字符串匹配和回文串类题目
学习·算法·动态规划
驯狼小羊羔4 小时前
学习随笔-http和https有何区别
前端·javascript·学习·http·https
风无雨4 小时前
gin学习
学习·gin