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 许可协议,转载请注明出处。