inflearn logo

Học về cấu trúc máy tính từ con số 0 - Từ bóng bán dẫn đến CPU

Bạn có cảm thấy khó chịu khi có thể viết theo mã code nhưng lại không thể giải thích tại sao nó hoạt động không? Khóa học này bắt đầu từ một bóng bán dẫn duy nhất để kết nối trực quan các cổng logic, bộ nhớ, ALU và CPU mà không cần kiến thức tiên quyết về lập trình hay phần cứng. Bạn sẽ hiểu các lý thuyết trừu tượng giống như đang lắp ráp mô hình thông qua các tài liệu hình ảnh phong phú và ba dự án tổng hợp, từ đó hoàn thiện nền tảng lập trình cơ bản để có thể tự mình giải thích toàn bộ quá trình biến và hàm trở thành ngôn ngữ máy và được thực thi như thế nào.

13 học viên đang tham gia khóa học này

Độ khó Nhập môn

Thời gian Không giới hạn

Computer Architecture
Computer Architecture
Computer Architecture
Computer Architecture

Bạn sẽ nhận được điều này sau khi học.

  • Vượt qua mức độ chỉ ghi nhớ ngữ pháp và sao chép mã code, bạn có thể giải thích được chương trình mình viết thực sự thực thi như thế nào trong CPU và bộ nhớ.

  • Hiểu nguyên lý các biến, hàm, câu lệnh điều kiện và vòng lặp kết nối với ngôn ngữ máy và luồng dữ liệu, từ đó xây dựng nền tảng lập trình vững chắc để có thể suy luận dựa trên căn cứ ngay cả với những mã nguồn lạ hay lỗi phát sinh.

  • Bằng cách kết nối và hiểu các thuật ngữ cốt lõi như bộ nhớ, thanh ghi và địa chỉ, việc học cấu trúc dữ liệu và hệ điều hành sẽ trở nên dễ dàng hơn nhiều.

  • Bằng cách hiểu nguyên lý hoạt động của máy tính về lý do tại sao thời gian thực thi và mức sử dụng bộ nhớ của mã nguồn lại thay đổi, bạn sẽ có tiêu chuẩn để cân nhắc về mã nguồn hiệu quả hơn.

  • Kết nối mọi thứ từ bóng bán dẫn đến việc thực thi chương trình thực tế trên một bản đồ duy nhất, giúp bạn không bị lạc lối khi học các môn CS tiếp theo như hệ điều hành, mạng máy tính, và trình biên dịch.


⭐️Từ bóng bán dẫn đến CPU, học cấu trúc máy tính từ con số 0⭐️



Lắp ráp từ bóng bán dẫn
đến CPU


Nếu bạn cứ tiếp tục lập trình mà bỏ qua cấu trúc máy tính, cuối cùng bạn sẽ lại gặp phải cùng một bức tường.

Trong hệ điều hành, bộ nhớ và tiến trình trở nên mơ hồ; trong cấu trúc dữ liệu, chi phí thời gian và không gian trở nên khó hiểu; và trong việc gỡ lỗi, nguyên nhân gây lỗi lại trở nên mông lung. Nếu không biết CPU và bộ nhớ thực sự làm gì bên dưới lớp mã code, mỗi khi học một khái niệm mới, bạn sẽ phải cố gắng chịu đựng bằng cách học thuộc lòng thay vì hiểu rõ nguyên lý.

Khóa học này sẽ lấp đầy những khoảng trống đó từ những nền tảng cơ bản nhất. Không cần kiến thức tiên quyết về lập trình hay phần cứng, chúng ta sẽ bắt đầu từ một bóng bán dẫn (transistor) duy nhất, sau đó lần lượt kết nối các cổng logic, bộ nhớ, ALU và CPU. Thông qua các tài liệu hình ảnh phong phú và ba dự án thiết kế tổng hợp, bạn sẽ hiểu được toàn bộ quá trình các biến và hàm trở thành ngôn ngữ máy và được thực thi như thế nào.

Không có bài tập thực hành lập trình. Thay vào đó, không cần cài đặt hay chuẩn bị gì, bạn sẽ được theo dõi trực quan các mạch điện và luồng dữ liệu phức tạp, đồng thời được giải thích cặn kẽ tại sao mã nguồn lại hoạt động như vậy.

Nếu bạn hoàn thành nền tảng này ngay bây giờ, bạn sẽ hiểu các khái niệm xa lạ dễ dàng và nhanh chóng hơn nhiều khi học về hệ điều hành, cấu trúc dữ liệu, mạng và trình biên dịch sau này.

Những gì bạn có thể nhận được từ bài giảng này

Lắp ráp cấu trúc máy tính từ con số 0.

Thay vì học thuộc lòng các thuật ngữ trừu tượng, bạn sẽ được tận mắt kết nối quá trình bóng bán dẫn đi qua các cổng logic và mạch tính toán để trở thành CPU. Bằng cách thực hiện ba dự án thiết kế tổng hợp, bạn có thể tự mình giải thích được nguyên lý tính toán của máy tính.

Bạn có thể kết nối các khái niệm CS vốn rời rạc như bit, thanh ghi, bộ nhớ và câu lệnh thành một bản đồ duy nhất. Bạn sẽ xây dựng được một nền tảng vững chắc để không bị dao động bởi các thuật ngữ mới khi học về hệ điều hành, cấu trúc dữ liệu, mạng máy tính và trình biên dịch.

Hiểu nguyên lý các biến, hàm và câu lệnh điều kiện được kết nối với ngôn ngữ máy và luồng dữ liệu như thế nào. Vượt qua mức độ chỉ ghi nhớ và viết mã, bạn có thể suy luận có căn cứ về nguyên nhân gây lỗi cũng như sự khác biệt về hiệu suất, từ đó trăn trở để tạo ra những đoạn mã tốt hơn.

Phát triển thành một lập trình viên hiểu rõ các nguyên lý cốt lõi của máy tính như đang lắp ráp chúng.
Tôi sẽ luôn đồng hành và ủng hộ sự phát triển của các bạn.

Từ bóng bán dẫn đến CPU, hãy thấu hiểu máy tính từ con số 0


Bạn có thể viết theo mã nguồn, nhưng thật khó để giải thích tại sao chương trình lại hoạt động như vậy. Khi mở cuốn sách về cấu trúc máy tính, các thuật ngữ xa lạ ngày càng nhiều hơn, nhưng mối liên kết giữa các khái niệm thì mãi vẫn không thấy đâu.

Làm thế nào để giải quyết sự mông lung này?

Nếu học thuộc lòng riêng lẻ các khái niệm bit, cổng logic, bộ nhớ và câu lệnh, bạn sẽ nhanh chóng quên sạch và mỗi khi tiếp cận một môn khoa học máy tính (CS) mới, bạn lại phải bắt đầu học lại từ đầu.

Vì vậy, khóa học này sẽ không bỏ qua bất kỳ bước nào. Đầu tiên, bạn sẽ được xác nhận trực tiếp bằng mắt, sau đó kết nối các linh kiện đã học trước đó với các khái niệm tiếp theo, xây dựng dần dần từ bóng bán dẫn (transistor) cho đến CPU.

Sau khi hoàn thành khóa học, bạn có thể giải thích toàn bộ quá trình từ biến và hàm trở thành ngôn ngữ máy và được thực thi trong CPU như một luồng duy nhất.

Đối với những khái niệm càng cảm thấy khó khăn, tôi sẽ cho các bạn thấy bằng mắt trước, kết nối chúng một cách đầy đủ rồi mới giải thích thuật ngữ. Với một luồng kiến thức không bỏ qua bất kỳ bước nào từ bóng bán dẫn đến việc thực thi chương trình, tôi sẽ hướng dẫn để các bạn có thể tự mình giải thích được bản chất của mã nguồn.



Tổng quan khóa học

Cấu trúc máy tính: Từ con số 0

Phần 1

Giới thiệu khóa học và mục tiêu học tập

Chúng ta sẽ cùng nhìn lại toàn bộ hành trình từ một bóng bán dẫn (transistor) duy nhất cho đến khi CPU và chương trình được thực thi. Xác định các kiến thức tiên quyết và trình tự học tập, đồng thời đặt ra mục tiêu cho những gì sẽ hoàn thành trong ba dự án thiết kế tổng hợp.

Phần 2

Bit và Số nhị phân: Ngôn ngữ của máy tính

Hiểu lý do tại sao tất cả dữ liệu và lệnh trong máy tính đều được biểu diễn bằng 0 và 1. Tìm hiểu cách máy tính xử lý số và thông tin bằng cách kết nối các khái niệm số nhị phân, số thập lục phân, mã hóa và bù 2.

Phần 3

Transistor và mạch logic đầu tiên

Tận mắt xác nhận nguyên lý của bóng bán dẫn (transistor) điều khiển dòng điện bằng điện áp. Theo dõi quá trình hai bóng bán dẫn trở thành cổng NOT, từ đó hiểu được cách các công tắc vật lý trở thành điểm khởi đầu của việc tính toán.

Phần 4

Cổng logic: Ngôn ngữ cơ bản của chip

Từ AND·OR·NOT đến NAND·NOR·XOR, bạn sẽ nắm vững ngữ pháp cơ bản của logic mà mọi con chip đều sử dụng. Thông qua bảng chân trị và độ trễ cổng (gate delay), bạn có thể hiểu được cách thức mạch điện đưa ra phán đoán và thực hiện tính toán.

Phần 5

Đại số Boole: Toán học của logic

Bạn sẽ học cách chuyển đổi các logic phức tạp thành các mạch đơn giản hơn bằng đại số Boole và định luật De Morgan. Bằng cách kết nối bảng chân trị với bản đồ Karnaugh, bạn sẽ thiết lập các tiêu chuẩn để thiết kế các mạch nhanh hơn và hiệu quả hơn với ít cổng logic hơn.

Phần 6

Mạch tổ hợp: Phép toán tức thời

Chúng ta sẽ tìm hiểu quá trình bộ đa hợp (multiplexer), bộ giải mã (decoder), bộ so sánh (comparator) và bộ dịch (shifter) lựa chọn, giải mã và di chuyển dữ liệu. Qua đó, hiểu được các khối xử lý dữ liệu cơ bản trong CPU nhằm quyết định 'gửi giá trị nào đến đâu'.

Phần 7

Số học nhị phân: Triển khai phép cộng bằng mạch điện

Bắt đầu từ bộ cộng bán phần và bộ cộng toàn phần để hoàn thiện phép cộng và phép trừ nhiều bit. Bằng cách so sánh sự chậm trễ phát sinh khi số dư (carry) di chuyển và các phương pháp để giảm thiểu nó, bạn sẽ hiểu được lý do tại sao tốc độ tính toán lại thay đổi tùy theo cấu trúc mạch.

Phần 8

Dự án: Thiết kế ALU 4-bit

Hoàn thành quá trình thiết kế ALU 4-bit bằng cách kết nối các cổng logic, bộ cộng, bộ dịch và bộ đa hợp đã học trước đó lại với nhau. Xác nhận bằng hình ảnh khoảnh khắc mỗi bộ phận được kết hợp thành đơn vị tính toán của CPU.

Phần 9

Logic tuần tự và Xung nhịp: Mạch ghi nhớ

Bạn sẽ học được rằng việc phản hồi một phần đầu ra có thể giúp mạch điện ghi nhớ quá khứ. Bằng cách kết nối các chốt (latch), flip-flop và xung nhịp (clock), bạn sẽ hiểu được nguyên lý lưu trữ trạng thái và thay đổi theo thời điểm đã định trước.

Phần 10

Thanh ghi và Bộ nhớ: Lưu trữ bit

Kết hợp nhiều mạch ghi nhớ một bit để mở rộng thành thanh ghi và bộ nhớ. Bằng cách theo dõi quá trình chọn vị trí lưu trữ thông qua địa chỉ cũng như việc đọc và ghi dữ liệu, bạn sẽ hiểu được giá trị của biến thực sự được lưu giữ ở đâu.

Phần 11

Bus: Giao tiếp giữa các linh kiện

Bạn sẽ được học cách các bộ phận khác nhau của CPU chia sẻ dữ liệu mà không cần tăng số lượng dây dẫn vô hạn. Thông qua việc quan sát các tín hiệu địa chỉ, dữ liệu và điều khiển đi lại qua bus, bạn sẽ nắm bắt được luồng dữ liệu bên trong máy tính.

Phần 12

Máy trạng thái hữu hạn: Hoạt động đã được lập kế hoạch

Học về Máy trạng thái hữu hạn (FSM), nơi quyết định hành động tiếp theo dựa trên trạng thái và đầu vào. Thông qua quá trình chuyển đổi sơ đồ trạng thái và bảng trạng thái thành mạch điện, bạn sẽ nắm vững phương pháp thiết kế các hành động phức tạp bằng những quy tắc nhỏ.

Phần 13

Dự án: Thiết kế bộ điều khiển đèn giao thông

Áp dụng các quy tắc trạng thái, chuyển đổi và đầu ra của FSM vào bài toán điều khiển đèn giao thông thực tế. Bằng cách theo dõi toàn bộ quá trình từ việc sắp xếp các yêu cầu thành sơ đồ trạng thái đến thiết kế các mạch điện cần thiết, bạn sẽ xác nhận được cách sử dụng của logic tuần tự.

Phần 14

Cấu trúc Von Neumann: Chương trình lưu trữ nội bộ

Hiểu về cấu trúc Von Neumann, nơi lưu trữ lệnh và dữ liệu trong cùng một bộ nhớ. Cùng tìm hiểu ý tưởng cốt lõi giúp chương trình thay đổi hoạt động của máy tính mà không cần thay đổi hệ thống dây điện phần cứng, cũng như những hạn chế của nó.

Phần 15

Lệnh và ngôn ngữ máy: Ngôn ngữ của CPU

Đọc tập lệnh (ISA) mà CPU hiểu và cấu trúc bit của ngôn ngữ máy. Hiểu quá trình các chương trình do con người viết được chuyển đổi thành một chuỗi các lệnh để CPU thực thi bằng cách kết nối các lệnh tính toán, di chuyển dữ liệu và rẽ nhánh.

Phần 16

Datapath: Kết nối hoạt động của CPU

Kết nối bộ đếm chương trình (program counter), thanh ghi, ALU và bộ nhớ thành một đường dữ liệu (datapath) duy nhất. Theo dõi trực quan điểm xuất phát và lộ trình của các giá trị khi một lệnh được thực thi.

Phần 17

Điều khiển: Giải mã lệnh CPU

Bạn sẽ học nguyên lý giải mã các bit của lệnh để gửi tín hiệu điều khiển đến từng bộ phận trong đường dữ liệu (datapath). Bằng cách hoàn thiện chu trình lấy lệnh, giải mã và thực thi, bạn sẽ hiểu cách CPU tự quyết định hành động tiếp theo.

Phần 18

Dự án cuối cùng: Thực thi chương trình trên CPU

Tích hợp ALU, bộ nhớ, đường dẫn dữ liệu (datapath) và đơn vị điều khiển đã tạo ở trước đó thành một CPU duy nhất. Hoàn thiện toàn bộ cấu trúc bằng cách theo dõi đến cùng quá trình nạp, giải mã và thực thi của từng lệnh trong một chương trình ngôn ngữ máy đơn giản.

Phần 19

Kết thúc: Bản đồ cấu trúc máy tính và lộ trình học tập tiếp theo

Kết nối lại luồng từ bóng bán dẫn đến thực thi chương trình vào một bản đồ duy nhất. Xác nhận các khái niệm đã học kết nối như thế nào với hệ điều hành, cấu trúc dữ liệu, mạng, trình biên dịch và thiết lập hướng học tập tiếp theo.




Đối tượng đề xuất của khóa học

Khuyên dùng cho những đối tượng sau

Người mới bắt đầu lập trình, những người có thể làm theo cú pháp và mã ví dụ nhưng gặp khó khăn trong việc giải thích tại sao mã mình viết lại hoạt động.

Những người không chuyên hoặc các nhà phát triển tương lai muốn xây dựng nền tảng CS vững chắc trước khi học về cấu trúc dữ liệu, hệ điều hành và mạng.




Lưu ý trước khi học


Môi trường thực hành

  • Không có thực hành lập trình. Cũng không cần cài đặt chương trình riêng biệt hay thiết bị thực hành nào khác.

  • Bạn có thể học chỉ bằng video và tài liệu hình ảnh trong bất kỳ môi trường nào mình muốn như PC, máy tính bảng hay điện thoại di động.


Kiến thức tiên quyết và lưu ý

  • Không cần có kinh nghiệm lập trình cũng không sao.

  • Sẽ rất tốt nếu bạn tò mò về nguyên lý hoạt động của mã nguồn.

  • Chỉ cần có kiến thức về các phép tính số học cơ bản và sự tò mò về số 0 và 1 là đủ.


Tài liệu học tập

  • Với mỗi buổi học, chúng tôi cung cấp ghi chú bài giảng dưới dạng tài liệu PDF.

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Người mới bắt đầu đã học lập trình nhưng vẫn đang dừng lại ở việc học thuộc lòng cú pháp, cảm thấy bế tắc vì không hiểu tại sao mã nguồn lại hoạt động như vậy.

  • Những nhà phát triển tương lai muốn xây dựng nền tảng khoa học máy tính vững chắc trước khi học chuyên sâu về hệ điều hành, cấu trúc dữ liệu và tối ưu hóa hiệu suất.

  • Những lập trình viên mới bắt đầu có thể viết theo mã nguồn nhưng khi gặp lỗi lại không thể đoán được nguyên nhân, dẫn đến việc bế tắc trong quá trình gỡ lỗi (debugging).

  • Người học muốn nắm vững nền tảng chung về cách máy tính lưu trữ dữ liệu và xử lý lệnh trước khi học về cấu trúc dữ liệu, hệ điều hành và mạng.

  • Người chuẩn bị xin việc bắt đầu học lập trình dù không thuộc chuyên ngành liên quan, cảm thấy các thuật ngữ CS (Khoa học máy tính) rời rạc như những mảnh ghép và không kết nối được với nhau.

Cần biết trước khi bắt đầu?

  • Ngoài các phép tính toán học cơ bản, không cần thêm kiến thức tiên quyết nào khác.

  • Bạn cũng không cần có kinh nghiệm lập trình.

Xin chào
Đây là codingmax

Xác minh sự nghiệp

620

Học viên

49

Đánh giá

18

Trả lời

4.9

Xếp hạng

4

Các khóa học

Xin chào. Tôi là CodingMax, hiện đang vận hành kênh Trải nghiệm lập trình thú vị trên YouTube - CodingMax.
Tôi thích học hỏi và chia sẻ những kiến thức mới trong cuộc sống. 😊

 

📺 https://www.youtube.com/@coding-max
📘https://www.codingmax.net

 

Tôi sẽ luôn mang đến cho bạn những nội dung hữu ích và giá trị!

Thêm

Chương trình giảng dạy

Tất cả

103 bài giảng ∙ (11giờ 37phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Chưa có đủ đánh giá.
Hãy trở thành tác giả của một đánh giá giúp mọi người!

Khóa học khác của codingmax

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!

Ưu đãi có thời hạn

49.500 ₫

50%

2.082.165 ₫