5 WhatIsProgramming

You might also like

Download as ppsx, pdf, or txt
Download as ppsx, pdf, or txt
You are on page 1of 18

10/11/22  03:18:36 PM

Khá i niệm về lậ p trình

Cá ch giao tiếp vớ i máy tính bằ ng “ngô n ngữ ”


Quá trình phá t triển củ a ngô n ngữ lậ p trình
Ngô n ngữ bậ c cao
Trình dịch
Quy trình lậ p trình bằ ng ngô n ngữ bậ c cao
© Lê Minh Hoà ng. All Rights Reserved.
Kiến trú c máy tính
Memory (Bộ nhớ )

CPU: Central Processing Unit


(Bộ xử lý trung tâ m)

ALU: Arithmetic-Logic Unit


CU: Control Unit
(Bộ xử lý số và Logic)
(Bộ điều khiển)

Input Output

2
Minh họ a mộ t hệ thố ng máy tính

CD/DVD Keyboard
Floppy Disks

Mouse
Hard Disk

Printer
Monitor

Scanner Speakers Tape


3
Phầ n cứ ng và phầ n mềm
Phầ n cứ ng (Hardware)
Xử lý dữ liệu bằ ng cá c tiến hà nh cá c lệnh theo chỉ thị
Cung cấ p đầ u và o (input) và đầ u ra (output) qua cá c cổ ng giao
tiếp thiết bị ngoạ i vi
Phầ n mềm
Chứ a cá c chỉ thị lệnh giao cho phầ n cứ ng thự c hiện, nhằ m thự c
hiện mộ t nhiệm vụ cụ thể.
4
Ngô n ngữ củ a máy tính
Nhắ c lạ i:
Phầ n cứ ng tiến hà nh cá c lệnh theo chỉ thị
Phầ n mềm cung cấ p cá c chỉ thị cho phầ n cứ ng thự c hiện
Vậy chỉ thị là ?
Ngô n ngữ máy
0, 1: Chữ số nhị phâ n (BIT – Binary Digit)
Mộ t dãy số nhị phâ n đượ c gọ i là mã nhị phâ n (Binary Code)
Ngô n ngữ máy (Machine Language): Mỗ i chỉ thị = Mộ t mã nhị phâ n

5
Ví dụ về ngô n ngữ máy
Độ dà i quã ng đườ ng = Vậ n tố c x Thờ i gian
Cho biết vậ n tố c = 15 (km/h)
Thờ i gian = 6 (h)
Tính độ dà i quã ng đườ ng
Giả sử có 3 loạ i chỉ thị
1001: Đọ c giá trị ở 4 bit tiếp theo.
1011: Nhâ n giá trị đang có vớ i giá trị ở 4 bit tiếp
theo và nhớ lạ i giá trị kết quả
1000: Cho biết kết quả đang nhớ

6
Vậ n tố c: 15km/h
Thờ i gian: 6h
Chỉ thị
1001: Đọ c 4 bit và o bộ nhớ
1011: Nhâ n giá trị đang nhớ
vớ i 4 bit tiếp
1000: Cho biết kết quả đang
nhớ

7
CU: Đọ c 4 bit tiếp
Vậ n tố c: 15km/h
Thờ i gian: 6h
Chỉ thị
1001: Đọ c 4 bit và o bộ nhớ
1011: Nhâ n giá trị đang nhớ
vớ i 4 bit tiếp
1000: Cho biết kết quả đang
nhớ

8
Vậ n tố c: 15km/h
Thờ i gian: 6h
Chỉ thị
1001: Đọ c 4 bit và o bộ nhớ
1011: Nhâ n giá trị đang nhớ
vớ i 4 bit tiếp
1000: Cho biết kết quả đang
nhớ

9
CU: Nhâ n vớ i 4 bit tiếp Vậ n tố c: 15km/h
Thờ i gian: 6h
Chỉ thị
1001: Đọ c 4 bit và o bộ nhớ
1011: Nhâ n giá trị đang nhớ
vớ i 4 bit tiếp
1000: Cho biết kết quả đang
nhớ

10
1111 Vậ n tố c: 15km/h

 0110 Thờ i gian: 6h


Chỉ thị
0000
1001: Đọ c 4 bit và o bộ nhớ
1111 1011: Nhâ n giá trị đang nhớ
1111 vớ i 4 bit tiếp
0000 1000: Cho biết kết quả đang

1011010 nhớ

11
CU: In kết quả đang nhớ Vậ n tố c: 15km/h
Thờ i gian: 6h
Chỉ thị
1001: Đọ c 4 bit và o bộ nhớ
1011: Nhâ n giá trị đang nhớ
6 4 3 1
2 2 2 2 vớ i 4 bit tiếp
1000: Cho biết kết quả đang
nhớ
5 2 0
2 2 2

12
Hợ p ngữ (Assembly language)
Đặ c điểm
Dù ng lệnh hợ p ngữ thay vì viết mã nhị phâ n củ a từ ng chỉ thị.
Có mộ t chương trình (Assembler) dịch lệnh hợ p ngữ ra ngô n ngữ máy.
Cho phép dù ng biến số , chấ p nhậ n biểu diễn thậ p phâ n và thậ p lụ c phâ n củ a số nguyên.
Ví dụ
Viết LOAD thay cho 1001, MULT thay cho 1011, STOR thay cho 1000.
Chương trình trở thà nh
LOAD 15
MULT 6
STOR
Chương trình dễ đọ c và khó bị lỗ i hơn ngô n ngữ máy
13
Ngô n ngữ bậ c cao
Ngô n ngữ bậ c cao: Basic, FORTRAN, COBOL, Pascal, C, Object
Pascal, C++…
Để tính quã ng đườ ng (L) cho biết vậ n tố c (V) và thờ i gian (T), có thể
viết lệnh trong ngô n ngữ C++: L = V * T
Trình dịch: Là chương trình dịch cá c lệnh viết trong ngô n ngữ
bậ c cao thà nh nhữ ng chỉ thị tương đương trong ngô n ngữ máy.

14
Thuậ t toá n
Abū ʿAbdallā h Muḥ ammad ibn Mū sā al-Khwā rizmī
Trung tâ m họ c thuậ t Baghdad (800s)
Sá ch: Kitab al-Jabr wa-l-Muqabala: Mộ t số phương phá p giả i
cá c bà i toá n thự c tế: phương trình bậ c nhấ t, bậ c hai… Đượ c
dịch ra tiếng Latin, phổ biến ở châ u  u
Hệ thố ng hó a hệ đếm thậ p phâ n bằ ng cá c chữ số Arậ p (0...9)
Algebra: Đạ i số
Algorithm: Thuậ t toá n
(~780 - ~850)

15
Lậ p trình
Quy trình chuyển giao thuậ t toá n cho máy tính thự c hiện
Yêu cầ u vớ i ngườ i lậ p trình
Hiểu thuậ t toá n
Hiểu ngô n ngữ giao tiếp vớ i máy
Tìm đượ c cá ch “diễn đạ t” thuậ t toá n mộ t cá ch hiệu quả bằ ng
ngô n ngữ .

16
Quy trình lậ p trình
Soạ n thả o:
Trình soạ n thả o (Editor) để soạ n cá c lệnh trong ngô n ngữ bậ c cao. Chương trình viết ra gọ i là mã nguồ n
(Source code)
Dịch
Trình dịch (Compiler) để kiểm tra lỗ i cú phá p và dịch cá c lệ nh viết trong mã nguồ n ra ngô n ngữ máy.
Chương trình dịch ra từ mã nguồ n gọ i là mã đố i tượ ng (Object code)
Liên kết
Trình liên kế t (Linker) tích hợ p nhữ ng mã viế t sẵ n trong thư việ n và o mã đố i tượ ng tạ o thà nh mã khả thi
(Executable Code)
Mã khả thi Có thể nạ p trự c tiế p và o bộ nhớ và chạy độ c lậ p, khô ng phụ thuộ c và o Editor, Compiler hay
Linker nữ a.

17
Mã nguồ n

Mã khả thi
Trình soạ n thả o Mã khả thi

Mã nguồ n Trình dịch Mã đố i tượ ng Trình liê n kết Thư viện

18

You might also like