任务一:用【0】和【1】绘图
计算机二进制存储图片文件的低层原理:
在code.org里面,是通过通过第一行来控制宽度,第二行控制高度来控制图片大小。
0001 1101相当于宽为29px,0000 1101 相当于高为13px,这组成了一张29px*13px的图片。
黑色用0表示,白色用1表示。即可组成你想要的图像。
任务二:掌握进制编辑器
1)用Hex Editor Neo进制编辑器打开文本
用进制编辑器打开tory.txt,用进制编辑器结合字符编码,输入一整段二进制或者十六进制数据,再用文本编辑器查看内容是否符合预期
2)用Hex Editor Neo进制编辑器打开8px*8px的全黑png
删除其中的数据后,发现该图片大小发生变化
3)用进制编辑器创建一幅图(bmp/png格式)
保存,修改文件后缀名为.png即可
拓展:修改植物大战僵尸1的游戏存档关卡和金额
修改植物大战僵尸1的游戏存档关卡
1)在C:路径下找到dat文件【C:\ProgramData\PopCap Games\PlantsVsZombies\userdata】
2)在进制编辑器Hex Editor Neo打开user1.dat,此时关卡在1-5
玩了几盘发现(此时关卡在1-7),此处有变动
更改数据
此时能发现关卡已经跳转到5-1了。
修改植物大战僵尸1的金额
进入商店,能看到此时金币为0
此时的数据
更改数据
则显示金额
虽然,不太明白为什么,玩了一盘就没这种错误窗口弹出。希望有大佬解释一下哈哈。。
解锁模式
修改数据
保存重新加载进入
自测
1)110101010001转十六进制是多少?
D51
二进制的每4位,表示十六进制的1位。
二进制 | 1101 0101 0001 |
---|---|
十进制 | 8401 0401 0001 |
13 4 1 | |
十六进制 | D 5 1 |
2)101011.101011的十进制数是多少?
整数部分101011,从低到高开始,首位是2的0次方,递位+1
101011=1+2+8+32=43
小树部分0.101011,从高位开始,首位是2的-1次方,递位-1
0.101011=0.5+0.125+0.03125+0.015625
=0.671875
则101011.101011的十进制数是43.671875
3)常见的音频编码格式有哪些?
MPG:MPEG编码采用的容器,具有流的特性。里面又分为 PS,TS 等,PS 主要用于 DVD 存储,TS 主要用于 HDTV。
VOB:DVD采用的容器格式,支持多视频多音轨多字幕章节等。
MP4:MPEG-4编码采用的容器,基于 QuickTime MOV 开发,具有许多先进特性。
AVI:音视频交互存储,最常见的音频视频容器。支持的视频音频编码也是最多的。
ASF:Windows Media 采用的容器,能够用于流传送,还能包容脚本等。
3GP:3GPP视频采用的格式,主要用于流媒体传送。
RM:RealMedia 采用的容器,用于流传送。
MOV:QuickTime 的容器,恐怕也是现今最强大的容器,甚至支持虚拟现实技术,Java 等,它的变种 MP4,3GP都没有这么厉害。
MKV:MKV 它能把 Windows Media Video,RealVideo,MPEG-4 等视频音频融为一个文件,而且支持多音轨,支持章节字幕等。
OGG:Ogg 项目采用的容器,具有流的特性,支持多音轨,章节,字幕等。
OGM:Ogg 容器的变种,能够支持基于 DirectShow 的视频音频编码,支持章节等特性。
NSV:Nullsoft Video 的容器,用于流传送。
WAV:一种音频容器,大家常说的 WAV 就是没有压缩的 PCM 编码,其实 WAV 里面还可以包括 MP3 等其他 ACM 压缩编码
4)常见的视频编码格式有哪些?
H.264、H.263、MPEG-1、MPEG-2、MPEG-4、Sorenson Spark、VC-1、JPEG、RV、DivX、On2 True Motion VP6等。
H264 , VP8, AVS, RMVB,WMV,QuickTime(mov)
5)65对应ASCII码是哪个字符?
大写A(对照上序表查找可知)
6)一个尺寸8×8大小的png全黑图片前四个字节的十六进制值是什么?
89 50 4e 47
从文件头开始的前8个字节数据是PNG文件的定义。
PNG文件数据块结构:
十六进制值 | 含义 |
---|---|
00 00 00 0d | 文件头数据长度 |
49 48 44 52 | 数据块类型标志,即IHDR |
00 00 00 08 | 图像宽度 |
00 00 00 08 | 图像高度 |
08 | 表示256色 |
06 | 表示索引图像 |
00 | 使用Deflate编码压缩图像数据 |
00 | 为将来使用更好的压缩方法预留 |
00 | 非隔行扫描 |
c4 0f be 8b | CRC字段 |
7)如果要提供一个实时的流媒体服务器,除了ffmpeg,还需要使用哪个组件?
ffserver