CSDN认证C1等级考试——练习(一)

news/2024/7/19 14:33:27 标签: 前端, js, html, 游戏开发, 网页设计
htmledit_views">

CSDN认证C1等级考试——练习(一)

1-1 用"0"和"1"绘图

通过改变二进制编码的形式改变矩形方块组的长和宽方向上方块的个数,并且通过对应顺序的二级制编码定义每个方块的颜色(1白0黑):

上边的例子是一个像素块用一个二进制数字(bits)表示,实际上一个像素块可以用多个bits表示:

二进制数字(Binary)也可以转换成十六进制(Hexadecimal),二进制编码与十六进制编码之间可以相互转换:

2^24=16777216,用24位二进制编码可以表示2^24(16^6)种不同的颜色:

1-2 掌握进制编辑器

用进制编辑器打开一个写有"JAVA"的文本,界面如下图所示:

创建一个8X8像素的位图(1.bmp),共246个字节,对应的十六进制编码如下图所示:

经过多次实践,246个字节中,前54个字节表示该位图的尺寸大小,后面192个字节全部是位图的颜色信息,因为一共有8x8=64个字节,192/64=3,即每个像素点用占用3个字节来表示,每个字节是2个十六进制数字,3x2=6,16^6=2^24,这也对应了这张图片确实是24位深度的。

经过多次修改十六进制编码,发现从第55个字节(包括)之后的192个字节竟然要倒带读取,也就是从最后的一个字节依次往前读取,且所对应的64个像素在该位图中的排列顺序是从右上角开始,按照从右往左,从上往下的顺序排列。修改的十六进制编码和另存为的位图(2.bmp)打开后如下图所示:

拓展:修改游戏存档:

以下要求的基础是要找到安装在电脑上的植物大战僵尸的userdata中的字节码文件(user1.dat),我的地址是在C:\ProgramData\PopCap Games\PlantsVsZombies\userdata。

要求1:用二进制编辑器修改《植物大战僵尸》的存档文件,能跳到指定关卡,例如「5-1]:

经过多次实践得出,修改第1行第5列(04列)的字节,可以修改当前用户的关卡存档:

要求2:用二进制编辑器修改《植物大战僵尸》的存档文件,让游戏账户有指定数量的金币:

修改第一行第9、10列(08、09列)的字节,可以修改当前用户的金币余额存档:

要求3:通过二进制编辑器修改存档文件,能解锁《植物大战僵尸》的「迷你游戏」选项:

要求4:通过二进制编辑器修改存档文件,能解锁《植物大战僵尸》的「生存模式」选项:

修改第一行第13列(0c列)的字节,可以修改当前用户的模式解锁(改成03就全部解锁了):


http://www.niftyadmin.cn/n/800887.html

相关文章

CSDN认证C1等级考试——练习(二)

CSDN认证C1等级考试——练习(二) 任务1: ⾸先,访问⽹址:http://temp.blog8090.com/ ,提交⼿机号、姓名,在浏览器返回的信息中,得到下⼀步任务的「暗号」 其次,通过抓包…

Qt实现时间范围选择

以前我们写过一篇利用Qt ScrollBar实现滚动屏时间选择器的文章,也写过一篇QComboBox自定义设置 - 下拉列表自定义为表格的文章,今天我们就利用前面已经完成的这两篇文章实现一个时间范围选择的控件。 首先我们看下效果。 看完了效果之后,我们…

stl使用中的经验(十三)--若类是一个函数子,则应使它可配接

我们先看一个例子&#xff1a; #include <iostream> #include <vector> #include <algorithm> #include <iterator> using namespace std;class Widget { public:Widget(int a) : m_a(a){}int value() const{return m_a;} private:int m_a{0}; };…

CSDN认证C1等级考试——练习(三)

CSDN认证C1等级考试——练习&#xff08;三&#xff09; 目录 任务一 任务二 HTML&#xff08; Hypertext Markup Language&#xff09; CSS&#xff08;Cascading Style Sheets&#xff09; 任务一 ⾸先&#xff0c;在开源富⽂本编辑器&#xff08; https://summernote.…

stl使用中的经验(十四)--ptr_fun、mem_fun、mem_fun_ref

首先我们看个例子。 #include <iostream> #include <vector> #include <algorithm> #include <iterator> using namespace std;class Widget{public:Widget(int a) : m_a(a){}int value() const{return m_a;}bool test(){return m_a % 3;}private:i…

stl使用中的经验(十五)-- 确保less<T> 和 operator< 有相同的语义

我们都知道&#xff0c;stl容器中的是有默认的排序函数的&#xff0c;默认排序less<T>&#xff0c;一般都是按照大小排序的。如果存储的是自定义的元素&#xff0c;并且假设我们的排序因子有多个&#xff0c;则主要是看我们自定义类中的 operator< 函数是怎么书写的。…

网络协议与网络传输相关知识

网络协议 1.HTTP/2.0相比较于HTTP/1.1,有哪几项主要改进(请写出至少三种)? HTTP 2.0 的出现,相比于 HTTP 1.x ,大幅度的提升了 web 性能。在与 HTTP/1.1 完全语义兼容的基础上,进一步减少了网络延迟。而对于前端开发人员来说,无疑减少了在前前端方面的优化工作。本文将对 HT…

前端知识点(html+css)

前端知识点 在数据结构中&#xff0c;链表比数组更适于插入和删除操作&#xff0c;这句话对吗? HTML 在HTML中⼀般⽤哪个语义化标签表示导航栏&#xff1f;【nav/navigator】 一、大小写转换&#xff1a; <!DOCTYPE html>2 <html lang"en">3 <h…