Môn học nhằm làm cho sinh viên hiểu rõ những kiến thức cơ bản về kiến trúc của một hệ thống tính toán có lập trình, cấu trúc máy tính từ lớp thiết bị, thiết kế mạch logic, lập trình hệ thống, lập trình ứng dụng. Sau khi học xong môn này, sinh viên có thể phân tích vấn đề, thiết kế giải thuật, viết tốt các chương trình bằng C/C++ và hợp ngữ LC3 cho các phần mềm ứng dụng và hệ thống.

Môn học cung cấp cho sinh viên các kiến thức tổng quan cấu trúc luận lý số với transitor, cổng luận lý, mạch logic tổ hợp, các phần tử nhớ cơ bản, mạch logic tuần tự, kiến trúc máy tính với mô hình von Neumann; các cấp chuyển đổi từ cấp thiết bị tới cấp vấn đề; các kiểu dữ liệu số nguyên, số thực; các thao tác số học, thao tác luận lý, thao tác trên bit; bộ vi xử lý ảo LC-3 với đường truyền dữ liệu ở cấp vi kiến trúc của nó, ngôn ngữ máy, hợp ngữ với các lệnh thực thi, lệnh chuyển dữ liệu, lệnh điều khiển; các kiểu dữ liệu chuẩn, biến và các phép toán của ngôn ngữ C, các lệnh điều kiện: if_else, switch_case, các lệnh lặp: while, do_while, for, và một số lệnh khác: break, continue. Hàm, khai báo, hiện thực, ứng dụng, kiểm tra và bắt lỗi chương trình. Các cấu trúc dữ liệu tự xây dựng: struct, union, mảng và các ứng dụng của chúng với các giải thuật sắp xếp, danh sách liên kết: queue, stack. Con trỏ, khai báo, hiện thực và ứng dụng với các giải thuật sắp xếp, danh sách liên kết: queue, stack. Tập tin, các tập tin chuẩn của C. Đệ quy và lập trình đệ quy. Lập trình hướng đối tượng trên C++.

 

 

The course aims to make students understand well the basic knowledge on the architecture of a programming computing systems, computer structure from the level of devices, designing logic circuits, systems programming, application programming. After having studied the course, students can analyze problems, design algorithms, write C/C++, LC3 programs well for application softwares and system softwares.

Providing fundamental knowledges on digital logic structures with transitors, logic gates, combinational logic circuits, basic storage elements, sequential logic circuits, organization of computers with von Neumann model; levels of transformation from the level of devices to the level of problems; data types: integers, real numbers; arithmetic operations, logical operations, bit operations; the virtual processor LC-3 with its data path of microarchitecture level, its machine language and assembly language with operate instructions, data movement instructions, control instructions; scalar data types, variables, and operators of C language, conditional constructs: if_else, switch_case, iteration constructs: while, do_while, for, and more: break, continue. Functions, declaration, implementation, application, testing and debugging. Other data structures: struct, union, array and their applications with sorting algirithms, link lists: queue, stack. Pointer, delaration, implementation, and applications with sorting algirithms, link lists: queue, stack. File, standard input/output file of C. Recursion and programming. Object-oriented programming in C++.