Đỗ Thị Lan Hương
Active member
- Xu
- 16,068
Chương trình dịch là gì? Tại sao người ta phải tạo ra các ngôn ngữ lập trình trong khi có thể điều khiển máy tính bằng ngôn ngữ máy? Để trả lời câu hỏi này, chúng ta cùng tìm hiểu qua bài 1: Máy tính và chương trình máy tính nhé!
Bài 1: Máy tính và chương trình máy tính
Bài 1 (trang 9 sgk Tin học lớp 8):
Trả lời:
- Ở đây, chúng ta có 2 công việc cần thực hiện, đó là:
1. Tìm kiếm một cụm từ trong văn bản:
2. Thay thế bằng một cụm từ khác.
- Để thực hiện được 2 công việc này, máy tính sẽ cần đưa ra một loạt các mệnh lệnh:
1. Sao chép cụm từ cần tìm kiếm (gọi là cụm từ 1) vào bộ nhớ của máy tính.
2. Tìm kiếm cụm từ 1 đã sao chép.
3. Xóa cụm từ 1 đã tìm kiếm được.
4. Sao chép cụm từ cần thay thế (gọi là cụm từ 2) vào bố nhớ của máy tính.
5. Từ vị trí đã xóa cụm từ 1, sao chép cụm từ 2 vào.
- Không thể thay đổi thứ tự những lệnh đó mà vẫn không thay đổi được kết quả. Ví dụ khi ta đổi lệnh 1 cho lệnh 4. Lúc đó máy sẽ thực hiện việc sao chép cụm từ 2 vào bộ nhớ, do bản chất của cụm từ 1 và 2 đều là dữ liệu nên lúc đó máy tính sẽ coi cụm từ 2 như cụm từ 1 và bắt đầu thực hiện lệnh đối với cụm từ 2. Thế nên, nếu ta thay đổi lệnh 1 cho lệnh 4 thì việc tìm kiếm và thay thế cụm từ 1 thành cụm từ 2 sẽ trở thành chương trình tìm kiếm và thay thế cụm từ 2 thành cụm từ 1. Lúc đó, kết quả sẽ bị thay đổi.
Bài 2 (trang 9 sgk Tin học lớp 8): Trong ví dụ về rô-bốt, nếu thay đổi thứ tự của lệnh 1 và lệnh 2 trong chương trình, rô-bốt có thực hiện được công việc nhặt rác không? Hãy xác định vị trí mới của rô-bốt sau khi thực hiện xong chương trình với thay đổi trên. Em hãy bổ sung hai lệnh để đưa rô-bôt về vị trí ban đầu?
Trả lời:
- Nếu thay đổi thứ tự của lệnh 1 và lệnh 2 trong chương trình, rô-bốt sẽ không thực hiện được công việc nhặt rác. Lúc này, rô-bốt sẽ thực hiện xong lệnh và đến vị trí mới nhưng lại không có rác để nhặt.
- Vị trí mới của rô-bôt nếu thực hiện xong chương trình với thay đổi trên
- Ở ví trí mới, muốn đưa rô-bốt về vị trí ban đầu ta có rất nhiều cách thực hiện các câu lệnh khác nhau, sau đây sẽ là một cách đơn giản để minh họa:
1. Lùi 3 bước.
2. Quay phải.
Bài 3 (trang 9 sgk Tin học lớp 8): Hãy cho biết lí do cần phải viết chương trình để điều khiển máy tính:
Trả lời:
- Trong thực tế, các công việc của con người muốn máy tính thực hiện rất đa dạng và phức tạp. Một lệnh đơn giản không đủ để chỉ dẫn cho máy tính hoàn thành công việc. Do đó, việc viết nhiều lệnh và tập hợp lại trong một chương trình giúp con người khai thác triệt để tốc độ máy tính và điều khiển máy tính đơn giản, dễ dàng.
- Khi thực hiện chương trình, máy tính sẽ thực hiện tuần tự các lệnh có trong chương trình, nghĩa là thực hiện xong một lệnh sẽ thực hiện lệnh tiếp theo, từ lệnh đầu tiên đến lệnh cuối cùng.
Bài 4 (trang 9 sgk Tin học lớp 8): Tại sao người ta phải tạo ra các ngôn ngữ lập trình trong khi có thể điều khiển máy tính bằng ngôn ngữ máy.
Trả lời:
- Đầu tiên chúng ta phải hiểu rằng, ngôn ngữ máy là các dãy bit, mỗi dãy bit chỉ bao gồm các số 0 và 1. Ví dụ: 00111010
- Chúng ta có thể thấy việc viết chương trình bằng ngôn ngữ máy, chỉ gồm những số 0 và 1 rất khó khăn và mất nhiều thời gian, công sức, cực kì khó nhớ và khó sử dụng. Do đó, để thuận tiện hơn, đơn giản, dễ hiểu hơn, các ngôn ngữ lập trình được ra đời nhằm phục vụ những mục đích đó.
Bài 5 (trang 9 sgk Tin học lớp 8): Chương trình dịch là gì?
Trả lời:
- Do các ngôn ngữ lập trình được tạo ra nhằm mục đích dễ hiểu hơn cho con người, nhưng máy tính lại không thể hiểu được ngôn ngữ đó. Do đó, chương trình còn cần được chuyển đổi sang ngôn ngữ máy bằng một chương trình dịch tương ứng.
Qua bài học này, chúng ta đã biết được chương trình để điều khiển máy tính. Hi vọng các bạn có thể vận dụng kiến thức đã học để tạo ra các ngôn ngữ lập trình nhé!
Bài 1: Máy tính và chương trình máy tính
Bài 1 (trang 9 sgk Tin học lớp 8):
Trả lời:
- Ở đây, chúng ta có 2 công việc cần thực hiện, đó là:
1. Tìm kiếm một cụm từ trong văn bản:
2. Thay thế bằng một cụm từ khác.
- Để thực hiện được 2 công việc này, máy tính sẽ cần đưa ra một loạt các mệnh lệnh:
1. Sao chép cụm từ cần tìm kiếm (gọi là cụm từ 1) vào bộ nhớ của máy tính.
2. Tìm kiếm cụm từ 1 đã sao chép.
3. Xóa cụm từ 1 đã tìm kiếm được.
4. Sao chép cụm từ cần thay thế (gọi là cụm từ 2) vào bố nhớ của máy tính.
5. Từ vị trí đã xóa cụm từ 1, sao chép cụm từ 2 vào.
- Không thể thay đổi thứ tự những lệnh đó mà vẫn không thay đổi được kết quả. Ví dụ khi ta đổi lệnh 1 cho lệnh 4. Lúc đó máy sẽ thực hiện việc sao chép cụm từ 2 vào bộ nhớ, do bản chất của cụm từ 1 và 2 đều là dữ liệu nên lúc đó máy tính sẽ coi cụm từ 2 như cụm từ 1 và bắt đầu thực hiện lệnh đối với cụm từ 2. Thế nên, nếu ta thay đổi lệnh 1 cho lệnh 4 thì việc tìm kiếm và thay thế cụm từ 1 thành cụm từ 2 sẽ trở thành chương trình tìm kiếm và thay thế cụm từ 2 thành cụm từ 1. Lúc đó, kết quả sẽ bị thay đổi.
Bài 2 (trang 9 sgk Tin học lớp 8): Trong ví dụ về rô-bốt, nếu thay đổi thứ tự của lệnh 1 và lệnh 2 trong chương trình, rô-bốt có thực hiện được công việc nhặt rác không? Hãy xác định vị trí mới của rô-bốt sau khi thực hiện xong chương trình với thay đổi trên. Em hãy bổ sung hai lệnh để đưa rô-bôt về vị trí ban đầu?
Trả lời:
- Nếu thay đổi thứ tự của lệnh 1 và lệnh 2 trong chương trình, rô-bốt sẽ không thực hiện được công việc nhặt rác. Lúc này, rô-bốt sẽ thực hiện xong lệnh và đến vị trí mới nhưng lại không có rác để nhặt.
- Vị trí mới của rô-bôt nếu thực hiện xong chương trình với thay đổi trên
- Ở ví trí mới, muốn đưa rô-bốt về vị trí ban đầu ta có rất nhiều cách thực hiện các câu lệnh khác nhau, sau đây sẽ là một cách đơn giản để minh họa:
1. Lùi 3 bước.
2. Quay phải.
Bài 3 (trang 9 sgk Tin học lớp 8): Hãy cho biết lí do cần phải viết chương trình để điều khiển máy tính:
Trả lời:
- Trong thực tế, các công việc của con người muốn máy tính thực hiện rất đa dạng và phức tạp. Một lệnh đơn giản không đủ để chỉ dẫn cho máy tính hoàn thành công việc. Do đó, việc viết nhiều lệnh và tập hợp lại trong một chương trình giúp con người khai thác triệt để tốc độ máy tính và điều khiển máy tính đơn giản, dễ dàng.
- Khi thực hiện chương trình, máy tính sẽ thực hiện tuần tự các lệnh có trong chương trình, nghĩa là thực hiện xong một lệnh sẽ thực hiện lệnh tiếp theo, từ lệnh đầu tiên đến lệnh cuối cùng.
Bài 4 (trang 9 sgk Tin học lớp 8): Tại sao người ta phải tạo ra các ngôn ngữ lập trình trong khi có thể điều khiển máy tính bằng ngôn ngữ máy.
Trả lời:
- Đầu tiên chúng ta phải hiểu rằng, ngôn ngữ máy là các dãy bit, mỗi dãy bit chỉ bao gồm các số 0 và 1. Ví dụ: 00111010
- Chúng ta có thể thấy việc viết chương trình bằng ngôn ngữ máy, chỉ gồm những số 0 và 1 rất khó khăn và mất nhiều thời gian, công sức, cực kì khó nhớ và khó sử dụng. Do đó, để thuận tiện hơn, đơn giản, dễ hiểu hơn, các ngôn ngữ lập trình được ra đời nhằm phục vụ những mục đích đó.
Bài 5 (trang 9 sgk Tin học lớp 8): Chương trình dịch là gì?
Trả lời:
- Do các ngôn ngữ lập trình được tạo ra nhằm mục đích dễ hiểu hơn cho con người, nhưng máy tính lại không thể hiểu được ngôn ngữ đó. Do đó, chương trình còn cần được chuyển đổi sang ngôn ngữ máy bằng một chương trình dịch tương ứng.
Qua bài học này, chúng ta đã biết được chương trình để điều khiển máy tính. Hi vọng các bạn có thể vận dụng kiến thức đã học để tạo ra các ngôn ngữ lập trình nhé!
_Chúc các bạn học tốt!_