1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng Chương 1: Phương pháp giải quyết bài toán bằng máy tính số

20 131 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 20
Dung lượng 287,79 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Chương 1: Phương pháp giải quyết bài toán bằng máy tính số tập trung trình bày: Các khái niệm cơ bản về máy tính số; lịch sử phát triển máy tính số; dữ liệu & chương trình; quy trình tổng quát giải quyết bài toán bằng máy tính số; phân tích bài toán từ-trên-xuống.

Trang 1

Khoa Công ngh Thông tin ệ Môn : Tin h cọ

 T p slide bài gi ng & th c hành c a môn h c này.ậ ả ự ủ ọ

 3 CD MSDN trong Microsoft Visual Studio.

1 Ph ươ ng pháp gi i quy t bài toán ả ế

b ng máy tính s ằ ố

2 Th hi n d li u trong máy tính ể ệ ữ ệ

s ố

3 T ng quát v l p trình b ng VB ổ ề ậ ằ

4 Qui trình thi t k tr c quan giao ế ế ự

di n ệ

5 Các ki u d li u c a VB ể ữ ệ ủ

6 Các l nh nh ngh a & khai báo ệ đị ĩ

7 Bi u th c VB ể ứ

8 Các l nh th c thi VB ệ ự

9 Đị nh ngh a th t c & s d ng ĩ ủ ụ ử ụ

10 T ươ ng tác gi a ng ữ ườ i dùng &

ch ươ ng trình.

11 Qu n lý h th ng file ả ệ ố

12 Linh ki n ph n m m & truy ệ ầ ề

xu t database ấ

Đố ượ SV đạ ọ i h c chính quy toàn tr ườ ng

Trang 2

MÔN TIN H C Ọ

Ch ươ ng 1

1.1 Các khái ni m c b n v máy tính s ệ ơ ả ề ố

1.2 L ch s phát tri n máy tính s ị ử ể ố

1.3 D li u & ch ữ ệ ươ ng trình

1.4 Qui trình t ng quát gi i quy t bài toán b ng máy tính s ổ ả ế ằ ố

1.5 Phân tích bài toán t -trên-xu ng ừ ố

Trang 3

Khoa Công ngh Thông tin ệ Môn : Tin h cọ

 Con người thông minh h n các ơ động v t khác nhi u Trong cu c s ng, ậ ề ộ ố

h ã ch t o ngày càng nhi u ọ đ ế ạ ề công c , thi t bụ ế ị để ỗ ợ h tr mình trong

ho t ạ động Các công c , thi t b do con ngụ ế ị ười ch t o ngày càng tinh ế ạ

vi, ph c t p và th c hi n nhi u công vi c h n trứ ạ ự ệ ề ệ ơ ướ đc ây M i công c , ỗ ụ

thi t b thế ị ường ch th c hi n ỉ ự ệ được 1 vài công vi c c th nào ó Thí ệ ụ ể đ

d , cây ch i ụ ổ để quét, radio để ắ b t và nghe ài audio đ

 Máy tính số (digital computer) c ng là 1 thi t b , nh ng thay vì ch th c ũ ế ị ư ỉ ự

hi n 1 s ch c n ng c th , sát v i nhu c u ệ ố ứ ă ụ ể ớ ầ đời thường c a con ủ

người, nó có th th c hi n 1 s h u h n các ch c n ng c b n (ể ự ệ ố ữ ạ ứ ă ơ ả t p ậ

l nhệ ), m i l nh r t s khai ch a gi i quy t tr c ti p ỗ ệ ấ ơ ư ả ế ự ế được nhu c u ầ đời

thường nào c a con ngủ ười C ch th c hi n các l nh là t ơ ế ự ệ ệ ự động, b t ắ

u t l nh c ch nh nào ó r i tu n t t ng l nh k ti p cho n

l nh cu i cùng Danh sách các l nh ệ ố ệ được th c hi n này ự ệ được g i là ọ

chương trình

Ch ươ ng 1: Ph ươ ng pháp gi i quy t bài toán b ng máy tính s ả ế ằ ố

1.1 Các khái ni m c b n v máy tính s ệ ơ ả ề ố

Trang 4

 Các l nh mà máy hi u và th c hi n ệ ể ự ệ đượ đượ c c g i là ọ l nh máy ệ

Ta dùng ngôn ng ữ để miêu t các l nh ả ệ Ngôn ng l p trình ữ ậ c u ấ

thành t 2 y u t chính y u : cú pháp và ng ngh a Cú pháp qui ừ ế ố ế ữ ĩ

nh tr t t k t h p các ph n t c u thành 1 l nh (câu), còn

ng ngh a cho bi t ý ngh a c a l nh ó ữ ĩ ế ĩ ủ ệ đ

 B t k công vi c ( ấ ỳ ệ bài toán ) ngoài đờ i nào c ng có th ũ ể đượ c chia thành trình t nhi u công vi c nh h n Trình t các công vi c ự ề ệ ỏ ơ ự ệ

nh này ỏ đượ c g i là gi i thu t gi i quy t công vi c ngoài ọ ả ậ ả ế ệ đờ i

M i công vi c nh h n c ng có th ỗ ệ ỏ ơ ũ ể đượ c chia nh h n n a n u ỏ ơ ữ ế

nó còn ph c t p, ứ ạ công vi c ngoài ệ đờ i có th ể đượ c miêu t ả

b ng 1 trình t các l nh máy (ch ằ ự ệ ươ ng trình ngôn ng máy) ữ

Các khái ni m c b n v máy tính s ệ ơ ả ề ố

Trang 5

Khoa Công ngh Thông tin ệ Chương 1: Phương pháp gi i quy t bài toán b ng máy tính sả ế ằ Môn : Tin h cọố

 V n ấ đề m u ch t c a vi c dùng máy tính gi i quy t công vi c ngoài ấ ố ủ ệ ả ế ệ

i là

đờ l p trìnhậ (được hi u nôm na là qui trình xác ể định trình t úng ự đ

các l nh máy ệ để th c hi n công vi c) Cho ự ệ ệ đến nay, l p trình là công ậ

vi c c a con ngệ ủ ười (v i s tr giúp ngày càng nhi u c a máy tính).ớ ự ợ ề ủ

 V i công ngh ph n c ng hi n nay, ta ch có th ch t o các máy tính ớ ệ ầ ứ ệ ỉ ể ế ạ

mà t p l nh máy r t s khai, m i l nh máy ch có th th c hi n 1 công ậ ệ ấ ơ ỗ ệ ỉ ể ự ệ

vi c r t nh và ệ ấ ỏ đơn gi n ả công vi c ngoài ệ đời thường tương đương

v i trình t r t l n (hàng tri u) các l nh máy ớ ự ấ ớ ệ ệ L p trình b ng ngôn ậ ằ

ng máy r t ph c t p, t n nhi u th i gian, công s c, k t qu r t khó ữ ấ ứ ạ ố ề ờ ứ ế ả ấ

b o trì, phát tri nả ể

 Ta mu n có máy lu n lý v i t p l nh (ố ậ ớ ậ ệ đượ đặc c t b i ngôn ng l p ả ở ữ ậ

trình) cao c p và g n g i h n v i con ngấ ầ ủ ơ ớ ười Ta thường hi n th c máy ệ ự

này b ng 1 máy v t lý + 1 chằ ậ ương trình d ch Có 2 lo i chị ạ ương trình

d ch : trình biên d ch (compiler) và trình thông d ch (interpreter).ị ị ị

Các khái ni m c b n v máy tính s ệ ơ ả ề ố

Trang 6

Trình biên d ch (Compiler) ị

 Ch ươ ng trình biên d ch nh n m t ị ậ ộ ch ươ ng trình ngu n ồ (th ườ ng

c vi t b ng ngôn ng c p cao) và t o ra m t

t ượ ng t ươ ng ng v ch c n ng nh ng th ứ ề ứ ă ư ườ ng đượ c vi t b ng ế ằ

ngôn ng c p th p (th ữ ấ ấ ườ ng là ngôn ng máy) ữ

 N u có l i x y ra trong lúc d ch, trình biên d ch s báo l i, c ế ỗ ả ị ị ẽ ỗ ố

g ng tìm v trí úng k ti p r i ti p t c d ch… Nh v y, m i l n ắ ị đ ế ế ồ ế ụ ị ờ ậ ỗ ầ

d ch 1 ch ị ươ ng trình, ta s xác nh ẽ đị đượ c nhi u l i nh t có th có ề ỗ ấ ể

 Sau m i l n d ch, n u không có l i, trình biên d ch s t o ra file ỗ ầ ị ế ỗ ị ẽ ạ

ch a ứ ch ươ ng trình đố ượ i t ng (thí d file ch ụ ươ ng trình kh thi *.exe ả

trên Windows)

 Để ch y ch ạ ươ ng trình, ng ườ i dùng ch c n kích ho t file kh thi ỉ ầ ạ ả

(ng ườ i dùng không bi t và không c n quan tâm ế ầ đế n file ch ươ ng trình ngu n) ồ

Trang 7

Khoa Công ngh Thông tin ệ Môn : Tin h cọ

Trình thông d ch (Interpreter) ị

 Ch ươ ng trình thông d ch không t o ra và l u gi ch ị ạ ư ữ ươ ng trình đố i

t ượ ng

 M i l n thông d ch 1 ch ỗ ầ ị ươ ng trình ngu n là 1 l n c g ng ch y ồ ầ ố ắ ạ

ch ươ ng trình này theo cách th c sau : ứ

 d ch và chuy n sang mã th c thi t ng l nh m t r i nh máy ị ể ự ừ ệ ộ ồ ờ

ch y o n l nh t ạ đ ạ ệ ươ ng ng ứ

 N u có l i thì báo l i, n u không có l i thì thông d ch l nh k ế ỗ ỗ ế ỗ ị ệ ế

ti p cho ế đế n khi h t ch ế ươ ng trình.

 Nh v y, m i l n thông d ch ch ư ậ ỗ ầ ị ươ ng trình, trình thông d ch ch ị ỉ

thông d ch các l nh trong lu ng thi hành c n thi t ch không ị ệ ồ ầ ế ứ

thông d ch h t m i l nh c a ch ị ế ọ ệ ủ ươ ng trình ngu n Do ó, sau ồ đ

khi thông d ch thành công 1 ch ị ươ ng trình, ta không th k t ể ế

lu n r ng ch ậ ằ ươ ng trình này không có l i ỗ

Ch ươ ng 1: Ph ươ ng pháp gi i quy t bài toán b ng máy tính s ả ế ằ ố

Trang 8

So sánh trình biên d ch & trình thông d ch ị ị

 M i ho t ọ ạ độ ng x lý trên m i mã ngu n c a ch ử ọ ồ ủ ươ ng trình (ki m tra l i, d ch ra các ể ỗ ị

l nh ệ đố ượ i t ng t ươ ng đươ ng, ) đề đượ u c ch ươ ng trình biên d ch th c hi n ị ự ệ để ạ t o

c ch ng trình i t ng Do ó sau khi d ch các file mã ngu n c a ch ng

trình, n u không có l i, ta có th k t lu n ch ế ỗ ể ế ậ ươ ng trình không th có l i th i ể ỗ ờ

i m d ch

đ ể ị (t v ng, cú pháp) Quá trình biên d ch và quá trình th c thi ch ừ ự ị ự ươ ng trình là tách r i nhau : ờ biên d ch 1 ị l n và ch y nhi u l n cho ầ ạ ề ầ đế n khi c n c p nh t ầ ậ ậ

version m i c a ch ớ ủ ươ ng trình.

 Ch ươ ng trình thông d ch s thông d ch t ng l nh theo ị ẽ ị ừ ệ lu ng thi hành ồ c a ủ

ch ươ ng trình b t ắ đầ u t i m nh p c a ch ừ đ ể ậ ủ ươ ng trình, thông d ch 1 l nh g m 2 ị ệ ồ

ho t ạ độ ng : biên d ch l nh ó và th c thi ị ệ đ ự các l nh k t qu N u 1 o n l nh ệ ế ả ế đ ạ ệ

c n ầ đượ c th c thi l p l i thì trình thông d ch s ph i thông d ch l i t t c o n ự ặ ạ ị ẽ ả ị ạ ấ ả đ ạ

l nh ó i u này s làm cho vi c ch y ch ệ đ Đ ề ẽ ệ ạ ươ ng trình trong ch ế độ thông d ch ị

không hi u qu ệ ả.

 Vi c ch y ch ệ ạ ươ ng trình b ng c ch thông d ch òi h i ằ ơ ế ị đ ỏ ch ươ ng trình thông d ch ị

và ch ươ ng trình ng d ng ứ ụ c n ch y ph i t n t i ầ ạ ả ồ ạ đồ ng th i ờ trong b nh máy ộ ớ

tính, do ó có nguy c ch y không đ ơ ạ đượ c các ch ươ ng trình l n n u ớ ế tài nguyên c a ủ

máy không đủ cho c 2 ch ả ươ ng trình thông d ch và ch ị ươ ng trình ng d ng ứ ụ

Trang 9

Khoa Công ngh Thông tin ệ Môn : Tin h cọ

 G i ngôn ng máy v t lý là Nọ ữ ậ 0 Trình biên d ch ngôn ng Nị ữ 1 sang ngôn ng Nữ 0 s nh n ẽ ậ đầu vào là chương trình được vi t b ng ngôn ế ằ

ng Nữ 1, phân tích t ng l nh Nừ ệ 1 r i chuy n thành danh sách các l nh ồ ể ệ

ngôn ng Nữ 0 có ch c n ng tứ ă ương đương Để ế vi t ch ươ ng trình d ch ị

t ngôn ng N ừ ữ 1 sang N 0 d dàng, ễ độ ph c t p c a t ng l nh ngôn ứ ạ ủ ừ ệ

ng Nữ 1 không quá cao so v i t ng l nh ngôn ng Nớ ừ ệ ữ 0

 Sau khi có máy lu n lý hi u ậ ể được ngôn ng lu n lý Nữ ậ 1, ta có th nh ể đị

ngh a và hi n th c máy lu n lý Nĩ ệ ự ậ 2 theo cách trên và ti p t c ế ụ đến khi

ta có 1 máy lu n lý hi u ậ ể được ngôn ng N ữ m r t g n g ấ ầ ũi v i con ớ

người, d dàng miêu t gi i thu t c a bài toán c n gi i quy t ễ ả ả ậ ủ ầ ả ế

 Nh ng qui trình trên ch a có i m d ng, v i yêu c u ngày càng cao ư ư đ ể ừ ớ ầ

và ki n th c ngày càng nhi u, ngế ứ ề ười ta ti p t c ế ụ định ngh a nh ng ĩ ữ

ngôn ng m i v i t p l nh ữ ớ ớ ậ ệ ngày càng g n g ầ ũi h n v i con ngơ ớ ườ đểi miêu t gi i thu t càng d dàng, g n nh và trong sáng h n ả ả ậ ễ ọ ẹ ơ

Ch ươ ng 1: Ph ươ ng pháp gi i quy t bài toán b ng máy tính s ả ế ằ ố

Các khái ni m c b n v máy tính s ệ ơ ả ề ố

Trang 10

 Ngôn ng máyữ v t lý là lo i ngôn ng th p nh t mà ngậ ạ ữ ấ ấ ườ ậi l p trình bình thường có th dùng ể được Các l nh và tham s c a l nh ệ ố ủ ệ được miêu t b i các s binary (hay hexadecimal - s ả ở ố ẽ được miêu t chi ti t ả ế

trong chương 2) ây là lo i ngôn ng mà máy v t lý có th hi u tr c Đ ạ ữ ậ ể ể ự

ti p, nh ng con ngế ư ười thì g p nhi u khó kh n trong vi c vi t và b o trì ặ ề ă ệ ế ả

chương trình c p này.ở ấ

 Ngôn ng assemblyữ r t g n v i ngôn ng máy, nh ng l nh c b n ấ ầ ớ ữ ữ ệ ơ ả

nh t c a ngôn ng assembly tấ ủ ữ ương ng v i l nh máy nh ng ứ ớ ệ ư được

bi u di n dể ễ ưới d ng g i nh Ngoài ra, ngạ ợ ớ ười ta t ng că ường thêm khái

ni m "l nh macro" ệ ệ để nâng s c m nh miêu t gi i thu t.ứ ạ ả ả ậ

 Ngôn ng c p caoữ ấ theo trường phái l p trình c u trúc nh Pascal, C, ậ ấ ư

T p l nh c a ngôn ng này khá m nh và g n v i t duy c a ngậ ệ ủ ữ ạ ầ ớ ư ủ ười bình thường

 Ngôn ng hữ ướng đố ượi t ng nh C++, Visual Basic, Java, C#, c i ti n ư ả ế

phương pháp c u trúc chấ ương trình sao cho trong sáng, n ổ định, d ễ

phát tri n và thay th linh ki n.ể ế ệ

Các c p ấ độ ngôn ng l p trình ữ ậ

Trang 11

Khoa Công ngh Thông tin ệ Môn : Tin h cọ

1.2 L ch s phát tri n máy tính s ị ử ể ố

 Máy tính xu t hi n t r t lâu theo nhu c u buôn bán và trao ấ ệ ừ ấ ầ đổ i

ti n t ề ệ

 Bàn tính tay abacus là d ng s khai c a máy tính ạ ơ ủ

5 đơn vị

1 đơn vị

Ch ươ ng 1: Ph ươ ng pháp gi i quy t bài toán b ng máy tính s ả ế ằ ố

Trang 12

Các th h máy tính s ế ệ ố

Đèn điện tử

(1945 - 1955)

ENIAC (1946) 18.000 bóng đèn

1500 rờ le

30 tấn

140 KW

Von Neumann (1945)

Bộ nhớ dây trễ, tĩnh điện Giấy, phiếu đục

lổ Băng từ

Transistors

(1955 - 1965) PDP-1 (1961)

Bộ nhớ xuyến từ

Băng từ, trống từ, đĩa từ.

IC

(1965 - 1980)

IBM 360 (1965)

Intel 8080 (1974) được xem như CPU đầu tiên được tích hợp trên 1 chip

?

(1980 - ????)

80x86 (1978)

(1642 - 1945)

Blaise Pascal (Pháp-1642)

Herman Hollerith lập IBM

(International Business

Machine) ở Mỹ - 1890

Charles Babbage (Anh-1830)

Trang 13

Khoa Công ngh Thông tin ệ Môn : Tin h cọ

 Các l nh c a chệ ủ ương trình (code) s ẽ truy xu tấ (đọc và/ho c ghi) ặ

thông tin (d li uữ ệ )

 Chương trình gi i quy t bài toán nào ó có th ả ế đ ể truy xu t ấ nhi u d ề ữ

li u khác nhau v i tính ch t r t a d ng ệ ớ ấ ấ đ ạ Để truy xu t 1 d li u c ấ ữ ệ ụ

th , ta c n ể ầ 3 thông tin v d li u ó :ề ữ ệ đ

- tên nh n d ng ậ ạ (identifier) xác nh v trí c a d li u.đị ị ủ ữ ệ

- ki u d li u ể ữ ệ (type) miêu t c u trúc c a d li u.ả ấ ủ ữ ệ

- t m v c truy xu t ầ ự ấ (visibility) xác định các l nh ệ được phép truy

xu t d li u tấ ữ ệ ương ng.ứ

 Chương trình c i n = d li u + gi i thu tổ đ ể ữ ệ ả ậ

 Chương trình con (function, subroutine, ) là 1 o n code th c hi n đ ạ ự ệ

ch c n ng ứ ă được dùng nhi u l n nhi u v trí trong chề ầ ở ề ị ương trình,

c nh n d ng thông qua 1 tên g i Ch ng trình con cho phép c u

trúc chương trình, s d ng l i code ử ụ ạ

Ch ươ ng 1: Ph ươ ng pháp gi i quy t bài toán b ng máy tính s ả ế ằ ố

1.3 D li u & ch ữ ệ ươ ng trình

Trang 14

Ch ươ ng trình = c u trúc d li u + gi i thu t ấ ữ ệ ả ậ

entry 'start'

global data

module

(package)

local data

of module

local data

of function

C u trúc 1 ch ấ ươ ng trình c i n ổ đ ể

Trang 15

Khoa Công ngh Thông tin ệ Môn : Tin h cọ

Gi i mã chu i ả ỗ

bit ra d ng ạ

ng ườ i, thi t b ế ị

ngoài hi u ể đượ c

X lý d li u ử ữ ệ

d ng chu i bit ạ ỗ

Mã hóa d li u ữ ệ

thành d ng ạ

chu i bit ỗ

D li u c n x lý b ng ữ ệ ầ ử ằ

máy tính (ch s , hình ữ ố

nh, âm thanh, )

K t qu có ế ả đượ c sau khi x lý b ng máy tính ử ằ

(ch s , hình nh, âm ữ ố ả

thanh, )

Ch ươ ng 1: Ph ươ ng pháp gi i quy t bài toán b ng máy tính s ả ế ằ ố

CDROM, a, b ng, đĩ ă

L u gi d ư ữ ữ

li u s ệ ố để

dùng l i ạ

Máy tính s ố

1.4 Qui trình t ng quát gi i quy t bài toán b ng máy tính s ổ ả ế ằ ố

Trang 16

B nh ộ ớ

(Memory)

n v x lý

(CPU)

Các thi t b ế ị

vào ra (I/O)

Bus giao ti p ế

ch a code và data ứ

ang th c thi

th c thi t ng l nh ự ừ ệ

c a chủ ương trình

giao ti p v i bên ngoài ế ớ

(thường là ngườ đểi)

nh p/xu t tinậ ấ

Mô hình máy tính s Von Neumann ố

Trang 17

Khoa Công ngh Thông tin ệ Môn : Tin h cọ

bàn phím

màn hình

chu t ộ

thùng máy loa

Ch ươ ng 1: Ph ươ ng pháp gi i quy t bài toán b ng máy tính s ả ế ằ ố

Hình d ng v t lý c a vài máy tính ạ ậ ủ

Trang 18

Trong quá kh , phứ ương pháp thường s d ng ử ụ để phân tích bài toán là

phương pháp t -trên-xu ng ừ ố (top-down analysis)

N i dung c a phộ ủ ương pháp này là xét xem, mu n gi i quy t v n ố ả ế ấ đề nào

ó thì c n ph i làm nh ng

đ ầ ả ữ công vi c nh h n ệ ỏ ơ nào M i công vi c nh ỗ ệ ỏ

h n tìm ơ được l i ạ được phân thành nh ng công vi c ữ ệ nh h n n a ỏ ơ ữ , c ứ

nh v y cho ư ậ đến khi nh ng công vi c ph i làm là nh ng công vi c th t ữ ệ ả ữ ệ ậ

n gi n, có th th c hi n d dàng

Thí d vi c h c l y b ng k s CNTT khoa CNTT HBK TP.HCM có th ụ ệ ọ ấ ằ ỹ ư Đ ể

bao g m 9 công vi c nh h n là h c t ng h c k t 1 t i 9, h c h c k i ồ ệ ỏ ơ ọ ừ ọ ỳ ừ ớ ọ ọ ỳ

là h c n môn h c c a h c k ó, h c 1 môn h c là h c m chọ ọ ủ ọ ỳ đ ọ ọ ọ ương c a ủ

môn ó, đ

Hình v c a slide k cho th y tr c quan c a vi c phân tích top-down.ẽ ủ ế ấ ự ủ ệ

1.5 Ph ươ ng pháp phân tích t -trên-xu ng ừ ố

Trang 19

Khoa Công ngh Thông tin ệ Chương 1: Phương pháp gi i quy t bài toán b ng máy tính sả ế ằ Môn : Tin h cọố

Ph ươ ng pháp phân tích t -trên-xu ng ừ ố

Công vi c c n ệ ầ

gi i quy t (A)ả ế

Công vi cệ

A1

Công vi cệ

A2

Công vi cệ

An

Công việc

A11

Công việc

A12

Công việc

A1n

Công việc

An1

Công việc

An2

Công việc

Ann

gi i quy t h n.

Các công vi c ệ đủ nh ỏ

c miêu t b ng

để đượ ả ằ

1 l nh hay 1 l i g i ệ ờ ọ

hàm/th t c ã có ủ ụ đ

Ngày đăng: 29/01/2020, 23:37

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w