Trình biên dịch đầu tiên được biên dịch như thế nào?


14

Điều này đã luôn luôn cân não của tôi. Trình biên dịch mã biên dịch. Tôi tưởng tượng rằng trình biên dịch được mã hóa. Vì vậy, để thực sự chạy mã cho trình biên dịch, bạn phải biên dịch nó.

Trình biên dịch đầu tiên được biên dịch như thế nào?


3
Nó giống như hiểu đệ quy, trước tiên bạn phải hiểu đệ quy.
Urda

Câu trả lời:


21

Trình biên dịch đầu tiên được viết theo cách lắp ráp cho ngôn ngữ lập trình A-0 vào năm 1952. Xem Wikipedia để biết thêm thông tin.

Trình biên dịch đầu tiên có thể tự biên dịch được viết cho và trong Lisp vào năm 1962. Đây được gọi là trình biên dịch tự lưu trữ hoặc bootstrapping .


7
Trong một thời gian dài, nhiều chương trình (bao gồm cả trình biên dịch) đã được viết trực tiếp bằng mã máy hoặc bằng ngôn ngữ lắp ráp.
dùng1686

2
Một lưu ý, gcc có một bootstrap thú vị. Bạn biên dịch một gcc tối thiểu với trình biên dịch hệ thống, sau đó sử dụng gcc tối thiểu này để biên dịch gcc "lớn", sau đó sử dụng gcc "lớn" này để biên dịch một gcc "lớn" khác để bạn có thể xác nhận toàn bộ hoạt động.
Rich Homolka
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.