Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
506,5 KB
Nội dung
Thứ 2, ngày 08/10/2012
Bài toán: Tính diện tích và chu vi của HCN
khi biết chiều dài a và chiều rộng b.
• Yêu cầu:
– Xác định Input và Output.
– Trình bày thuật toán dạng liệt kê.
Trả lời
* XĐBT
- Input: hai số a, b
- Output: s, p
* Thuật toán:
- B1: nhập 2 số a và b
- B2: s ← a*b,
p ← 2*(a+b)
- B3: Thông báo s, p.
Rồi kết thúc
Vậy, máy tính có thể thực
hiện được bài toán theo thuật
toán trên không? Vì sao?
– Không!
– Vì ngôn ngữ thể hiện thuật toán
trên, máy tính chưa hiểu được.
Làm sao để máy tính
có thể thực hiện được???
Mời quý vị đi theo
lối này
Ví dụ: Người Anh - Người Việt
• N.Việt: Xin chào, mời ngài vào đây!
• N.Anh:??? (không hiểu N.Việt nói gì), muốn
N.Anh hiểu và làm theo, N.Việt phải làm thế
nào?
Làm thế này!
- C1: Phải nói TA
- C2: Thuê người dịch biết cả hai thứ tiếng
Anh và Việt
Kết quả của việc diễn tả thuật
toán bằng NN nào đó sao cho máy
tính có thể thực hiện được gọi là
máy tính thựcgì? hiện công
Để
việc (bài
toán) giúp con người, thuật toán phải
đượ*c Kế
diễtnquả
tả bằ
n
g
ngôn
ngữ
củ
a
máy
tính
của việc diễn tả thuật toán bằng
hoặcmộngôn
mà má
cóy thể
đổci hiệ
về n
t NN ngữ
sao cho
tínhchuyể
có thển thự
đượ
c gọcủ
i là
một chương
ngôn
ngữ
a máy
tính. trình máy tính (gọi
tắt là chương trình).
* Ngôn ngữ đó được gọi chung là NNLT.
1. Ngôn ngữ máy
- Là ngôn ngữ duy nhất để viết chương trình mà máy
tính có thể trực tiếp hiểu và thực hiện được.
- Các lệnh viết bằng ngôn ngữ máy ở dạng hệ
nhị phân hoặc hệ hexa.
- Ưu điểm: Khai thác triệt để các đặc điểm phần cứng
của máy tính.
- Nhược điểm: Khó viết, chương trình dài, khó hiệu
chỉnh. Không thực hiện được trên các loại máy tính
khác.
Vì vậy ngôn ngữ này không thích hợp với số
đông người lập trình.
HỢP NGỮ
Có ngôn ngữ nào
tốt hơn ngôn ngữ
máy không?
2. Hợp ngữ
- Cho phép người lập trình sử dụng một số
từ tắt (tiếng Anh) để thể hiện các lệnh cần
thực hiện.
VD: ADD AX, BX (cộng 2 giá trị chứa
trong thanh ghi AX và BX, kết quả quy ước
đặt vào thanh ghi AX)
- Ưu điểm: dễ nhớ, dễ lập trình hơn NN máy.
- Nhược điểm:
+ Chương trình vẫn còn phức tạp
+ Ngôn ngữ này chỉ thích hợp với các nhà
lập trình chuyên nghiệp.
* Chương trình viết bằng hợp ngữ phải
được dịch ra ngôn ngữ máy nhờ chương
trình hợp dịch thì máy tính mới có thể
thực hiện được.
NGÔN NGỮ
BẬC CAO
Có ngôn ngữ nào
tốt hơn hợp ngữ
không?
3. Ngôn ngữ bậc cao
- NN bậc cao: các câu lệnh của
chương trình gần gũi với ngôn ngữ
tự nhiên.
- Ưu điểm:
+ Tính độc lập cao, ít phụ thuộc
vào các loại máy.
+ Chương trình viết ngắn gọn, dễ
hiểu, dễ hiệu chỉnh, nâng cấp,…
- B1: Nhập 2 số a và b
- B2: s ← a*b,
p ← 2*(a+b)
-B3: Thông báo s, p
Rồi kết thúc
Program dt_cv;
Var a, b: byte;
s, p: real;
BEGIN
Read (a,b);
s:=a*b;
p:=2*(a+b);
Write (‘S=’, S, ‘P=’, P);
Readln
END.
- Chương trình viết bằng NNLT bậc cao
phải được chuyển về chương trình trên NN
máy thông qua chương trình dịch.
- VD: Pascal, C, C++, Java,…
Ngôn ngữ lập trình
Ngôn
ngữ
máy
Hợp
ngữ
Ngôn
ngữ
bậc
cao
Chương trình hợp dịch
Chương trình dịch
Phát biểu nào dưới đây là sai khi
nói về ngôn ngữ máy?
A. Ngôn ngữ máy: máy tính có thể trực tiếp hiểu
được. Các lệnh là các dãy bit.
B. Ngôn ngữ máy không thể dùng để viết những
chương trình phức tạp.
C. Ngôn ngữ thích hợp với từng loại máy.
D. Viết chương trình bằng ngôn ngữ máy tận dụng
được những đặc điểm riêng biệt của từng máy nên
chương trình sẽ thực hiện nhanh hơn.
Khi viết chương trình, người lập trình
không nhất thiết phải làm gì?
A. Tổ chức dữ liệu vào, ra
B. Dùng các câu lệnh để mô tả các
thao tác.
C. Thường xuyên kiểm tra, phát hiện
và sửa lỗi.
D. Vẽ sơ đồ khối
Chương trình dịch là chương trình
dùng để chuyển:
A. Ngôn ngữ máy về hợp ngữ.
B. Hợp ngữ về ngôn ngữ bậc cao.
C. NN bậ
bậcc cao
cao về
về ngôn
ngônngữ
ngữmáy.
máy
D. NN máy về ngôn ngữ khác.
- Học bài
- Về nhà xem bài 6 và trả lời:
Có mấy bước giải bài toán trên
máy tính?
[...]... lệnh để mô tả các thao tác C Thường xuyên kiểm tra, phát hiện và sửa lỗi D Vẽ sơ đồ khối Chương trình dịch là chương trình dùng để chuyển: A Ngôn ngữ máy về hợp ngữ B Hợp ngữ về ngôn ngữ bậc cao C NN bậ bậcc cao cao về về ngôn ngônngữ ngữmáy máy D NN máy về ngôn ngữ khác - Học bài - Về nhà xem bài 6 và trả lời: Có mấy bước giải bài toán trên máy tính?... trình chuyên nghiệp * Chương trình viết bằng hợp ngữ phải được dịch ra ngôn ngữ máy nhờ chương trình hợp dịch thì máy tính mới có thể thực hiện được NGÔN NGỮ BẬC CAO Có ngôn ngữ nào tốt hơn hợp ngữ không? 3 Ngôn ngữ bậc cao - NN bậc cao: các câu lệnh của chương trình gần gũi với ngôn ngữ tự nhiên - Ưu điểm: + Tính độc lập cao, ít phụ thuộc vào các loại máy + Chương... Chương trình viết bằng NNLT bậc cao phải được chuyển về chương trình trên NN máy thông qua chương trình dịch - VD: Pascal, C, C++, Java,… Ngôn ngữ lập trình Ngôn ngữ máy Hợp ngữ Ngôn ngữ bậc cao Chương trình hợp dịch Chương trình dịch Phát biểu nào dưới đây là sai khi nói về ngôn ngữ máy? A Ngôn ngữ máy: máy tính có thể trực tiếp hiểu được Các lệnh là các dãy bit B Ngôn ngữ máy...2 Hợp ngữ - Cho phép người lập trình sử dụng một số từ tắt (tiếng Anh) để thể hiện các lệnh cần thực hiện VD: ADD AX, BX (cộng 2 giá trị chứa trong thanh ghi AX và BX, kết quả quy ước đặt vào thanh ghi AX) - Ưu điểm: dễ nhớ, dễ lập trình hơn NN máy - Nhược điểm: + Chương trình vẫn còn phức tạp + Ngôn ngữ này chỉ thích hợp với các nhà lập trình. .. là các dãy bit B Ngôn ngữ máy không thể dùng để viết những chương trình phức tạp C Ngôn ngữ thích hợp với từng loại máy D Viết chương trình bằng ngôn ngữ máy tận dụng được những đặc điểm riêng biệt của từng máy nên chương trình sẽ thực hiện nhanh hơn Khi viết chương trình, người lập trình không nhất thiết phải làm gì? A Tổ chức dữ liệu vào, ra B Dùng các câu lệnh ... Chương trình dịch là chương trình dùng để chuyển: A Ngôn ngữ máy về hợp ngữ B Hợp ngữ về ngôn ngữ bậc cao C NN bậ bậcc cao cao về về ngôn ngônngữ ngữmáy máy D NN máy về ngôn. .. chương trình dài, khó hiệu chỉnh Không thực hiện được các loại máy tính khác Vì vậy ngôn ngữ không thích hợp với số đông người lập trình HỢP NGỮ Có ngôn ngữ tốt ngôn ngữ. .. hợp ngữ phải được dịch ngôn ngữ máy nhờ chương trình hợp dịch máy tính mới có thể thực hiện được NGÔN NGỮ BẬC CAO Có ngôn ngữ tốt hợp ngữ không? Ngôn ngữ bậc cao - NN bậc