Bài giảng Nhập môn Tin học: Chương 3 - Từ Thị Xuân Hiền
lượt xem 6
download
Bài giảng Nhập môn Tin học: Chương 3 do Từ Thị Xuân Hiền biên soạn nhằm mục đích phục vụ cho việc giảng dạy. Nội dung bài giảng gồm: Phân loại ngôn ngữ máy, định dạng của lệnh trong ngôn ngữ máy, trình biên dịch – Compiler, ngôn ngữ trung gian của trình biên dịch và thông dịch, các khái niệm trong lập trình hướng đối tượng,...
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Nhập môn Tin học: Chương 3 - Từ Thị Xuân Hiền
- 8/9/18 Chương 1 3: Ngôn ngữ máy (Computer languages)
- 8/9/18 2 Phân loại ngôn ngữ máy • Machine language • Assembly language • High-level language
- 8/9/18 3 Ngôn ngữ máy - Machine language • Là ngôn ngữ duy nhất mà bộ vi xử lý nhận biết và thực hiện trực tiếp không cần sử dụng chương trình dịch. • Thường được viết dưới dạng chuỗi các bit nhị phân 0 và 1 • Thường khó đọc • Lệnh thực thi nhanh vì các lệnh được đọc và thực thi trực tiếp
- 8/9/18 4 Định dạng của lệnh trong ngôn ngữ máy • Opcode- Operation code • Opcode báo cho máy tính thực hiện lệnh nào trong tập lệnh của máy. • Operand (Address/Location) • Operand chỉ cho máy tính địa chỉ của dữ liệu mà trên đó lệnh sẽ được thực thi.
- 8/9/18 5 Định dạng của lệnh trong ngôn ngữ máy
- 8/9/18 6 Ví dụ
- 8/9/18 7 Thuận lợi và bất lợi của ngôn ngữ máy • Thuận lợi: • Lệnh thực hiện rất nhanh • Bất lợi: • Phụ thuộc vào máy • Khó viết chương trình • Dễ bị lỗi • Khó hiệu chỉnh
- 8/9/18 8 Hợp ngữ -Assembly/Symbolic language • Là ngôn ngữ lập trình mà giải quyết những hạn chế của ngôn ngữ máy • Sử dụng mã chữ và số thay vì mã số cho các chỉ thị trong tập lệnh. Ví dụ: sử dụng lệnh ADD thay vì sử dụng lệnh 1110 (Binary) hoặc 14 (deciaml) cho lệnh cộng. • Cho phép các vị trí lưu trữ được biểu diễn theo dạng thức địa chỉ chữ và số thay vì địa chỉ số Ví dụ: biểu diễn vị trí bộ nhớ 1000, 1001, 1002 cho lệnh FIRST, SCND, ANSR
- 8/9/18 9 Hợp ngữ -Assembly/Symbolic language • Cung cấp những lệnh giả được sử dụng để hướng dẫn hệ thống gắn kết các lệnh của chương trình vào trong bộ nhớ của máy tính. Ví dụ: START PROGRAM AT 0000 START DATA AT 1000 SET ASIDE AN ADDRESS FOR FRST SET ASIDE AN ADDRESS FOR SCND ASIDE AN ADDRESS FOR ANSR
- 8/9/18 10 Hợp ngữ -Assembly/Symbolic language Ví dụ: Ngôn ngữ máy dạng nhị phân NNM dạng Hex NN Assembly 10111000 00000101 00000000 b8 05 00 mov ax, 5 10100011 00000000 00000002 a3 00 02 mov [200], ax 10100001 00000000 00000002 a1 00 02 mov ax, [200] 00000101 00001010 00000000 05 0a 00 add ax, 10 10100011 00000010 00000010 a3 02 02 mov [202],ax
- 8/9/18 11 Hợp ngữ -Assembly/Symbolic language • Assembler: là phần mềm dùng để chương trình hợp ngữ sang ngôn ngữ máy
- 8/9/18 12 Hợp ngữ -Assembly/Symbolic language • Ví dụ: các lệnh trong tập lệnh của hợp ngữ Mnemonic Opcode Meaning HLT 00 Halt, để kết thúc chương trình CLA 10 Xóa và thêm vào thanh ghi A ADD 14 Thêm nội dung vào thanh ghi A SUB 15 Trừ nội dung của thanh ghi A STA 30 Lưu trữ thanh ghi A
- 8/9/18 13 Hợp ngữ -Assembly/Symbolic language • Ví dụ: chương trình cộng 2 số và lưu kết quả
- 8/9/18 • Tương đương giữa chương trình sử dụng ngôn máy và chương 14 trình sử dụng ngôn ngữ Assembly Nội dung Memory Opcode Address Ý nghĩa location 0000 10 1000 Xóa và gán số thứ nhất vào FIRST của thanh ghi A 0001 14 1001 Thêm số thứ hai tại SCND của thanh ghi A 0002 30 1002 Lưu nội dung của thanh ghi A vào ANSR 0003 00 Dừng chương trình … 1001 Lưu trữ giá trị trong FIRST 1002 Lưu trữ giá trị trong SCND 1003 Lưu trữ giá trị trong ANSR
- 8/9/18 15 Thuận lợi và bất lợi của ngôn ngữ Assembly • Thuận lợi: • Dễ hiểu và dễ sử dụng • Dễ định vị hơn và sửa lỗi chính xác • Dễ hiệu chỉnh chương trình • Không quan tâm đến địa chỉ • Dễ dàng xác định đúng vị trí • Hiệu xuất cao hơn ngôn ngữ máy tính
- 8/9/18 16 Thuận lợi và bất lợi của ngôn ngữ Assembly • Bất lợi: • Phụ thuộc vào máy • Người lập trình phải có kiến thức về phần cứng • Các lệnh chỉ được viết ở mức mã máy nên viết chương trình bằng hợp ngữ vẫn còn mất thời gian và khó.
- 8/9/18 17 Ngôn ngữ cấp cao – High-level language • Không phụ thuộc vào máy • Người lập trình không cần biết nhiều về cấu trúc bên trong của máy tính, nơi mà chương trình viết bằng ngôn ngữ cấp cao sẽ thực thi. • Ngôn ngữ cấp cao cho phép người lập trình sử dụng các lệnh gần với ngôn ngữ tự nhiên, các biểu thức và các ký hiệu toán học.
- 8/9/18 18 Ngôn ngữ cấp cao – High-level language • Các loại ngôn ngữ lập trình cấp cao : • Ngôn ngữ đa mục đích: Basic, C, C++, C#, Java, Fortran, Pascal • Ngôn ngữ lập trình stack: TrueType, Postscript,... • Lập trình khai báo: C, Pascal,... • Ngôn ngữ lập trình logic, lập trình thủ tục & lập trình hàm: Prolog, Lisp,.. • Ngôn ngữ lập trình hướng đối tượng: C++, C#, Java,..
- 8/9/18 19 Ngôn ngữ cấp cao – High-level language • Ví dụ: chương trình trên được viết bằng ngôn ngữ cấp cao C: short i, j; // khai báo 2 biên i, j thuộc kiểu số nguyên 16 bit i = 5; // chứa 5 vào biến i j = i +10; // chứa kết quả tính công thức i + 10 vào biến j
- 8/9/18 20 Trình biên dịch - Compiler • Là chương trình dịch dùng để chuyển một chương trình được viết bằng ngôn ngữ cấp cao thành một chương trình bằng ngôn ngữ máy. • Biên dịch thành một tập các chỉ thị của ngôn ngữ máy cho các chỉ thị trong chương trình của ngôn ngữ cấp cao.
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Nhập môn Tin học - GV. Nguyễn Thị Thảo
53 p | 354 | 59
-
Bài giảng Nhập môn tin học - Chương 2: Tổ chức máy vi tính
67 p | 148 | 13
-
Bài giảng Nhập môn tin học - Chương 1: Giới thiệu về tin học
45 p | 129 | 12
-
Bài giảng Nhập môn tin học: Chương 9 - Trần Thị Kim Chi
86 p | 129 | 11
-
Bài giảng Nhập môn tin học
89 p | 112 | 10
-
Bài giảng Nhập môn Tin học 2 - Chương 1: Cấu trúc máy tính
39 p | 67 | 9
-
Bài giảng Nhập môn tin học: Chương 2 - Trần Thị Kim Chi
54 p | 95 | 9
-
Bài giảng Nhập môn tin học: Chương 3 - Trần Thị Kim Chi
32 p | 88 | 8
-
Bài giảng Nhập môn tin học: Chương 1 - Trần Phước Tuấn
24 p | 124 | 6
-
Bài giảng Nhập môn Tin học: Chương 1 - Thông tin & xử lý thông tin
35 p | 74 | 6
-
Bài giảng Nhập môn tin học: Giới thiệu - TS. Đào Nam Anh
58 p | 76 | 5
-
Bài giảng Nhập môn Tin học: Chương 8 - Từ Thị Xuân Hiền
29 p | 78 | 5
-
Bài giảng Nhập môn Tin học: Chương 4 - ThS. Trương Vĩnh Hảo
21 p | 72 | 4
-
Bài giảng Nhập môn Tin học - Chương 1: Giới thiệu
30 p | 66 | 3
-
Bài giảng Nhập môn Tin học: Chương 3 - Ngô Quang Thạch
22 p | 60 | 2
-
Bài giảng Nhập môn Tin học: Chương 4 - Ngô Quang Thạch
18 p | 36 | 2
-
Bài giảng Nhập môn Tin học: Chương 1 - Nguyễn Đức Cương
8 p | 85 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn