1 câu hỏi về Aptech

Thảo luận trong 'Lập trình & Đồ hoạ' bắt đầu bởi goder2910, 10/9/08.

  1. goder2910

    goder2910 Donkey Kong

    Tham gia ngày:
    31/3/06
    Bài viết:
    396
    Nơi ở:
    Hồ Chí Minh
    Em mới học Aptech Accp 2005 phần Computer Fundamentals. Cô giáo bắt về phân biệt "Interpretter và Complier" trong phần Tranlator của ngôn ngữ máy tính. Anh nào biết về vấn đề này phân biệt giùm em cái. :((
     
  2. The Greek Warrior

    The Greek Warrior T.E.T.Я.I.S

    Tham gia ngày:
    28/4/02
    Bài viết:
    561
    Nơi ở:
    Caldeum
    Trước khi phân biết thì dịch ra 2 từ này sang tiếng việt cái đã.
    Interpreter: chương trình thông dịch
    Compiler: chương trình biên dịch.
    ---Chúng ta cũng bàn 1 chút về sự giống nhau của nó:[
    2 chương trình này đều có nhiệm vụ chuyển đổi những câu lệnh của các ngôn ngữ lập trình (C/C++,Java...) sang mã máy dạng nhị phân (0,1 bits) có thể thực thi hay "chạy" được, lấy ví dụ là dịch từ 1 file : program.c --->program.exe để chạy trực tiếp được(thật ra cần 1 cái gọi là linker mới ra được các file *.exe).
    ---Bây giờ chúng ta sẽ nói về sự khác nhau:
    ++++++Sự khác biệt lớn nhất mà người ta thường nhắc đến là cách nó phát hiện lỗi và thực thi thế nào khi có lỗi trong câu lệnh lập trình.
    Đối với chương trình thông dịch, các bước nó làm như sau:
    Xét từng dòng lệnh--->kiểm tra lỗi cú pháp--->Đúng thì thực thi--->Sai thì bỏ qua xét dòng lệnh kế tiếp(không báo lỗi-chương trình vẫn tiếp tục chạy)....và cứ như vậy cho đến khi đến dòng lệnh cuối cùng.
    Đối với chương trình biên dịch,các bước nó làm như sau:
    Xét từng dòng lệnh---->kiểm tra lỗi cú pháp--->Đúng thi thực thi--->Sai báo lỗi, chương trình sẽ k được thực thi cho đến khi nào bạn sửa được lỗi cú pháp đó....cứ như vậy nó sẽ kiểm tra đến khi toàn bộ chương trình k bị lỗi gì hết thì ct mới chạy được.

    ====> Từ đó có thể nói rằng, đối với thông dịch khi gặp lỗi cú pháp nó k báo lỗi mà xét cậu lệnh kế tiếp để chuyển sang mã máy và thực thi ngay, biên dịch cần toàn bộ chương trình chính xác hoàn toàn mới dịch sang mã máy.

    Có thể, liên hệ thực tế 1 chút cho dễ hiểu, chuong trình thông dịch giống như những người thông dịch viên cho người nước ngoài( nói câu nào dịch ra câu đó, mặc dù có thể k chính xác lắm), biên dịch giống như những người làm công tác dịch sách ngoại văn ra thành bản tiếng việt cần chính xác và hoàn chỉnh thì người đọc mới hiểu được(như dịch Harry Potter vậy).
     
  3. goder2910

    goder2910 Donkey Kong

    Tham gia ngày:
    31/3/06
    Bài viết:
    396
    Nơi ở:
    Hồ Chí Minh
    Cám ơn anh nhiều nhé, ko có anh chắc em chết.
    Mod close topic này giùm em nhe.
     

Chia sẻ trang này