12-8
06

博客里面会用到的html笔记

横线:<hr />


框起来

<div>
<table border="1" cellspacing="8">
<tbody>
<tr><td>aa</td></tr>
</tbody>
</table>
</div>
<span style="color: #ff00ff;">
</span>

aa

跳转到本页的某一位置

在该位置处添加标记:<a name="XXXXX"></a>

然后链接为:<a href="#XXXXX">"链接描述文字"</a>

例如:跳到双线框处


实线框

<div style="border-width: 1px; border-color: #ff0000; border-style: solid;">TODO
TODO</div>

TODO
TODO

背景颜色:

<pre style="background-color: #c3d9ff;">背景为蓝色</pre>

背景为蓝色

阅读全文...

分类: Wordpress 标签: ,
12-8
06

Tcpdump解析重发包程序

在做网络编程的时候,如果是在公司里面做项目,经常需要做联调。假如你做的是后台,在项目中就要和前台的服务器进行联调,前面收到一个什么操作,然后就向你后台发一个TCP或者UDP包,调试是一个多个人的工作,如果前面发过来一个包没错,但是你这边解包或者别的逻辑上出了点问题,那么当你修改编译完你的代码后你又要跟前台说“你再发个包给我吧”,这样是很麻烦的,如果能先自己模拟前台发过来的包,这样就可以自己给自己发包测试解包或者别的逻辑什么的,知道自己这边没什么问题了,再跟前台正式联调一次,这样不仅效率可以更高,而且,方便你我他~

要怎么模拟前台发包呢?有个方法,就是先用TCPDUMP监听端口,遇到前台的包就重定向到一个txt文本中。一般tcpdump拿到的包格式就像下面这个那样。上面有IP,端口,时间,UDP还是TCP,数据包的长度等信息。

13:56:37.898494 IP 10.130.68.226.51851 > 10.130.92.40.8791: UDP, length 311
	0x0000:  4500 0153 0000 4000 3d11 868c 0a82 44e2  E..S..@.=.....D.
	0x0010:  0a82 5c28 ca8b 2257 013f 6ea5 0a01 3700  ..(.."W.?n...7.
	0x0020:  0505 c041 ac4f ff00 0000 6570 6f63 686c  ...A.O....epochl
	0x0030:  6975 0000 0065 706f 6368 6c69 7500 0000  iu...epochliu...
	0x0040:  ac19 642e 6d69 6372 6f62 6c6f 675f 7365  ..d.microblog_se
	0x0050:  7276 6900 ffe2 defe 0000 2da9 00d3 8f32  rvi.......-....2
	0x0060:  4300 0000 006d 6963 726f 626c 6f67 5f73  C....microblog_s
	0x0070:  6572 7669 6300 41ac 4fff 0000 0000 0000  ervic.A.O.......
	0x0080:  0000 0000 0000 0000 0000 0000 0000 0000  ................
	0x0090:  0000 0000 0000 0000 0000 0000 0015 0258  ...............X
	0x00a0:  0000 0000 0a00 06b1 e122 f03b 4a00 0000  .........".;J...
	0x00b0:  0000 0000 0012 0000 0000 0000 0000 0000  ................
	0x00c0:  0000 0600 0200 0402 0012 004e 2100 3ce5  ...........N!.<.
	0x00d0:  8a9e e79a 84e5 a5bd efbc 8ce6 9c80 e5a5  ................
	0x00e0:  bde5 88b0 e4bd a0e8 87aa e5b7 b1e5 aeb6  ................
	0x00f0:  e58a 9ee5 8ebb efbc 8ce4 bb80 e4b9 88e7  ................
	0x0100:  8ea9 e684 8fe5 84bf efbc 9f00 0a00 1800  ................
	0x0110:  0002 650b cfad ea25 12fe 6500 0002 650b  ..e....%..e...e.
	0x0120:  cfad ea25 12fe 654e 2300 0800 0141 ac4f  ...%..eN#....A.O
	0x0130:  ff00 0100 6600 1100 0003 f000 0000 0000  ....f...........
	0x0140:  0000 0000 0000 0000 7530 0006 0100 0300  ........u0......
	0x0150:  0100 03

拿到这个文档之后,我们只要解析这个文档,把包的数据复制出来,自己给自己发就行了。 阅读全文...

分类: 网络 标签: , ,
12-8
05

密码保护:人生路上的那些蛋疼博弈题

要查看留言请输入您的密码。

这是一篇受密码保护的文章,您需要提供访问密码:

分类: My Life 标签: ,
12-8
02

傅里叶变化与频率那些事儿

学数字信号处理的时候都会接触到的三个东西就是数字频率,模拟频率,采样频率,这三个东西其实挺好懂得,但是一旦涉及到编程那些东西好像很容易出错,而且一般都是比较难查的。然后一旦到了数字滤波器那些东西,又来什么归一化频率的,就更乱了,加上数字福利叶变换后频率就变成-π到π了,然后又有人搞不懂了。。

趁我现在脑子清新,概念还比较清晰,这里整理一下,也方便将来我又分不清东南西北的时候可以回来复习复习,如果有找不着北的孩子看到这个,希望对你有帮助。

首先我们解释模拟频率,数字频率和采样频率。

假设我们有一小段正弦信号sin(2 π f t),不要考虑任何数字化的东西,这个f就叫做模拟频率。假设f=100,那么我们高中知识知道这个正弦信号的周期是1/f,也就是0.01,也就是说0.01的时间t里面正弦信号变化的一周,我们就知道从0到1里面变化了100次,也就是f次,所以我们才把f叫做频率的。 阅读全文...

12-8
02

OPENCV笔记

滑动条:
cvCreateTrackbar(滑动条名字,窗口名, 起始位置, 最大值, 回调函数);
cvSetTrackbarPos(滑动条名字,窗口名,pos);
回调函数:void F(int h)

=================================================
ROI:

void cvSetImageROI(IplImage* image, CvRect rect); 
void cvResetImageROI(IplImage* image); 
vRect cvGetImageROI(const IplImage* image);

=================================================

颜色转换:

cvCvtColor(src,dst,code);
code = CV_<X>2<Y>
<X>/<Y> = RGB, BGR, GRAY, HSV, YCrCb, XYZ, Lab, Luv, HLS
e.g.: CV_BGR2GRAY, CV_BGR2HSV, CV_BGR2Lab

=================================================

摄像头:

CvCapture* XXX = 0; 

XXX = cvCaptureFromCAM(0); 

frame = cvQueryFrame(xxx);

================================================= 阅读全文...

分类: OPENCV 标签: ,
12-8
02

MFC & C++ 笔记

获取控件及控件使能:

CButton *pButton=(CButton*)GetDlgItem(IDC_STOP);

pButton->EnableWindow(FALSE);

=================================================

文件拖拽功能:

→→→→→→→点这里

=================================================

文件读取:

CFile mFile(_T(FileName),CFile::modeRead);

mFile.Read(Buffer,BufferLength);

CFile::SeekToBegin();//文件指针回到头

mFile.Close();

CFile mFile(_T(FileName),CFile::modeWrite|CFile::modeCreate); 

mFile.Write(Buffer,BufferLength); 

mFile.Flush(); 

如果要实现每次读取文件的一行,要用CStdioFile,这个类继承于CFile

CStdioFile::ReadString(CString) 阅读全文...

分类: MFC 标签: ,
12-8
02

MFC实现文件拖拽功能

最近玩空轨3rd,经过内心无数次激烈的斗争,我毅然决然的打开了修改器,然后看到那个修改器的时候,我第一个注意到的不是这个修改器的功能,而是里面有个group控件,要把游戏的save文件拖到这里面来,再对save文件读取后修改。然后。。我一直在想的就是。。这个功能要怎么实现,想象QQ发文件也是拖拽功能,以前有个ASS字幕文件改SRT的也是拖拽一下就可以了。最近老板让我写的一个自动光栅仪的上位机程序里面要读取目标文件,我用的还是DoModel一个CFileDialog变量,如果实现拖拽的话,交互性感觉会好很多。

然后今早来实验室就上网查找资料,研究拖拽功能。

话说这个东西一点也不难,因为MFC本身就设置了这个功能。

最简单的你在MFC里面建立一个基于Dialog的工程,然后在对话框编辑器里面把Accept File改成TRUE,然后再给对话框添加一个WM_DROPFILES的消息响应,在OnDropFiles函数里面写拖拽到对话框里面后要响应的是什么代码就行了。 阅读全文...

分类: MFC 标签: ,
12-8
01

空之轨迹3rd同步吐槽

最近闲的没动画看,把之前下好的空轨3rd装了来玩。

其实一开始很不想玩儿的,毕竟嘛,换主角了,抱着对前两部的感情,对3rd就没啥feel了,不过真的闲的没事干,实验室晚上不要求干活,最近动画暂时看完了,所以就装了来玩。

不过坑爹的是,宿舍笔记本装了进不了游戏,实验室电脑装了玩起来表示毫无压力,搞了半天好像是我同时装了暴风影音和最终解码两个播放器的问题,不过又懒得删,所以直接把游戏开始的那个动画删了。。

阅读全文...

分类: 游戏 标签:
12-7
30

匹配滤波器

学数字通信原理的时候就会学到,如果一个信号,传输过程中加了白噪声,然后我们接收到这个信号后,需要对这个信号进行采样,我们想要的结果是想要在时刻Ts对这个加了噪的信号进行采样,使得在Ts时刻采样点的信噪比最大;通信原理课本告诉我们如果要达到这个目的,那么就要在采样前先把信号通过一个匹配滤波器,然后再在Ts时刻采样,匹配滤波器可以让你的信噪比达到最大。

匹配滤波器通过使滤波器和信号取得某种一致性,使得在Ts时刻信号出现某一尖峰,这样来实现抑制噪声。额。。匹配滤波器的推导这里就不说了,因为什么地方都可以查得到,反正就是假设信号是x(t),那么匹配滤波器的系统响应函数就是: 阅读全文...

12-7
29

(怀旧向)第五弹:幻方

幻方,也有人称之为魔方,就是横竖斜和都相等的那种方阵。

小学6年级在奥数课上老师告诉我奇数阶幻方的通解,不知道的小朋友们,我在这科普一下吧:

阅读全文...

分类: 数学 标签: , ,