任务一:用0和1绘图
任务二:掌握二进制编辑器
-
修改文本内容
修改前
修改后
自己输入16进制得到pagy Pagy
61H:a 7AH:z
32D=20H
2.将8 * 8纯黑png图片,改成8 * 8纯白png文件
参考文献:https://blog.csdn.net/weixin_45942479/article/details/117036148
举例分析:8*8纯黑图片用16进制编辑器打开如下所示
第一行,png文件头标志(8字节):
89 50 4e 47 0d 0a 1a 0a
接下来是IHDR数据块:
00 00 00 0d表示IHDR头块长为13
49 48 44 52为IHDR标识十进制就是IHDR
下面是IHDR数据块的实际内容
00 00 00 08 图像的宽 8像素
0000 0008图像的高 8像素
08 表示色深,这里是2^8=256,即这是一个256色的图像
06 颜色类型,查表可知这是带α通道数据的真彩色图像
00 PNG Spec规定此处总为0(非0值为将来使用更好的压缩方法预留),表示使压缩方法(LZ77派生算法)
00 PNG Spec规定此处总为0(非0值为将来使用更好的压缩方法预留),表示使压缩方法(LZ77派生算法)
00 非隔行扫描
c4 0f be 8b CRC校验字段
IEND数据块,居于最后
00 00 00 00 49 45 4e 44 ae 42 60 82
将00 60对应的ff改为20后,纯黑图片变成如下所示
拓展:修改游戏存档
1.首先寻找游戏存档:一般游戏存档在c盘的programdata目录下,在此目录下找到popcap games
2.试玩两关后用16进制编辑器打开user1.dat文件,发现00 04 对应的数据在变化02代表的是1-2关,对应的十进制为2,结合百度每一大关有十个小关,因此5-1关对应的十进制是41,则对应的16进制为29,修改16进制编辑器得到5-1关卡,如下所示
00 08到00 0b列表示金币数量,它会乘以10,将金币改为10000,对应的16进制是3e8(注意写成03e8)
00 0c表示游戏模式的解锁,把他改为1就行了
自测
- 110101010001转十六进制是多少?有什么最快的计算方法能得到结果?
D51,拆分成3组,每四个为一组,利用8421每4个累加,成从左到右排列
需要注意的是,若是小数形式,则从小数点开始,分别向左右两边,左侧不足4位,在左侧补0;右侧不足4位,在右侧补0:
- 101011.101011对应的十进制数是多少?
(2^5 * 1 + 2^4 * 0 + 2^3 * 1 + 2^2 * 0 + 2^1 * 1 + 2^0 * 1) + (2^-1 * 1 + 2^-2 * 0 + 2^-3 * 1 + 2^-4 * 0 + 2^-5 * 1 + 2^-6 * 1)
= 43.671875
- 常见的音频编码格式有哪些?
MP3 AAC WAV APE…
参考文献链接:https://blog.csdn.net/houxiaoni01/article/details/78810674
1.MPEG2-TS编码技术 2.MPEG-4编码技术 3.VC-1编码技术
参考文献链接:https://blog.csdn.net/houxiaoni01/article/details/78812485 - 一个尺寸8x8大小的png全黑图片前四个字节的十六进制值是什么?
89 50 4e 47
- UTF-8三字节的编码方式为: 1110xxxx 10xxxxxx 10xxxxxx;汉字【中】的Unicode编码十六进制值是0x4e2d,Unicode编码按三字节编码转换到十六进制的UTF-8编码的计算过程是什么?
参考文献:https://blog.csdn.net/wangwenan1993/article/details/45559369
已知中文“许”的utf-8编码为11101000,10101110,10111000
提取第一个字节的后四位1000,对应16进制为8
提取第二个字节的2~5位1011,对应16进制为b
提取第二字节的6~7和第三字节的2~3位1011,对应16进制为b
提取第三个字节的最后4位1000,对应的16进制为8
因此对应的Unicode编码为/u8bb8
反过来计算汉字“中”的utf-8编码为11100100,10111000,10101101
- 如果要提供一个实时的流媒体服务器,除了ffmpeg,还需要使用哪个组件?
ffserver