计算机科学一条线:从晶体管到机器学习

分类:计算机基础 标签:二进制 / CPU / 数据结构 / 算法 / 机器学习

摘要

本文以一条主线串联计算机科学核心概念:从最底层的晶体管与二进制,经逻辑门、CPU、内存、编程语言、数据结构、算法、编程范式,一路讲到机器学习与互联网/数据库,帮助读者建立整体认知框架。


一、从 0 和 1 开始

CPU 是一块硅片,集成着几十亿个晶体管,每个就是一个开关:通=1,断=0。一个开关是一个比特(bit),8 个比特组成一个字节(byte)。二进制就此存下信息。

# 字符经编码转为二进制(ASCII 示例)
print(ord('A'))         # 65
print(bin(ord('A')))    # 0b1000001

二、逻辑门、编码与内核

晶体管搭出逻辑门,组合成按布尔代数运算的电路。电脑只认机器码,字符靠 ASCII 等编码转二进制,调度这一切的是操作系统内核

三、CPU 和它的内存

CPU 自身不存数据,需配内存。访问内存分四步:取指 → 解码 → 执行 → 存结果(一个机器周期)。现代 CPU 每秒跑数十亿周期,多核并行。

四、编程语言与内存管理

  • 解释型(Python):逐行翻译执行;
  • 编译型(C、Go):先整体编译成可执行文件。

变量存数值,类型分文本与数字。浮点数底层是二进制分数,无限小数只能截断:

print(0.1 + 0.2)        # 0.30000000000000004
print(0.1 + 0.2 == 0.3) # False

C 需手动分配/释放内存(易段错误、内存泄漏);Python 靠垃圾回收兜底。指针存变量地址,可加减遍历内存,最灵活也最危险。

五、数据结构

结构 特征
数组 连续存储、读快、长度固定
链表 动态伸缩、需从头遍历
后进先出(LIFO)
队列 先进先出(FIFO)
哈希表 键→索引,冲突挂链表
点关系,最短路径/导航
二叉树 左小右大,查找快

六、算法

函数调用栈递归无终止条件会栈溢出记忆化缓存已算结果。效率看大 O(数据规模增长的消耗趋势)。二分查找每次砍半,远胜暴力枚举。

七、编程范式与机器学习

命令式(一步步教)与声明式(只要结果);面向对象将数据和行封装进,靠继承、多态复用。规则写不出的任务(如识图认蜜蜂)交给机器学习:训练集/测试集训练模型,用损失函数衡量差距并迭代调参。

八、互联网与数据库

互联网是铺在海底的线缆网络,设备有唯一 IPTCP 拆消息为数据包(网差丢包)。万维网之上:浏览器用 DNS 解析域名、HTTP 收发、HTML/CSS/JavaScript 构建页面,404 表示页面不存在。数据存关系型数据库主键唯一标识一行,外键关联表,SQL 操作;SQL 注入是往查询塞特殊字符篡改逻辑。

结语

懂这些只是第一步。计算机这行光看学不会,得自己动手敲、亲见运行结果。每天碎片化学几分钟,胜过囤一堆课。

posted @ 2026-09-15 11:36  codigger  阅读(36)  评论(0)    收藏  举报