type
status
date
slug
summary
tags
category
icon
password
P4 二进制
- 1 byte字节=8bit比特
 
- ASCll CODES:二进制代表字母、数字、符号...
 
- Unicode::统一编码方案
 
- NOT AND OR XOR异或
 
- XOR: 1+1=0 1+0=1 0+0=0
 
P5 ALU算数逻辑单元
ALU组成:一个算数单元+一个逻辑单元
算数单元
- Half Adder半加器:输出 Carry进位 与 Sum和
 
- Full Adder全加器:2Half Adder+1OR 进位计算
 
- overflow:表示的数字大小超出(256 in 8bit)
 
逻辑单元
- 8bit ALU:输出Flags表示状态(overflow zero negative)
 
P6 寄存器Registers和内存RAM
Register寄存器
- Latch锁存器:输入线,允许写入线,输出线
 
- Register: a group of Latches
 
- 寄存器存储数字的位数称为 位宽
 
- multiplexer多路复用器:输入二进制地址选中特定目标线
 
- RAM:随机存储器,可以读取任何地址的内存
 
P7 中央处理器CPU
- CPU phases:fetch取指令→decode解码→execute执行
 
- Clock:控制程序执行的节奏,单位赫兹Hz
 
P8 指令Instructions和程序Programs
- 指令Jump(带条件):可实现循环
 
- 指令Halt:终止
 
P9 高级CPU设计
CPU CHIP中的缓存CACHE:RAM与CPU通过BUS(总线)传输数据存在延迟,CPU空等数据。CACHE可存储RAM传输的批量数据
- 同步:发生于缓存已满而CPU需要缓存时
 
- 脏位Dirty Bit:记录缓存数据是否更改(与RAM数据相比)
 
指令流水线pipeline
- 在一个Clock周期内执行多条指令(fetch i+1 while decode i)
 
- 指令依赖性:指令逻辑顺序 造成停工时间
 
- 推测执行speculative execution:遇到JUMP时预测结果提前将指令置于流水线;预测错误时需要清空流水线pipeline flush
 
用多核处理器Multi-Core Processors同时运行多个指令流
- 1 CPU:multiple processing units
 
多CPU运行Use CPUs
P10 早期编程方式
- 冯诺依曼计算机:1处理器(带有算数逻辑单元ALU)+数据寄存器+指令寄存器+指令地址寄存器+RAM内存(存储数据和指令)
 
P11 编程语言发展史
- 机器语言/机器码:二进制
 
- 伪代码Pseudo-Code:对程序的高层次描述
 
- 汇编器Assembler:文字指令→二进制指令
 
- 编译器Compiler:高级语言→汇编/机器码
 
P12 编译原理:语句和函数
- 库Libraries:预先写好的函数集合
 
P13 算法入门Algorithms
- 排序算法Sorting:选择排序Selection、归并排序Merge
 
- 算法的复杂度Complexity:算法的输入大小与运行步骤之间的关系,表示运行速度的量级。表示方法:big O notation
 
- 图搜索Graph Search:Dijkstra算法
 
P14 数据结构
- 节点Node( Struct { variable&pointer } )
 
链表Linked List(null代表其尽头)
- queue队列:FIFO先进先出
 
- stack栈:LIFO后进先出
 
- 树结构Tree
 
- 图结构Graph
 
P15 Alan Turing
- 验证码:公开图灵测试
 
- 图灵测试:测试机器能否表现出与人等价或无法区分的智能
 
P16 软件工程Software Engineering
- 面对对象编程:将函数打包成对象Object
 
- 面对对象核心:隐藏复杂度,选择性公布功能
 
概念
- 文档Documentation
 
- 程序编程接口API(Application Programming Interface)
 
- 集成开发环境IDE(Integrated Development Environment):帮助写代码、测试代码Debug
 
版本控制Version Control
- Repository仓库:check it out、master、roll back回滚
 
- 质量保证测试QA(Quality Assurance testing)
 
- Alpha:内部测试
 
- Beta:公众测试
 
P18 操作系统Operating Systems
- OS:具有操作硬件的特殊权限,可以运行和管理其他程序。作为软件和硬件之间的媒介
 
- 批处理Batch Processing:自动顺序处理程序
 
- 多任务处理MultiTasking:多个程序可以同时运行,在单个CPU上共享时间。给每个程序分配内存块以避免丢失数据
 
- 虚拟内存Virtual Memory:内存虚拟化,逻辑上顺序存放,物理层面被隐藏抽象
 
- Unix操作系统:内核+工具
 
P20 文件系统
- 元数据meta data:关于数据的数据,也叫文件头Header
 
- 文件底层具有一致性:二进制
 
- 目录文件:存储文件的元数据。例如:File A存储于Block 1,5中
 
- 文件删除:在目录文件中删除记录,直至被覆盖之前原文件仍存在
 
- 碎片整理:计算机将数据来回移动,排列成正确的数据
 
P21 压缩Compression
- 无损压缩LossLess:没有丢失任何数据,解压缩后与原数据一致
 
- 游程编码Run-Length Encoding:删除重复数据
 
- 霍夫曼编码Huffman Encoding:频率更高的数据用更短的编码表示
 
P26 图形用户界面GUI(Graphical User Interfaces)
- 事件驱动编程Event-Driven Programming
 
P28 计算机网络Computer Networks
- 局域网LAN(Local Area Networks):计算机近距离构成的小型网络
 
- 广域网WAN(Wide Area Networks):连接不同地区局域网或城域网计算机通信的远程网
 
P29 互联网Internet
- IP:把数据包送到正确的计算机
 
- UDP:把数据包送到正确的程序
 
- TCP传输控制协议:Transmission Control Protocol
 
- DNS域名系统:将域名和IP地址一一对应
 
P30 万维网The World Wide Web
- 超链接Hyperlinks
 
- URL统一资源定位器:Uniform Resource Locator
 
- HTTP超文本传输协议:HyperText Transfer Protocol
 
- HTML超文本标记语言:HyperText Markup Language
 
P31 计算机安全Cybersecurity
- 保护系统和数据的:保密性、完整性、可用性
 
- 保密性:只有有权限的人才能读取计算机系统和数据
 
- 完整性:只有有权限的人才能使用和修改计算机系统和数据
 
P33 密码学Cryptography
- 对称加密&非对称加密
 
P34 机器学习和人工智能Machine Leaning&Artificial Intelligence
- 机器学习:计算机从数据中学习,自行做出预测和决定
 
- 机器学习的目的:最大化正确分类,最小化错误分类
 
- 支持向量机SVM:用任意线段切分决策空间
 
P35 计算机视觉CV
- 计算机视觉的目的:让计算机理解图像和视频
 
- 卷积:Convolution
 
P36 自然语言处理NLP
- Natural Language自然语言
 
- 作者:mini4ter
 - 链接:www.mini4ter.top/article/crashcoursecs
 - 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
 

![【计算机科学速成课】[40集全/精校] - Crash Course Computer Science_哔哩哔哩_bilibili](https://www.notion.so/image/http%3A%2F%2Fi2.hdslb.com%2Fbfs%2Farchive%2F3d37686d1cb53309504f5f35955257a44b4e28fb.jpg?table=block&id=95f7280f-483e-4ba8-ad74-e895fccefbb1&t=95f7280f-483e-4ba8-ad74-e895fccefbb1)

