Compiler là gì ? Trình biên dịch là gì

Có rất nhiều thuật ngữ tiếng anh mà nhiều người đang muốn tìm hiểu, trong bài viết này, ngu công nghệ sẽ giải thích giúp bạn hiểu compiler là gì, trình biên dịch là gì ? Hãy cũng chúng tôi tham khảo ngay bài viết với tựa đề : ” Compiler là gì? Trình biên dịch là gì ” nhé

Compiler là gì ?

Compiler là gì? (Trình biên dịch hay còn gọi là Phần Mềm Biên Dịch) là một chương trình mà trên cơ sở đó máy tính làm công việc dịch một chuỗi các câu lệnh được viết bằng một ngôn ngữ lập trình ( hay còn gọi là ngôn ngữ nguồn hay mã nguồn).

Compiler là gì?
Compiler là gì?

Xem thêm : Meraki là gì ? Ưu nhược điểm Meraki mang lại gồm những gì

Thành một chương trình tương đương nhưng ở dưới dạng một ngôn ngữ khác là ngôn ngữ máy tính mới (hay còn gọi là ngôn ngữ đích). Chương trình mới được dịch ra chúng ta sẽ gọi là mã đối tượng.

Cái tên Compiler đang được rất nhiều các nhà sản xuất chip coi trọng nhất, luôn dẫn đầu tiên phong trước tiên trong lĩnh vực sản xuất chip công nghiệp.

Nó không đơn thuần chỉ nổi tiếng bởi cánh chip xử lý được sản xuất dưới công nghệ bán dẫn tốt nhất, IDE tốt, hơn nữa Compiler còn âm thầm giúp cho vi điều khiển giao tiếp với con người một cách hết sức thuận tiện thông qua một ngôn ngữ cấp cao gọi là C.

Lịch sử của Compiler

Các trình biên dịch Compiler bước đầu được thử nghiệm và phát triển từ thập niên 1950. Tuy nhiên trong số đó chỉ có nhóm làm việc với FORTRAN được dẫn đầu bởi ông John Backus là thành công trong việc giới thiệu trình biên dịch một cách hoàn chỉnh nhất đầu tiên trong năm 1957.

Và trên cơ sở hoàn chỉnh đó COBOL tiếp tục phát triển và sớm có được trình biên dịch trên nhiều loại kiến trúc trong năm 1960.

Lịch sử của Compiler là gì?
Lịch sử của Compiler là gì?

Với việc sử dụng ngôn ngữ cấp cao lần lượt đã tạo ra các trình biên dịch mới ra đời vào đầu thập niên 1970 khi đó trình biên dịch C và Pasal đã được xây dựng nên từ chính ngôn ngữ của chúng. Xây dựng một trình biên dịch tự lập chính là một cái bẫy khởi động.

Chúng ta có thể hiểu đơn giản là, phiên bản đầu tiên của trình biên dịch tự lập này có thể cho phép một ngôn ngữ phải được biên dịch từ một trình biên dịch mà được viết trong một ngôn ngữ khác hoặc chính là, bắt chước theo cách được tạo lập trong trình biên dịch Lisp, với cách biên dịch bằng cách này thì trình biên dịch này sẽ cùng nằm trong một phần mềm thông dịch.

Chức năng của Compiler là gì?

Chức năng chính của compiler là gì bạn đã biết chưa. Compiler với chức năng phân khúc nhỏ các chương trình nguồn thành nhiều phần và áp những cấu trúc ngữ pháp lên chúng một cách hoàn chỉnh.

Chức năng của Compiler là gì?
Chức năng của Compiler là gì?

Xem thêm : Sóng RF là gì? Sóng RF có lợi hay có hại cho sức khỏe

  • Cho phép bạn xây dựng chương trình mục tiêu mong muốn từ IR và hơn nữa cũng tạo ra bảng ký hiệu.
  • Biên dịch mã nguồn và nhanh chóng phát hiện báo cáo các lỗi trong mã nguồn.
  • Quản lý lưu trữ tất cả các mã và biến trong máy.
  • Hỗ trợ biên dịch một cách riêng biệt.
  • Đọc, phân tích toàn bộ chương trình tương đương về mặt ngữ nghĩa.
  • Cho phép dịch mã nguồn trở thành mã đối tượng tùy vào loại máy.
  • Trình biên dịch giúp xác minh toàn bộ thông tin chương trình. Do đó sẽ không có lỗi cú pháp hoặc ngữ nghĩa.
  • Tệp thực thi sẽ được tối ưu hóa cao nhất bởi trình biên dịch. Do đó tệp thực thi cho tốc độ nhanh hơn.
  • Compiler cho phép bạn tạo cấu trúc bên trong trong bộ nhớ.
  • Sử dụng chương trình Compiler giúp bạn không cần phải thực thi chương trình trên cùng một máy mà nó đã được xây dựng từ trước .
  • Dễ dàng thao tác dịch toàn bộ chương trình sang ngôn ngữ khác.
  • Có khả năng kết nối các tệp thành một định dạng thực thi.
  • Kiểm tra lỗi cú pháp cũng như kiểu dữ liệu một cách linh hoạt nhanh nhay.
  • Các kỹ thuật đang được sử dụng để xây dựng một trình biên dịch mà nó còn có thể hữu ích cho các mục đích khác.
  • Có trình biên dịch mạnh mẽ  giúp triển khai đầy đủ các Ngôn ngữ lập trình cấp cao.
  • Hỗ trợ tối ưu hóa cho các kiến ​​trúc máy tính song song.
  • Tạo lập ra được những thiết kế phân cấp bộ nhớ mới của máy móc.
  • Ngày càng được đón đầu và sử dụng rộng rãi để dịch các chương trình.
  • Cho phép người dùng sử dụng cùng với các Software Productivity Tools khác

Đến đây chắc chúng ta đã hiểu được compiler là gì rồi, nó có chức năng và nhiệm vụ ra sao, lịch sử hình thành của nó như thế nào rồi. Vậy phổ biến hiện nay có những loại compiler nào, hãy cùng ngu công nghệ đi tiếp nhé

Các loại Compiler phổ biến hiện nay

Nắm được compiler là gì rồi, vậy bạn đã biết Compiler hiện nay được chia thành bao nhiêu loại chưa, nếu còn thắc mắc thì hãy một lần nữa cùng ngu công nghệ khám phá tiếp phần phía dưới đây nhé.

Single Pass Compiler là gì? (hay còn gọi là trình biên dịch 1 lần)

Trình biên dịch 1 lần chỉ thực hiện phân tích từ vựng, phân tích cú pháp và tạo mã một lần duy nhất. Hiểu một cách đơn giản, nó cho phép mã nguồn đi qua mỗi đơn vị biên dịch duy nhất một lần. Sau đó trình biên dịch này sẽ ngay lập tức dịch từng phần mã code thành mã máy cuối cùng.

Single Pass Compiler là gì? (hay còn gọi là trình biên dịch 1 lần)
Single Pass Compiler là gì? (hay còn gọi là trình biên dịch 1 lần)

Các giai đoạn của trình biên dịch một lần là bước đầu đi, phân tích cú pháp, phân tích từ vựng và tạo mã. Nó sẽ phân tích từ vựng cho quét mã nguồn rồi tiến hành chia các từ vựng ấy thành các mã thông báo.

Và một điều đương nhiên là mọi ngôn ngữ lập trình đều có ngữ pháp.

Ngữ pháp đại diện cho cú pháp và các tuyên bố pháp lý của ngôn ngữ khi cần thiết. Tiếp đó, phân tích cú pháp và xác định cấu trúc ngôn ngữ sẽ được  mô tả cụ thể nhất qua ngữ pháp. Kết thúc, trình tạo mã tạo ra mã đích.

Nhìn một cách tổng thể, Single Pass Compiler không tối ưu hóa mã và không có sự tạo mã trung gian.

Two Pass Compiler là gì? (trình biên dịch 2 lần)

Trình biên dịch 2 lần được chia thành 2 phần cụ thể chính là:

  • Frontend: trình biên dịch ánh xạ mã thành  Intermediate Representation (IR).
  • Backend: trình biên dịch tiếp tục ánh xạ IR đến máy đích.

Nhìn chung, phương thức biên dịch hai lần đã đơn giản hóa quá trình nhắm mục tiêu. Hơn nữa nó còn cho phép nhiều frontend hơn.

Multipass Compiler là gì? (trình biên dịch nhiều lần)

Trình biên dịch nhiều lần cho mã nguồn trải qua quá trình phân tích từ vựng, phân tích cú pháp, tạo mã,… nhiều lần trong khi tiến hành tạo mã trung gian .

Multipass Compiler là gì? (trình biên dịch nhiều lần)
Multipass Compiler là gì? (trình biên dịch nhiều lần)

Nó sẽ chuyển đổi chương trình thành một hoặc có thể là nhiều IR trong các bước giữa mã nguồn và mã máy. Trình biên dịch nhiều lần sẽ  xử lý lại toàn bộ đơn vị biên dịch trong mỗi lần truyền tuần tự nhất.

Sau khi lấy kết quả của lần dịch trước làm đầu vào và tạo ra cho chúng ta một đầu ra trung gian. Hơn nữa trong mỗi lần dịch qua, mã sẽ được cải thiện cho đến khi lần chuyển đổi cuối cùng và tạo mã cuối cùng.

Một trình biên dịch nhiều lần sẽ thực hiện các công  tác vụ bổ sung như tối ưu mã, tạo mã trung gian phụ thuộc vào máy và tối ưu mã độc lập với máy.

Nếu còn thắc mắc về Compiler là gì? thì mọi người hãy liên hệ trực tiếp với chúng tôi để được tư vấn một cách tận tình nhất.

Leave a Reply

Your email address will not be published. Required fields are marked *

error: