自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 MCU内存详解

正是由于ELF有一个符号表(.symtab)去记录全局符号的最终物理地址,我们就可以通过objdump这个工具去找到某个全局变量的内存地址,如果是一个结构体,我们也可以先找到结构体的基地址,然后找到对应成员的偏移,就可以找到成员地址。编译→汇编:将高级语言→底层指令,同时包含中间代码生成与优化,最终生成目标架构的汇编指令,汇编器将汇编代码翻译成ELF格式的可冲定位目标文件(这个时候仅有段内偏移,未绑定最终物理地址).bss段(未初始化的全局变量,初始值未0的全局变量,未初始化的静态变量):分配到RAM。

2025-12-04 13:49:33 318

原创 变量的存储布局

a是一个GLOBAL的符号,而b被static关键字修饰了,导致它成为一个LOCAL的符号,所以static在这里的作用是声明b这个符号为LOCAL的,不被链接器处理,链接器会在之后文章进行说明。函数中的static变量只在函数中起作用,比如main函数中的a这个变量名只在main函数中起作用,在别的函数中说变量a就不是指它了,所以编译器给它的符号名加了一个后缀,变成a.0,以便和全局变量a以及其它函数的变量a区分开。bss段:用来存放程序中未初始化的全局变量的内存区域,属于静态内存分配。

2025-12-03 10:36:48 436

原创 位图Bitmap详解

bitmap 是一种高效的且占用内存很小的 判断 某个值 存在与否的数据结构。这个过程的本质是通过位运算,还原出所有被标记为”存在”的nid。如果定义的类型不够大,也可以用列表/数组来进行表示。3 → 100 第一位表示1。位图Bitmap详解。

2025-12-02 09:42:41 257

原创 位运算总结

32位的系统中,int是32位有符号整数,采用补码存储,取值范围是-2^31~2^31-1(0x80000000 ~ 0x7fffffff),最高位是符号位,0表示正数,1表示负数;左移:在一定的取值范围内,将一个整数左移1位相当于*2(对于有符号数和无符号数都成立),比如<<2,就是最高的两位被移出去了,最低两位又补了两个0。1的个数是4,异或结果是0,偶校验位设0,发送的完整序列是01010101 0,接收方收到后:0^1^0^1^0^1^0^1^0 = 0 判定无错。所以对于:a1^a2^a3^…

2025-12-01 11:15:37 857

原创 数据结构——链表的基本操作

这个检查是很有必要的,是对两种错误场景进行检查。

2025-09-10 16:18:58 484 1

原创 数据结构—顺序表

定义:具有相同数据类型的n个数据元素的有限序列。

2025-09-09 16:48:25 295

原创 滑动窗口机制及其应用

滑动窗口(Sliding Window)是网络通信和无线协议中常用的流量控制与状态跟踪技术。它通过定义一个固定大小的 "窗口",只关注窗口范围内的数据包状态,随着新数据的接收,窗口不断向前滑动,既保证了状态跟踪的效率,又能适应序列号循环复用的场景。如何标记哪些序列号的数据包已接收如何处理数据包丢失、重复和乱序到达的情况如何应对序列号回绕(如 8 位 SN 从 255 回到 0)的场景。

2025-07-24 18:54:49 274

原创 C语言结构体对齐

内存对齐规则影响结构体存储效率。默认情况下,成员起始地址需是其类型大小的整数倍(如int需4字节对齐),导致填充浪费。示例1因未优化顺序浪费12字节,示例2优化后仅需8字节。使用__attribute__((packed))可取消对齐,紧凑存储为7字节。合理排序成员或强制紧凑排列可显著节省内存空间。

2025-07-09 19:22:11 304

原创 BCD 编码及其应用

在电力通信协议(如 GDW1376.2)中,是一种常用的数值编码方式,用于将十进制数字直接转换为二进制表示,每个十进制数位用 4 位二进制数表示(0000~1001)。这种编码方式在地址字段(如电表地址、集中器地址)中尤为常见。

2025-07-08 18:33:52 516

原创 Pandas中的简单爬虫

其允许从网页中提取表格数据,并将其直接转换为pandas的DataFrame对象,也就是说它只针对网页上有标签的表格数据进行爬取,如果没有这个标签的话,会提示“No tables found”以天气后报网站为例,https://www.tianqihoubao.com/weather/top/shanghai.html。我们想要爬取的是上海市最近的天气情况,查看网页源代码。

2025-06-14 22:51:11 775

原创 c++的练习

关于这里二层循环的解释:冒泡排序每一轮会将当前未排序部分中的最大(或最小)元素 “冒泡” 到未排序部分的末尾。每完成一轮排序,就会有一个元素被放置到了它最终的位置上,之后就不需要再对这个元素进行比较和交换操作了。从a[1]到a[10],相邻的两个数两两相比较。用循环把十个数输入到A数组中。

2025-04-05 20:14:13 50

原创 线性回归之多特征&实战

当我们尝试使用Python去实现线性回归的时候:without vectorization vectorizationPython中的向量化表示对于有 n 个特征的线性回归问题,其模型方程可以表示为:为了方便计算,通常会将上述方程写成向量化的形式。将特征向量 x 扩展为(其中)参数向量则模型方程可以简化为:数据读取: price bedroom size 0 22190031180538000325701

2025-04-05 19:14:57 763

原创 c++ 指针与字符串

c++的一点点复习,因为马上要run去公司,发现忘的差不多了。

2025-03-29 22:39:45 273

原创 线性回归算法学习&实战

在每次迭代过程中,批量梯度下降会使用所有的训练样本数据来计算代价函数的梯度,然后依据这个梯度对模型参数进行更新。

2025-03-29 22:36:52 806

原创 余弦相似度实现简单文本问答

作为自然语言处理的一种,智能问答系统可以根据历史问答形成的数据库,将文本转化为词向量进行相似度计算,找到和历史数据中相似度最高的问题,返回对应的答案,将其用来构建智能客服解决方案,可以满足企业在客服领域的需求,提高业务的运行效率。本次项目结合已有的问答数据进行训练,实现相似问题的自动回复。

2025-03-14 11:06:03 1027

原创 Selenium 爬虫实战

由于JavaScript动态渲染的页面不止Ajax一种,而且有时候即使是Ajax获取的数据,其Ajax接口中也包含有很多加密参数,使我们很难直接找出规律,所以为了解决这些问题,我们可以直接模拟浏览器的运行,然后爬取数据。

2025-02-08 21:42:00 1749

原创 爬取珍爱网相亲数据

这个网站比较简单,这里使用xpath对数据进行爬取。巩固下最近学习的爬虫知识。

2025-02-07 22:23:35 460 2

原创 Ajax数据爬取

使用Ajax技术更新网页的内容的网站有个很大的特点,那就是可以在不重新加载整个网页的情况下,对网页的某部分进行更新。Ajax其实并不是一门语言,而是用来完成网络任务(可以认为它与网络数据采集差不多)的一系列技术。Ajax网站不需要使用整个的页面加载就可以和网络服务器进行交互。

2025-02-03 22:26:45 1796

原创 Python中的数据存储

wb+:以二进制读写格式打开一个文件。如果该文件已存在,则将其覆盖。如果该文件不存在,则创造新文件。wb:以二进制写入方式打开一个文件。如果该文件已存在,则将其覆盖。如果该文件不存在,则创造新文件。w+:以读写入方式打开一个文件。如果该文件已存在,则将其覆盖。如果该文件不存在,则创造新文件。w:以写入方式打开一个文件。如果该文件不存在,则创造新文件。rb:以二进制只读方式打开一个文件,通常用于打开二进制文件,例如音频、图片、视频等。rb+:以二进制读写方式打开一个文件。r+:以读写方式打开一个文件。

2025-02-01 17:58:27 453

原创 Python爬虫—BeautifulSoup的简易入门

Beautiful Soup是Python的一个HTML或XML的解析库,我们可以使用它方便的从网页中提取数据。其官方解释:Beautiful Soup提供一些简单的、Python式的函数来处理导航、搜索、修改分析树等功能。可以自动将输入文档转换为Unicode编码,将输出文档转换为utf-8编码。我们不需要考虑编码方式,除非文档没有指定具体的编码方式,这时仅仅需要说明下原始编码方式就可以了。

2025-01-31 22:17:56 1150

原创 dbg视角下的字节存储顺序的学习

endian” 一词来源于《格列佛游记》。在小说中,小人国的居民为吃鸡蛋时应该从大的一端(Big-End)剥开还是从小的一端(Little-End)剥开而争论,争论的双方分别称为“Big-endian”和”Little-endian”。计算机领域在描述“关于字节该以什么样的顺序传送的争论”时引用了“endian”一次,翻译为“字节序”,表示数据在存储器中的存放顺序,主要分为大端序(Big-endian)和小端序(Little-endian)Big-endian:高位字节存入低地址,地位字节存入高地址。

2025-01-26 17:43:00 404

原创 BUU reverse做题记录 Day03

这题好像有涉及伪随机数的问题,后续研究研究再更新。

2025-01-06 23:19:38 198

原创 BUU reverse做题记录Day02

题目链接:https://buuoj.cn/challenges#SimpleRev。

2025-01-05 20:36:17 482

原创 BUU reverse做题记录Day1

exeinfo分析文件:Mac OS的64位的程序使用IDA查看逻辑逻辑很简单,输入flag后,首先判断长度是不是为33,再使用b[i]^=b[i-1]这个逻辑进行异或找到数据。

2025-01-04 20:38:31 469

原创 NSSCTF fakerandom

NSSCTF fakerandom

2022-08-05 22:30:59 526 1

原创 Bugku Reverse moible1

bugku re mobile1

2022-07-23 22:22:44 632

原创 Bugku Reverse signin

bugku re signin

2022-07-22 23:45:05 378

原创 DVWA之sql注入漏洞-low

DVWA之sql注入漏洞-low

2022-07-19 09:14:23 1871

原创 HTML基础

html基础知识

2022-07-17 21:45:28 83

原创 BUUCTF Reverse pyre

buuctf re pyre

2022-07-13 23:00:26 436

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除