大家好,我是杂烩君。
2025年07月03日
有些没有接触过的童鞋可能还不知道音视频同步是什么意思,大家印象中应该看到过这样的视频,画面中的人物说话和声音出来的不在一起,小时候看有些电视台转播的港片的时候(别想歪 TVB)有时候就会遇到 明明声音已经播出来了,但是播的图像比声音慢了很多,看的极为不舒服,这个时候就发生了音视频不同步的情况,而音视频同步,就是让声音与画面对应上 这里有个知识点需要记一下
2025年07月03日
在嵌入式系统开发中,串口(UART)是最基础也是最常用的通信方式之一。无论是用于调试信息的打印、与外设通信,还是与主控模块的数据交互,一个稳定可靠、结构清晰的串口通信模块都是不可或缺的。
介绍一个基于 STM32F4 系列微控制器实现的串口通信模块,该模块采用环形缓冲区结构,并结合中断机制,实现了非阻塞、缓存式的数据收发。整体设计思路清晰、逻辑模块化,适合在嵌入式项目中直接复用。
2025年07月03日
简单工厂模式(Simple Factory Pattern)又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。
2025年07月03日
推箱子游戏是一款很有趣味的游戏,其开发过程有一定的技巧和方法,其中涉及软中断、二维数组、键盘操作以及图形化函数等方面的知识。本游戏的开发者需要基本掌握显示器中断寄存器的设置、二维数组及结构体的定义、键盘上键值的获取、图形方式下光标的显示和定位,以及部分图形函数的使用。在本章中,将使用C语言实现一个典型的推箱子游戏,向读者讲解其具体实现过程,并剖析技术核心和实现的算法。
2025年07月03日
//一旦结构体定义下来,则结构体中的成员 内存布局就定下来了
//可以通过 age地址 去求大的结构体的内存地址
typedef struct AdvTeacher
{
char name[64];
int age;
int p;
char *pname2;
}AdvTeacher;
void main()
{
int i = 0;
AdvTeacher t1;
AdvTeacher *p = NULL;
p = &t1;
p = p + 100;
p - 1;//编译通过 运行通过 这句话 在cpu中计算
{
int offsize1 = (int)&(p->age);
int offsize1 = (int)&(((AdvTeacher *)0)->age);
printf("offsize1:%d\n", offsize1);
printf("offsize1:%d\n", offsize2);
}
system("pause");
return;
}
2025年07月03日
作为一名安全菜鸟,单纯的了解某一个方面是并不合格的,安全并不仅限于某一门语言、某一个OS,现如今安全研究的技术栈要求的更深、更广。虽说 PE 文件内存加载已经是多年前的技术,但是招不在新、有用就行,内存加载技术仍然有非常广泛的应用(隐藏自身,至于为什么要隐藏自身,dddd),由于笔者之前认知的偏差导致对PE相关的知识仅停留在知道的地步,并没有静下心来去认真分析学习,借此机会补足一下技术点,同时顺便为自己的恶意代码分析的学习之旅开个头。