HK Blog

不积跬步,无以至千里;不积小流,无以成江海。

C++ Primer学习笔记(一)

第三章 The const Qualifier——const 修饰符 使用const关键字来修饰改变变量声明和初始化。关键字const叫做限定符,限定声明的含义。名称的首字母大写或以k开头一般表示为常量。使用const定义符号常量。 创建常量的通用格式:const type name = value; 。 注意在声明中对const进行初始化。 const相对于#define...

算法导论学习笔记(二)

第三章 给出几种标准方法来简化算法的渐近分析,以及在算法分析中常见的若干函数的行为。 第三章 函数的增长 渐近记号 主要使用渐近家伙来描述算法的运行时间。 标准记号与常用函数 单调性:若m≤n蕴涵f(m)≤f(n),则函数f(n)是单调递增的。若m< n蕴涵f(m)< f(n),则函数f(n)是严格单调递减的。 向下取整与向上取整(p31) 模运算:对任意整...

算法导论学习笔记(一)

第一章 介绍算法的定义,以及相对于计算机中使用的其他技术来说算法的作用。 第二章 介绍一个贯穿本书的框架 第一章 算法在计算中的作用 算法 算法:任何两良定义的计算过程。该过程取某个值或值的集合作为输入并产生某个值或值的集合作为输出。即算法为输入转换成输出的计算步骤的一个序列。 实例 instance。问题实例由计算该问题解所必需的(满足问题陈诉中强加的各种约束的)...

CSAPP学习笔记(四)

第三章 详细学习一种特别的汇编语言,了解如何将C程序编译成这种形式的机器代码。 逆向工程(reverse engineering):通过研究系统和逆向工作,来视图了解系统的创建过程。 Intel处理器系列俗称x86。K 10^3,M 10^6,G 10^9。 程序编码 假设一个C程序,有两个文件p1.c和p2.c: gcc -Og -o p p1.c p2.c 编译选项-...

CSAPP学习笔记(三)

第二章 整数运算 无符号加法 算数溢出是指完整的整数结果不能放到数据类型的字长限制中去。 阿贝尔群(Ablian group):模数加法形成的一种数学结构,它是可交换和可结合的。有一个单位元0,且每一个元素有一个加法逆元。 无符号数求反

CSAPP学习笔记(二)

第二章研究在计算机上如何表示数字和其他形式数据的结伴属性,以及计算机对这些数据执行操作的属性。 要求我们深入研究数学语言,编写数学公式和方程式,以及展示重要属性的推导. 第二章 信息的表示和处理 三种重要的数字表示 无符号(unsigned)编码:基于传统的二进制表示法,表示大于或者等于零的数字。 补码(two’s-complement)编码:表示有符号整数。 浮点...

CSAPP学习笔记(一)

第一章通过一个C语言的hello小程序,对计算机系统的进行一个轮廓性的描述,并在其中穿插本书各个章节的的主要讲述内容。 第一章 计算机系统漫游 计算机系统由硬件和系统软件组成。 信息就是位+上下文 源程序:由值0和1组成的位序列 位又称为比特。8位被组织成一组,称为字节。每个字节表示程序中的某些文本字符。 系统中所有的信息——包括磁盘文件、内存中的程序、内存中存放的用户数...

搭建Shadowsocks笔记

“第一次搭梯子费了很多时间,记录一下过程。” 参考博文 注册Vultr账号 访问Vultr注册账号 或使用优惠链接注册(我用的是学长给的优惠码) 填写邮箱、密码(至少10个字符,并且有一个大写字母&一个小写字母&一个数字),最后点击后面的Create Account即可。注册完会收到一封验证邮件,验证即可。 购买VPS 验证并登录后我们会跳转...