Project coding style Python Github commit -m "Update .gitignore" 12345posts/*.in__pycache__/storage/.vscode/ 命名标准 class 首字母大写,没有下划线 package_name、module_name、function_name、variable_name都可以用下划线 一般函数 do_sth的结构 结构 12345678910 2023-10-24 CS
Games101 Assignment 0 给定一个点 P = (2,1),将该点绕原点先逆时针旋转 45◦ ,再平移 (1,2),计算出变换后点的坐标(要求用齐次坐标进行计算)。 仿射变换 - 三维点 (2, 1, 0) 12345678910111213141516171819202122232425262728293031323334353637383940414243// Eigen库的api// 确定矩阵 2023-09-25 Game
Effective C++ Temporary Object 运算符重载后,不改变运算的顺序 123456789101112131415161718192021222324252627282930313233#include <iostream>#include <string>#include <vector>using namespace std;class Node { 2023-09-19 CS
CS224N NLP 前置知识 Encode embedding 将词汇表示出来 one-hot 每个词都是正交向量,如何表示相似性。 dense vector: a word meaning is given by the words that frequently appear close-by word embedding - similiar contexts vector length (dimention) 2023-07-20 NLP
CS143 Compiler 前置知识 Interpreter 解释器:程序与数据 输出output 在线 (script) 速度更慢 Compiler 编译器:Program -> C -> exec (+ data) -> output 离线 Formulas translation - Fortran Linking 链接 1234567891011121314151617181920212223242 2023-07-20 CS
CS:APP Proxy Lab记录 前置知识 代理软件,用于接受并转发HTTP请求。借助socket数据结构转发文件 -> 并行处理请求 -> 设置cache返回最近获得的网页内容。 网络代理Proxy,隐藏真实的目的IP,核心在于网络层的包装,应用层一般有https加密,后包装发给代理服务器,代理服务器解包装再发给服务端。 透明代理:借助网关,将所有的流量重定向到代理器,设备不需要做出设置。 I/O unix i/o 2023-07-17 CS
CS:APP Malloc Lab记录 前置知识 内存对齐 从Cache和内存的读写方式可以看出,内存采用 参考CPU读取内存的方式, 常见分配方式 MMU处理虚拟内存借助页表映射,而对于C语言而言,malloc得到的堆中的虚拟内存,需要连续的虚拟空间。 借助内置malloc申请一大块空间,就可以模拟这个过程。 有多种数据。 每一块包括前缀、后缀,顺序访问 双向链表 分块 + 二进制分块 特别的系统,只存在2^i的对象,可以不断二分分 2023-07-12 CS
CS:APP Shell Lab记录 前置知识 系统调用 C提供了异常处理,比提供了全局变量 errno(int),作为错误类型。 注意main函数中 if (pid == 0) { xxx } 的部分是子进程运行的代码。而main中剩余部分与Handler都属于父进程,其中包括所有对jobs的维护操作。 每次执行系统调用结束,从内核态转换态,包括进程结束等过程,每次Switch到当前进程时,都会检查一下signal,同时调用对应的h 2023-07-05 CS
CS:APP Arch Lab记录 前置知识 Y86 esp - rsp 第三版CSAPP全部使用8Byte Y86指令集对应Y86处理器,Sequential operation,每个周期执行一个完整的Y86指令,可以拆分出五个阶段,执行指令流水线(?数字电路的实现) programmer-visible 程序员可见的状态,编译器 / 用汇编代码写程序的人,Y86与x86对应的寄存器结构是类似的,栈指针、传参、返回参数、条件码、P 2023-06-29 CS
CS:APP Cache Lab记录 前置知识 多级缓存 本质是基于代码运行时的时间局部性与空间局部性,往往顺序取指令,顺序访问内存中的元素,一段时间内选择的内存区域也往往相同。 具体流程 Part A 在c语言的文件中模拟出以上结构的二级缓存。该实验只模拟数据Cache,因此忽视I开头的请求,只需要考虑L load,读取数据;S store 存储数据;M modify load 后 store。-v不必要但有助于debug 提取参 2023-06-27 CS