getfromcode

尚硅谷嵌入式数字电路_从零搭建计算机教程

体系课
课程简介

为什么要从数字电路开始亲手搭一台计算机 很多人学嵌入式、学单片机,都是从寄存器配置、外设驱动开始写代码,写了很久也说不清一条指令到底是怎么被硬件执行的,时钟信号和数据通路之间是什么关系,为什么中断响应会有固定的延迟,甚至连高低电平、上拉下拉这些基础概念都只能靠死记硬背。这门课要解决的,就是这种“只会用工具、不懂底层原理”的问题:它不教你怎么调用现成的芯片库…

已有 38 人浏览 发布 2026-01-12 更新 2026-09-25

为什么要从数字电路开始亲手搭一台计算机

很多人学嵌入式、学单片机,都是从寄存器配置、外设驱动开始写代码,写了很久也说不清一条指令到底是怎么被硬件执行的,时钟信号和数据通路之间是什么关系,为什么中断响应会有固定的延迟,甚至连高低电平、上拉下拉这些基础概念都只能靠死记硬背。这门课要解决的,就是这种“只会用工具、不懂底层原理”的问题:它不教你怎么调用现成的芯片库函数,而是带你从最基础的逻辑门出发,一步步把加法器、寄存器、控制器、内存、输入输出设备拼出来,最终搭出一台能运行简单程序的完整计算机。

这种从底层往上走的学习路径,对嵌入式开发者来说价值非常高。你只有亲眼见过一个八位寄存器是怎么由八个触发器连起来的,才会明白为什么寄存器的位宽会影响运算效率;只有亲手接过总线和地址译码电路,才会理解单片机的内存映射、外设地址空间到底是怎么来的。很多平时写代码时遇到的“玄学问题”,比如时序不匹配、电平冲突、硬件毛刺,本质上都是数字电路层面的问题,只盯着软件代码看永远找不到根因。这门课就是把这些藏在芯片封装下面的细节摊开给你看,让你从“会用嵌入式”变成“懂嵌入式”。

适合什么基础的人来学

如果你是电子、计算机相关专业的学生,刚学完数电模电的理论课,但从来没动手搭过实际电路,这门课刚好能把你书本上的布尔代数、卡诺图、状态机这些知识点落地。课里的每一个理论点都会紧跟着对应的实操,比如刚讲完与或非门,马上就用实际的逻辑芯片在面包板上搭出一个简单的表决电路;刚讲完触发器,就接着做计数器、移位寄存器的实物验证,你能直接看到理论和实物的对应关系,不用再靠想象去理解抽象的波形图。

就算你不是科班出身,只是对计算机原理感兴趣的爱好者,或者是做上层软件开发想补底层知识的程序员,也能跟上节奏。课程开头会从二进制、数制转换、布尔代数这些最基础的内容讲起,不会一上来就甩复杂的电路图。唯一需要的是一点动手耐心,因为后面搭复杂电路的时候,接线量会比较大,需要你对着电路图一根线一根线核对。当然,如果你已经有一定的单片机开发经验,学这门课会更顺畅,你可以把自己平时用的外设功能和课里讲的硬件实现对应起来,收获会比纯初学者更大。

建议的学习顺序和重点模块

刚开始学的时候,不要跳过数字电路基础部分直接去看CPU搭建。很多人觉得门电路、布尔代数太简单,看个开头就快进,结果到了组合逻辑电路那块,遇到译码器、比较器的级联就开始懵,到了时序逻辑部分更是跟不上状态转移的思路。基础部分一定要慢,每讲完一种门电路,最好自己找个仿真软件或者拿面包板搭一遍,验证一下真值表是不是和理论一致。尤其是布尔代数的化简和卡诺图的使用,这是后面所有组合逻辑电路设计的基础,练熟了后面看复杂电路图会轻松很多。

过了基础部分之后,重点要放在时序逻辑和计算机体系结构这两块。时序逻辑里的触发器、寄存器、计数器是整个计算机的“记忆单元”,你要搞清楚时钟信号是怎么控制数据存储和更新的,建立时间、保持时间这些参数为什么会影响电路稳定性。到了体系结构部分,要跟着课程把冯诺依曼架构的各个模块拆开看,先理解CPU取指、译码、执行的完整流程,再去看每一个模块的电路实现。最后动手搭完整计算机的时候,建议分模块调试,先调通内存和总线,再调CPU的运算单元,最后接输入输出,不要一次性把所有线都接完再上电,不然出了问题很难排查。

学完之后能独立做什么

把整门课跟下来、并且跟着做完所有实验的话,你最直接的成果就是拥有一台自己亲手搭建的、能运行简单程序的计算机。这台计算机可能性能不高,只能做加减法、跑个简单的流水灯或者键盘输入显示,但它的每一根线、每一个芯片的功能你都能说清楚,从指令执行到数据存储的全流程你都能一步步推导出来。这种对计算机底层的透彻理解,是靠玩开发板、调库函数永远得不到的。你甚至可以在这个基础上自己扩展功能,比如加个串口通信模块、接个小型显示屏,或者给CPU加几条新的指令,完全自己定义这台计算机的能力。

更重要的是,你会获得一套“从底层分析问题”的思维方式。以后再做嵌入式开发,遇到外设工作不正常、通信时序出错、芯片功耗异常这类问题,你不会只会对着手册瞎改寄存器,而是能从数字电路的角度去分析可能的原因:是时钟频率太高导致时序不满足,是引脚电平驱动能力不够,还是总线竞争导致的数据错误。哪怕你以后做更复杂的嵌入式系统、接触FPGA或者芯片设计,这门课打下的数字电路和计算机体系结构基础也能让你快速上手,不用再从零开始补底层知识。

资料怎么配合练习效果最好

学这门课不能只看视频不动手,看的时候觉得懂了,真拿起面包板接线就会发现各种问题。建议每看完一个小节的理论和演示,就暂停视频自己照着搭一遍,搭完之后先自己推导预期的输出结果,再上电验证,如果结果不对,先自己查线、对照电路图找问题,实在找不出来再回去看视频里的接线细节。自己排查问题的过程,才是真正理解电路原理的过程,比看十遍演示都有用。

如果暂时没有条件买硬件元件,也可以先用数字电路仿真软件代替,课里讲的所有电路都可以在仿真软件里跑通,而且仿真里可以直接看每个节点的电平波形,排查问题比实物更方便。等把所有模块都在仿真里验证通了,再买元件搭实物,成功率会高很多。另外,建议准备一个笔记本,把每个模块的设计思路、接线要点、自己踩过的坑都记下来,后面搭完整计算机的时候,这些笔记会帮你省很多重复排查的时间。

课程介绍

尚硅谷嵌入式数字电路_从零搭建计算机教程是一套全面的视频教程,教授如何从零开始构建一台计算机。该教程包含100多个视频课程,总时长超过50小时。

目标受众

该教程适用于对计算机硬件和嵌入式系统感兴趣的爱好者、学生和初学者。

课程内容

教程涵盖广泛的主题,包括:

  • 数字电路基础:二进制、布尔代数、门电路
  • 组合逻辑电路:加法器、比较器、译码器
  • 时序逻辑电路:触发器、寄存器、时钟
  • 计算机体系结构:冯诺依曼架构、CPU、内存、I/O
  • 嵌入式系统:单片机、传感器、执行器
  • 从零搭建计算机:构建主板、CPU、内存、I/O设备

特点

  • 循序渐进:从最基本的数字电路概念开始,逐步深入。
  • 实践导向:通过动手实验和项目练习,强化学习。
  • 由行业专家教授:由拥有丰富嵌入式系统经验的专业人士讲授。
  • 真实世界的项目:亲自构建一台计算机,体验嵌入式系统的设计和实现。
  • 视频格式:高质量的视频内容,易于理解和遵循。

收益

通过本教程,学员将能够:

  • 理解数字电路和计算机体系结构的基本原理。
  • 设计和构建简单的数字电路。
  • 了解嵌入式系统的组成和工作原理。
  • 从头开始构建一台计算机,包括硬件和软件。

课程目录

/14-148-尚硅谷嵌入式数字电路_从零搭建计算机教程/
│├─1.课件
│├─2.资料
│├─3.视频
1.课件/
│├─尚硅谷嵌入式技术之从零搭建计算机1.0.5_6416.pdf 28.8MB
2.资料/
│├─2.资料.exe 163.7MB
3.视频/
│├─01_数字电路_从零搭建计算机引导.mp4 68.6MB
│├─02_从零搭建计算机课程介绍.mp4 358.8MB
│├─03_数电基础_二进制表示一切之表示数字.mp4 194.7MB
│├─04_数电基础_使用摩尔斯电码表示信息.mp4 234.8MB
│├─05_数电基础_二进制表示一切之表示文本.mp4 316.6MB
│├─06_数电基础_二进制表示一切之表示图片.mp4 286.3MB
│├─07_数电基础_二进制表示一切之表示声音和视频.mp4 148.8MB
│├─08_电路基础_使用仿真软件实现数字电路.mp4 184.7MB
│├─09_电路基础_第一个基础逻辑门电路-非门.mp4 119.1MB
│├─10_电路基础_第二个基础逻辑门电路-与门.mp4 86.2MB
│├─11_电路基础_第三个基础逻辑门电路-或门.mp4 136.8MB
│├─12_电路基础_由基础逻辑门电路拓展的不同门电路.mp4 181.3MB
│├─13_扩展电路_由半加器组合而成的全加器.mp4 189.9MB
│├─14_扩展电路_由1位加法器拼接多位加法器.mp4 275.3MB
│├─15_扩展电路_由半减器实现1位减法器.mp4 146.2MB
│├─16_扩展电路_由1位减法器拼接多位减法器.mp4 189.6MB
│├─17_扩展电路_使用与非门和或非门分别实现SR锁存器.mp4 270.1MB
│├─18_扩展电路_SR锁存器原理解析.mp4 57.9MB
│├─19_扩展电路_带en开关的SR锁存器.mp4 111.9MB
│├─20_扩展电路_带en开关的D锁存器.mp4 121.3MB
│├─21_扩展电路_D触发器的电路设计及原理介绍.mp4 148.9MB
│├─22_扩展电路_使用1位D触发器拼接多位寄存器.mp4 194.8MB
│├─23_扩展电路实战-带寄存器的加法器.mp4 182.1MB
│├─24_计算机原理_什么是冯诺依曼模型计算机.mp4 255.6MB
│├─25_计算机原理_计算机组成cpu介绍.mp4 171.3MB
│├─26_计算机原理_计算机组成内存介绍.mp4 199.3MB
│├─27_计算机原理_输入输出系统介绍.mp4 78.5MB
│├─28_计算机原理_程序执行逻辑及最终需要实现的计算机逻辑.mp4 245.5MB
│├─29_构建alu_1位复用器的实现电路.mp4 224.7MB
│├─30_构建alu_多位复用器实现计算功能选择.mp4 240.5MB
│├─31_构建alu_比较器构建.mp4 215.7MB
│├─32_构建alu_最初的计算单元.mp4 138.2MB
│├─33_构建简易内存_使用38译码器表示地址值.mp4 243.3MB
│├─34_构建简易内存_地址对应数据存储的简易实现.mp4 104.6MB
│├─35_构建简易内存EEPROM的简单电路实现.mp4 322.3MB
│├─36_组合cpu_添加内存录入数据的计算单元.mp4 134.1MB
│├─37_组合cpu_给计算单元添加计数器.mp4 133.4MB
│├─38_组合cpu_给计算单元添加halt信息停止计算.mp4 175.1MB
│├─39_组合cpu_完整自动化的计算单元.mp4 157.1MB
│├─40_组合cpu_编写控制指令halt信号.mp4 226.9MB
│├─41_组合cpu_编写str输入使能信号存储计算结果.mp4 141MB
│├─42_组合cpu_编写ld输出信号及selB解决高阻态.mp4 288.5MB
│├─43_组合cpu_编写ldA控制信号实现多次计算的重新加载.mp4 319.8MB
│├─44_组合cpu_编写jump指令计数器添加数据写入功能.mp4 234.4MB
│├─45_组合cpu_编写jump指令完成跳转操作.mp4 336.5MB
│├─46_组合cpu_补充添加en_a开关.mp4 157.6MB
│├─47_组合cpu_添加有条件跳转je指令修改无条件跳转指令名称.mp4 200.1MB
│├─48_组合cpu_编写je有条件跳转操作.mp4 289.5MB
│├─49_组合cpu_添加控制器使用控制码对应指令.mp4 605.6MB
│├─50_组合cpu_控制器的使用方法.mp4 109.8MB
│├─51_合并内存_合并内存原理的整体回顾.mp4 412.3MB
│├─52_合并内存_合并内存为1块需要实现的操作.mp4 318.4MB
│├─53_合并内存_替换指令存储和数据存储为指令寄存器和内存.mp4 192.3MB
│├─54_合并内存_修改计数器和内存地址位数为11位.mp4 123.4MB
│├─55_合并内存_修改控制器重构取指令.mp4 590.3MB
│├─56_合并内存_执行指令的指令对应.mp4 347.9MB
│├─57_合并内存_合并内存电路的完整改造.mp4 192.9MB
│├─58_合并内存之后完整的计算单元展示.mp4 531.2MB
│├─59_重构cpu_添加立即数功能电路修改.mp4 406.4MB
│├─60_重构cpu_立即数的实战操作.mp4 450MB
│├─61_重构cpu_添加B寄存器.mp4 297.2MB
│├─62_重构cpu_两个寄存器的指令集编写(上).mp4 186.4MB
│├─63_重构cpu_两个寄存器的指令集编写(下).mp4 1.1GB
│├─64_重构cpu_指令执行的演示操作.mp4 397.8MB
│├─65_重构cpu_程序对应汇编语句及机械码的过程.mp4 300MB
│├─66_计算机仿真_仿真效果展示.mp4 96.8MB
│├─67_计算机仿真_CPU的总线连接设计.mp4 270.7MB
│├─68_计算机仿真_完成CPU的封装.mp4 400.3MB
│├─69_计算机仿真_设计计算机的内存.mp4 150.4MB
│├─70_计算机仿真_设计计算机的硬盘和终端.mp4 175.5MB
│├─71_计算机仿真_计算机启动之后的引导程序.mp4 569.3MB
│├─72_计算机实战_计算机启动最终程序展示.mp4 310.1MB
│├─73_计算机实战_计算机拓展功能流水单展示.mp4 345MB
│├─74_从零搭建计算机课程总结.mp4 383.1MB

课程购买
课程价格
金币29
290金币限时优惠会员免费
销量:0
💎 开通会员每日免费下载,比单买更划算 →
支付成功后会自动显示下载资源云盘的链接!点击链接即可下载到本地。