Khoa học máy tính là về các thuật toán và không (nghiêm túc) về máy tính (và điện tử).
Như vậy, nghiên cứu các thuật toán (thậm chí số học cơ bản) có thể mang lại hiểu biết về khoa học máy tính và lập trình. Hãy nhớ rằng thuật ngữ "thuật toán" thậm chí là một cách diễn đạt của tác giả của một cuốn sách arithmetica ( al-Khwārizmī , khoảng năm 9 cent. CE).
Nghiên cứu các thuật toán có thể được thực hiện bằng các phương tiện cơ bản, nhưng nên cung cấp thông tin về lý do tại sao thuật toán hoạt động, làm thế nào nó xuất hiện và làm thế nào người ta thực sự có thể chứng minh rằng nó hoạt động chính xác.
Lịch sử đằng sau sự phát triển của khoa học máy tính, thuật toán và lập trình sẽ không bị đánh giá thấp. Ví dụ: máy tính của Babbage / Ada, máy Enigma, plankalkul của Konrad Zuse , ENIAC, v.v.
Sau đó, người ta có thể giới thiệu lập trình (và ngôn ngữ lập trình) như một cách để chính thức hóa các thuật toán. Điều này cũng có thể được thực hiện (đến một phần mở rộng lớn) bằng các phương tiện cơ bản.
Lưu ý , một số nghiên cứu đã chỉ ra rằng lập trình học peole có hai khó khăn chính trong việc hiểu (liên quan đến quá tải các ký hiệu, ví dụ như kiểm tra so sánh so với kiểm tra đẳng thức và hoạt động của máy RAM).
- Cấu trúc vòng lặp (ví dụ: trong khi, v.v.) có vẻ khó
- Bài tập so với kiểm tra bình đẳng, dường như cũng khó khăn.
Vì vậy, người ta có thể chắc chắn rằng những điều này được người dân nắm bắt và hiểu rõ ràng.
Ngoài ra, nếu bất kỳ máy tính nào có thể được truy cập (ngay cả một máy tính có thể được lập trình), điều này có thể được sử dụng để cung cấp các ví dụ ứng dụng và kinh nghiệm thực hành. Khác người ta có thể sử dụng một máy tính mô phỏng. Điều này có thể được thực hiện theo nhiều cách khác nhau, ví dụ một nhóm người có thể mô phỏng các bộ phận của máy tính và lớp có thể thiết kế các thuật toán để giải quyết các vấn đề khác nhau cho máy tính mô phỏng này và xem nó hoạt động như thế nào. Đây cũng có thể được xem là một trò chơi, hãy sáng tạo và thực hiện.
Sau đó, một số mô hình tính toán (trừu tượng) (ví dụ Turing Machines ) có thể được giới thiệu và liên quan đến tài liệu trước đây về thuật toán và chính thức hóa thành ngôn ngữ (lập trình).
Nếu một người muốn giới thiệu các thiết bị điện tử của một máy tính thực tế thì điều này cũng có thể được thực hiện thành hai phần.
Hãy nhớ rằng ngay cả trong các trường đại học, một số khóa học về kiến trúc điện tử và kiến trúc máy tính là lý thuyết (người ta không thực sự tiếp xúc với CPU hoặc thiết kế).
Vì vậy, một số nguyên tắc hoạt động của điện tử (và vật lý cơ bản) liên quan đến kiến trúc máy tính có thể được giới thiệu ( chất bán dẫn , vùng năng lượng thể rắn, cổng p-np, v.v.).
Sau đó, người ta có thể tận dụng các tài liệu trước đây về lập trình và thuật toán và giới thiệu các kỹ thuật (hiện đại) về thiết kế CPU (và mô tả) được sử dụng trong ngành công nghiệp ( Cổng logic , Flip-Flops , FPGA , VHDL , mạch CMOS , v.v.).
Điều này có thể được đưa vào sâu hơn, các vấn đề kiến trúc thiết kế CPU như song song, đường ống, bộ nhớ cache, địa chỉ vector, lập trình vi mô, DMA, v.v.
Chà, có lẽ điều này có thể là quá nhiều, nhưng được thêm vào để làm cho câu trả lời khép kín.