avatar
Articles
300
Tags
46
Categories
8

Home
Archives
Tags
Categories
About
Yuchen You
Search
Home
Archives
Tags
Categories
About

Yuchen You

3. 基础容器的实现
Updated2024-09-01|eecs281|cpp_basic
在使用抽象数据类型的时候,我们往往会需要考虑数据结构的存取api的使用逻辑,这我就需要考虑栈和队列了 数据的存储有两种形式: 连续的 array 型存储 和 离散的 linked list 型存储,我们接下来也会对比二者的效果 栈 Stack 栈的存储顺序是 LIFO, 即 last in - first out 需要两个指针: 指向栈底的 base_ptr 与 指向栈顶的 top_ptr , 其中 top_ptr 指向的是栈顶的下一个位置(悬空) Method Implementation Array Complexity List Complexity push 1. 可能需要申请二倍空间 2. 或者单纯将数据复制到 top 指针并且向后移动一位 top O(n)O(1) O(1)O(1) pop 向前移动 top 指针 O(1) O(1) top 返回 top 前一个指针并且去引用 O(1) O(1) size 用 top 地址减去 base 地址 O(1) O(1) empty 返回 base_ptr == top_ptr O(1) O(1) ...
1. 指令集架构 Instruction Set Architecture, ISA
Updated2024-09-06|cs_basic|computer_composition
ISA 可以看作是连接汇编层代码和硬件的操控指令集合, 例如 汇编会有 ADD r1, r2, r3 的指令,我们利用 ISA 就会将指令转换为 r2 + r3 -> r1 常见分类 Classification x86 架构 由 intel 公司开发,为 32 位处理器,一般在上世纪末的电脑中比较常见 由于 232≈22×230=4×10003=4GB2^{32}\approx 2^2 \times 2^{30} = 4\times 1000^3 = 4GB232≈22×230=4×10003=4GB 即地址循迹的范围小于等于 4GB, 也就是内存大小不超过 4G amd64 架构 由 amd 公司在上世纪发明,一般为 64 位处理器,后面 intel 公司也制造这个架构 现在被大量的 pc 使用 ARM 板 Advanced RISC Machine 设计公司是 arm, 非常适用于移动通信领域, 具有 低成本、高性能、低耗电的特性 现在用于大量的手机等可移动设备使用 近年来的 mac silicone 用 arm 架构 RISC-V 锐克五代 开源 学术界青睐,因为没有昂 ...
MOS 管从原理到推挽输出
Updated2024-08-31|hardware|hardware
MOSFET 工作原理 MOSFET 就是 MOS 场效应管,一般有耗尽型和增强型两种,一般由源极 S (Source), 栅极 G (Gate), 漏极 D (Drain) 三个极组成,我们一般将 漏极 D 接到电源正极,源极 S 接到电源负极 在这个图中,我们将 D 接到电源正极,S 接到电源负极,那么当 VGSV_{GS}VGS​ 为正时,电子会被吸引到 N 型半导体,形成导通通道,这时候 VDSV_{DS}VDS​ 为正,电流会从 D 流向 S,这时候 MOSFET 处于导通状态,我们称之为 开启状态;当 VGSV_{GS}VGS​ 为负时,电子会被排斥,导通通道消失,这时候 VDSV_{DS}VDS​ 为正,电流无法从 D 流向 S,这时候 MOSFET 处于截止状态,我们称之为 关闭状态。 换句话说,如果我们将 G 极通过 gpio 输入一个 高电平的话,整个三极管就会导通,电流就会从 D 流向 S,相当于一个导线;如果我们将 G 极通过 gpio 输入一个 低电平的话,整个三极管就会截止,电流就不会流动,相当于一个断路。 我们可以将一个 mos 三极管当作一个开关来用, ...
1. 概统定义
Updated2024-09-01|math|probability
实验与样本 我们称呼一个过程,结果无法提前预测,为一个实验 experiment 我们称呼一个样本空间 sample space, 写作 SSS 为一个实验的结果的集合 例子 我们将一枚硬币投掷两次,正面朝上 Head 与 背面朝上 Tail 的样本空间: S={HH,HT,TH,TT}S = \{HH,HT,TH,TT\} S={HH,HT,TH,TT} 那么对于 head 数量的样本空间写作: S={0,1,2}S= \{0,1,2\} S={0,1,2} 事件分类 一般事件 simple event 只发生一次的事情 复合事件 compound event 发生多次的事件 零事件 null event 发生次数为 0 的事件 样板空间运算符号 补集 complement 写作 AcA^cAc 表示的是 总空间 SSS 中不在 AAA 内的部分 交集 intersection 样本存在于 A 和 B 中 并集 union 样本存在于 A 或者 B 中 德-摩根定律 DeMorgan’s Law (A∩B)c=Ac∪Bc(A\cap B)^c = A^c\cup B^c (A∩B)c ...
10. PID 控制
Updated2024-08-05|physics|dynamics
你重生了,这一世,你是云汉交龙电控部的成员,部长要求你现在完成哨兵机器人的pitch轴云台调试,否则你会受到那个男人的锐评。那么我们从头从原理上开始理解一下 pid 的数学工程原理吧。 从闭环控制到 控制器 首先我们明确,pid控制是基于闭环控制的,也就是说,我们会用输出结果作为反馈和输入值进行比较,大了就减小,小了就增大,最后收敛到目标值 那么我们令输入参考值为 rrr 输出值为 yyy 我们经过二者的对比得到 r−y=er - y = er−y=e 定义为 error 误差,同时,我们 在控制对象的时候要将这个过程分成被控对象和控制器两部分 (名词命名、定义详见江苏教育出版社高中通用技术教科书,浙江省2022年技术高考教材),比如对于一个空调房的温度控制,被控对象是房间,其自身的温度响应符合我们以前学过的热力学系统,即其温度对输入热量可以表述为一个传递函数,我们称之为 plant 写作 PPP. 类似的,空调房的空调本调就是一个控制器 (controller) ,其控制的过程就是一个传递函数 CCC 我们分开两部分进行描述就可以将被动系统和主动控制器进行拆分,从而更加明确控制参数对 ...
3. 寄存器 与 计数器 register and counter
Updated2024-08-05|cs_basic|computer_composition
对于计算机而言,我们常常会讨论到“磁盘”的概念,磁盘就是存储数据信息的重要电子元件,那么,这里就让我们从头开始,看看怎么存储 1 位的数据,再到怎么存储 1 字节的数据,以后再以此类推,我们就可以做出更大的“寄存器”了 1 位寄存器 首先,我们要明确这个寄存器的必备功能: 写入以及输出 写入应该需要有一个信号,不能随便来一个数据就能写入; 输出也要有一个信号,需要的时候输出 输入实现 首先,在输入的时候如果写入信号为 假,那么我们就要保持输出上一帧的数据 那么我们就要想到使用一个常见的基本电路元件 —— 延迟线,即能将输入的信号晚一帧输出 如果将一个延迟线首尾相连并在这个回路中接入一个输入信号(不考虑不输出时候的短路可能性),那么这个回路就会实现锁存. 但是这时候我们就会面临一个数据选择的问题: 锁存还是更新?那么我们就用一个数据选择器进行分流,通过 写入 信号对选择器控制 这样我们就实现了1位信号的存储 输出实现 这个很简单,我们使用二进制开关就能明确数据输出与否 8 位寄存器 很简单,我们将8个1位寄存器并联就得到了8位寄存器 计数器 我们需要一个优秀的电子元件来记录我们做了一项 ...
1. 继电器,电子管和晶体管
Updated2024-08-05|cs_basic|computer_composition
继电器 relay 输入小电流,输出大电流,起到中继的作用 为什么bug和虫子是一个意思? 在早期ibm制造的继电器计算机中,经常会在故障的继电器中找到死掉的虫子,于是我们称计算机的问题为 bug 真空管 热电子发射是真空条件下加热金属的时候电子从材料表面逸出的现象 每一秒可以开闭数千次 与非门 符号 NAND 这是一切逻辑门的基础,我们首先要用原理图来认识它 从这里我们可以看出与非门最简单的形式就是采用两个开关进行控制,但是电路里面要实现自动化,我们就不能用销号人力的开关了,不如使用三极管,通过给基极传输高低电平实现通断来完成开关的功能 TTL 与 CMOS 控制 以下两个电路我们分别使用 TTL 和 CMOS 电路来实现功能 非门 通过将与非门两个输入端接入输入信号就是非逻辑了 与门 将与非门和非门串联 或非门 通过 德摩根定律,利用 A‾+B‾=A⋅B‾\overline{A}+ \overline{B} = \overline{A \cdot B}A+B=A⋅B 我们可以用两个输入分别取非逻辑实现或非门 或门 通过串联或非门和非门实现 恒高电平 ON 将非和原逻辑接入或 ...
9. 共振与滤波 Resonance and Response
Updated2024-08-05|physics|dynamics
什么是滤波器 对于传递函数 H(s)=as+aH(s) = \frac{a}{s+a}H(s)=s+aa​ 我们会发现,在频率较低的时候,∣H(s)∣|H(s)|∣H(s)∣ 的值接近于1且几乎不变,而在较大的 ω\omegaω 下,我们有更低的 Gain 那么对于输入 F(t)F(t)F(t) 内容,如果其频率小于 corner 那么其衰减率并不会受到很大的影响,而如果其频率大于 corner 那么就会受到较明显的衰减,我们称这个现象是 低通滤波器 Low pass filter 同理,我们通过对允许通过的频率的分类将滤波器分类为 低通滤波、高通滤波 (high-pass filter) 以及 带通滤波器 bandpass filter 截断频率 cut-off frequency 表示最高的通过至少一般能量的输入频率,在一般的振动中 E∝M2E\propto M^2E∝M2 所以说我们一般考虑振幅的平方即是能量比值 例如对于 H(s)=1s+1H(s) = \frac{1}{s+1}H(s)=s+11​ 就是一个 一阶 低通滤波器,截断频率 1 rad/s 但是对于截断频率它还有一 ...
设计与制造II 期末复习
Updated2024-08-05|physics|dynamics
动力学分析: 速度, 加速度, 角加速度 平面运动 plane motion 位移 rB=rA+rB/Ar_B = r_A + r_{B/A} rB​=rA​+rB/A​ 速度 velocity 对于在一个刚体上的点 A, B, 我们有: vB=vA+ω×rB/Av_B = v_A + \omega \times r_{B/A} vB​=vA​+ω×rB/A​ 正弦定理 sin law 对于常见的 crank-slider, 即四连杆且有一个一维运动滑块, 我们连接 pin 和滑块得到一个三角形,对于这个三角形我们可以做正弦定理进行分析,详见 slides L9: 19 余弦定理 cos law 对于 crank-rocker 即非滑块四连杆,我们有一个四边形,通过连接对角线我们有两个三角形,对各自进行余弦定理运算可以获得对角线长度表达式,那么又变回了三角形形状分析即正弦定理分析 瞬心 instaneous center 对于刚体其所有点运动速度的垂线交点就是瞬心,对于平面运动,我们可以通过两个点的速度方向和大小来确定瞬心位置。瞬心的运动速度为 0 因此整个刚体相对于瞬心的运动可以看作 ...
2. 欧几里得算法 Euclidean Algorithm
Updated2024-07-24|math|discrete_math
最大公因数 Great Common Divisor 对于 a,b∈Za,b\in \mathbb Za,b∈Z 不为0,那么ab的最大公因数为 gcd(a,b)\text{gcd(a,b)}gcd(a,b) 或者简写为 (a,b)(a,b)(a,b) 且常用字符 ddd 表示,即 d ∣ ad\ |\ ad ∣ a, d ∣ bd\ |\ bd ∣ b (我们可以用 d ∣ m∧d ∣ r⇒d ∣ gcd(m,r)d\ |\ m \land d\ |\ r \Rightarrow d\ |\ gcd(m,r)d ∣ m∧d ∣ r⇒d ∣ gcd(m,r)) 如果有常数 c ∣ a∧c ∣ bc\ |\ a\land c\ |\ bc ∣ a∧c ∣ b 那么有 c ∣ dc\ |\ dc ∣ d 常见原理证明 原理1 对于 m,n∈N\{0}m,n\in \mathbb N\backslash\{0\}m,n∈N\{0} 如果 m ∣ nm\ |\ nm ∣ n 那么 gcd(n,m)=mgcd(n,m) = mgcd(n,m)=m 原理2 对于 m,n∈N\{0}m,n\in\m ...
1…151617…30
avatar
Yuchen You (Wesley)
Articles
300
Tags
46
Categories
8
Follow Me
Announcement
This is my Blog
Recent Post
7. 分布式事务系统与 Spanner2025-11-28
6. Amazon Dynamo 系统2025-11-28
5. Transaction and ACID DB2025-11-28
4. Database Storage Structure2025-11-06
5. Consensus: Paxos Made Simple (not to me)2025-10-16
Categories
  • ai27
  • cpp8
  • cs_basic27
  • cybersecurity17
  • eecs28110
  • hardware2
  • math69
  • physics21
Tags
linear_algebra database virtual_machine sql thermal transformer machine_learning p_np complex_analysis field algorithm cpp_basic container cv hardware distributed_sys optimization chaos_system unix discrete_math cyber_security dynamic computability memory information_theory system_failure operating_system Model mse logic Consensus attention golang clip deep_learning structure kernel probability ODE statistics
Archives
  • November 20254
  • October 20255
  • September 202523
  • August 20253
  • July 20259
  • June 20253
  • May 202514
  • April 20253
Info
Article :
300
UV :
PV :
Last Update :
©2020 - 2025 By Yuchen You (Wesley)
Framework Hexo|Theme Butterfly
welcome to my blog!
Search
Loading the Database