更新时间 2021-10-02

辗转相除法 又称为 欧几里得算法 一些定义 整除:如果 aa 整除 bb,记为 a\mid ba\mid b,如果 aa 不能整除 bb,记为 a \nmid ba \nmid b 最大公因子:两个不同时为零的整数 a, ba, b 的最大公因子是指能同时整除 a, ba, b 的最大的整数,记为 (a, b)(a, b) 欧几里得算法 定理:整数 a \geqslant b > 0a \geqslant b > 0,令 r_0 = a, r_1 = br_0 = a, r_1 = b,如果我

更新时间 2021-09-29

一些定义 信息:可以降低不确定性的东西 信源:信息的发送方 信宿:信息的接收方 信道:信息从发送方到接收方的传输途径 基础问题和概念 信息论解答了通信理论中的两个基本问题: 临界数据压缩的值 / 熵 HH 临界通信传输速率 / 信道容量 CC 奥卡姆剃刀原则: 如非必要,勿增实体 最简约的解释最佳 科尔莫戈罗夫复杂度:一组数据串的复杂度可以定义为 计算该数据串所需最短二进制程序的长度。 自信息 - 随机事件的概率 定义:考虑可能输出为 x_i, i=1, 2, \cdots, nx_i,

更新时间 2021-09-21

DSA 的主要参数 全局公开密钥分量 pp:素数,要求 2^{L-1}<p<2^L2^{L-1}<p<2^L,且 LL 为 6464 的倍数 取 p = 127p = 127 qq:(p - 1)(p - 1) 的素因子,2^{159} < q < 2^{160}2^{159} < q < 2^{160},即比特长度为 160160 位 则 p - 1 = 126 = 2 \times 3^2 \times 7p - 1 = 126 = 2 \times 3^2 \times 7,故取 q =

更新时间 2021-09-12

处理的方式及其简单,就是图像中有模式固定但是位置不固定的水印,而且背景颜色单一,这样就可以使用如下代码去之; 代码如下,其中: template 是图像中水印位置的截图 rectangle 中的参数 (255, 255, 255) 是背景颜色,此处是白色 # coding=utf-8 import os import glob import cv2 import numpy as np dirname = os.path.dirname(__file__) os.chdir(dirname) de

更新时间 2021-09-11

In [1]: import networkx as nx import matplotlib.pyplot as plt import numpy as np In [2]: SIZE = 10 T = nx.DiGraph() A = np.zeros((SIZE, SIZE)) for i in range(SIZE): for j in range(i): if i == j: pass else:

更新时间 2021-08-09

1928 皇姑屯事件 / 日本关东军谋杀奉系军阀首领 张作霖 得手 东北易帜 / 张学良通电全国,宣布遵守三民主义,服从蒋介石领导,完成了国民政府形式上的统一 1931 九一八事变 / 日本关东军突袭沈阳,武力占领东北 1932 东北全境沦陷 1936 西安事变 / 张学良、杨虎城兵谏 1937 七七(卢沟桥)事变 / 日本全面侵华战争开始 南苑之痛 庐山召集令 虹桥事件 …各地战士,闻义赴难,朝命夕至,其在前线以血肉之躯,筑成战壕,有死无退,阵地化为灰烬,军心仍坚如铁石。陷阵之勇,

更新时间 2021-07-22

ELF 文件简介 ELF 文件是用来干什么的呢?实际上它和 .exe 文件类型差不多,都是用来存储可执行程序的,不过 ELF 文件广泛应用于 Linux 操作系统,而非 Windows。不过 Windows 的可执行文件内省准确的说是 PE 文件,而 .exe 只不过是文件名后缀。 ELF 的全称是 Executable and Linking Format 也就是可执行和链接的格式,那么这种格式的文件主要有三种类型: 可重定位的文件 (Relocatable file) 也就是静态链接库,是由汇

更新时间 2021-07-16

hello world 相信大多数人的第一个程序,都是下面的这段代码。或者差不多是这样。不过编译器最终生成的汇编代码是怎样的,是一个比较有趣的事情,那么这里我们分析一下。 #include <stdio.h> int main() { printf("hello world!!!\n"); return 0; } 我们可以用下面的命令生成汇编代码: gcc -S hello.c .file "hello.c" .text .section .rodat

更新时间 2021-07-16

readelf 选项 功能 -a 显示所有信息 -h 显示 ELF 头信息 -l 显示程序头信息 -S 显示节 (section) 头信息 -g 显示节 (section) 组信息 -t 显示节 (section) 详细信息 -s 显示符号表信息 –dyn-syms 显示动态符号表信息 -C 对所有 C++ 符号反修饰 -e 显示所有头信息 -n 显示 NOTE 段的内容 -r 显示重定位段的内容 -d 显示动态链接段的内容 -A 显示文件架

下面是一个 hello world!!! 程序使用 nasm 汇编,调用 32位系统调用,然后退出的程序。过程简单,但是存在一个问题 …… [bits 32] section .text global main main: mov eax, 4; write mov ebx, 1; stdout mov ecx, message; buffer mov edx, message_end - message int 0x80 mov eax, 1; exi