Trung tâm đào tạo thiết kế vi mạch Semicon


  • ĐĂNG KÝ TÀI KHOẢN ĐỂ TRUY CẬP NHIỀU TÀI LIỆU HƠN!
  • Create an account
    *
    *
    *
    *
    *
    Fields marked with an asterisk (*) are required.
semicon_lab.jpg

Kiến trúc máy tính

E-mail Print PDF

Series này được dịch từ cuốn Computer Organization của David A.Patterson John L. Hennessy. Đây là cuốn sách kinh điển của sinh viên Computer Science bên Mỹ.

Series này sẽ giúp bạn:

- Hiểu quá trình biên dịch từ ngôn ngữ bậc cao sang mã máy và quá trình thực thi chương trình.

- Sự khác biệt giữa software & hardware, cách thức điều khiển hardware của software.

- Hiểu các vấn đề liên quan tới performance của một chương trình và cách tăng performance lên mức tối đa.

- Nắm được khái niệm xử lý nối tiếp & xử lý song song của máy tính.

Chương đầu tiên là tập hợp các kiến thức nền tảng mà bạn sẽ cần đến trong suốt quá trình nghiên cứu các chương sau. Nội dung của nó xoay quanh các khái niệm cơ bản về phần cứng, phần mềm, hiệu năng hệ thống và một ít kiến thức multicore.

1. Ẩn dưới một chương trình

Một ứng dụng phổ biến như hệ quản trị cơ sở dữ liệu hoặc bộ xử lý ngôn ngữ có thể được cấu thành từ hàng triệu dòng code và các thư viện phức tạp. Mặt khác, phần cứng của máy tính chỉ có thể thực thi các lệnh mức thấp. Để đi từ các dòng code trong một ứng dụng phức tạp xuống các lệnh đơn giản mức thấp, ta cần trải qua nhiều tầng của phần mềm, các tầng này dịch ngôn ngữ bậc cao thành các lệnh máy (mã máy).

 

Ta thấy nằm giữa Application software và Hardware là System Software.

System Software rất đa dạng nhưng có 2 loại quan trọng nhất là hệ điều hành – OS và Compiler – trình biên dịch.

OS đóng vai trò như một interface giữa chương trình và phần cứng, cung cấp các dịch vụ và chức năng phù hợp. Một số tính năng cốt lõi của OS có thể kể đến:

- Xử lý tác vụ I/O

- Cấp phát bộ nhớ

- Cung cấp các kênh chia sẻ dữ liệu & tài nguyên giữa các application

Compiler phụ trách một mảng quan trọng khác: dịch các đoạn mã ngôn ngữ bậc cao sang mã máy, từ đó, phần cứng sẽ thực hiện các tác vụ theo mã máy được dịch này. 

2. Từ ngôn ngữ bậc cao xuống mã máy:

Để “giao tiếp” với phần cứng, theo đúng nghĩa, bạn cần sử dụng tín hiệu điện. Tín hiệu đơn giản nhất mà máy tính có thể hiểu là “bật” và “tắt”. Nói cách khác, bảng chữ cái của máy tính, thay vì có 26 chữ như bảng chữ cái tiếng Anh thì nó chỉ có 2 ký tự 0 và 1.

Máy tính sẽ thực thi đúng như lệnh mà chúng ta đưa cho nó.

Lệnh – Instruction là tập hợp các ký tự 0 và 1.

1000110010100000

Lệnh này bắt máy tính phải cộng 2 số với nhau.

Việc giao tiếp trực tiếp với máy tính thông qua 2 ký tự 0 và 1 chẳng khác nào cực hình vì vậy người ta đã phát minh ra một chương trình dịch từ các chuỗi ký tự sang mã máy. Sản phẩm đầu tiên ấy mang tên Assembler.

add A,B

sẽ được Assembler dịch sang mã máy là:

1000110010100000

Máy tính khi nhận lệnh này sẽ cộng 2 số A và B với nhau.

Ngôn ngữ đầu vào cho Assembler gọi là Assembly và ngôn ngữ đầu ra là machine language – mã máy

Tuy nhiên ngôn ngữ Assembly chưa phải là loại ký pháp mà mọi người mong đợi. Nó vẫn quá phức tạp và tốn nhiều thời gian để dựng nên một sản phẩm từ assembly.

Dựa trên nhu cầu đó, các ngôn ngữ bậc cao lần lượt ra đời.

Sự ra đời của ngôn ngữ bậc cao đem lại nhiều lợi ích cho lập trình viên:

- Cho phép LTV tư duy tự nhiên hơn thay vì ép LTV phải tư duy giống với máy tính

- Nâng cao hiệu suất làm việc

- Cho phép chương trình độc lập với thiết bị. Việc chuyển đổi mã cho phù hợp với thiết bị hoặc môi trường hoạt động sẽ do compiler và assembler gánh vác.

3. Bức tranh toàn cảnh:

 

5 thành phần chính của máy tính gồm: đầu vào, đầu ra, bộ nhớ, kênh dữ liệu và bộ điều khiển.

Hai thành phần cuối là bộ điều khiển và kênh dữ liệu đôi khi sẽ kết hợp với nhau dưới cái tên “bộ xử lý”.

Hình minh họa phía trên là sơ đồ tổ chức của một máy tính. Sơ đồ này độc lập hoàn toàn với các công nghệ phần cứng.

Nguồn: embeddedsperm.wordpress

Bạn Có Đam Mê Với Vi Mạch hay Nhúng      -     Bạn Muốn Trau Dồi Thêm Kĩ Năng

Mong Muốn Có Thêm Cơ Hội Trong Công Việc

    Và Trở Thành Một Người Có Giá Trị Hơn

Bạn Chưa Biết Phương Thức Nào Nhanh Chóng Để Đạt Được Chúng

Hãy Để Chúng Tôi Hỗ Trợ Cho Bạn. SEMICON  

 

Hotline: 0972.800.931 - 0938.838.404 (Mr Long)

 

 

Related Articles

Chat Zalo