Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 1
MÔN TIN H CỌ
Tài li u tham kh o :ệ ả
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.
N i dung chính g m 12 ch ng :ộ ồ ươ
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.ấ
i t ng :Đố ượ SV i h c chính quy toàn tr ngđạ ọ ườ
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 2
MÔN TIN H CỌ
Ch ng 1ươ
PH NG PHÁP GI I QUY T BÀI TOÁNƯƠ Ả Ế
B NG MÁY TÍNH SẰ Ố
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ệ ơ ả ề ố
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ừ ố
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 3
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ệ ơ ả ề ố
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 4
Ch ng 1: Ph ng pháp gi i quy t bài toán b ng máy tính sươ ươ ả ế ằ ố
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ệ ơ ả ề ố
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 5
Ch ng 1: Ph ng pháp gi i quy t bài toán b ng máy tính sươ ươ ả ế ằ ố
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ệ ơ ả ề ố
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 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 đượ ế ằ ữ ấ ạ ộ ch ng trình i ươ đố
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). ồ
Ch ng 1: Ph ng pháp gi i quy t bài toán b ng máy tính sươ ươ ả ế ằ ố
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 7
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ươ ươ ả ế ằ ố
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 8
Ví d v trình thông d chụ ề ị
a = 5
b = 4
IF a > b THEN
c = a + b
ELSE
c = a – b; // l i x y raỗ ả
END IF
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 9
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 đượ ự ặ ạ ị ẽ ả ị ạ ấ ả đ ạ ệ
ó. đ 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.ụ
Ch ng 1: Ph ng pháp gi i quy t bài toán b ng máy tính sươ ươ ả ế ằ ố
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 10
Compiler: Code sau khi c biên d ch s t o ra 1 file th ng là .exe, và file .exe đ ị ẽ ạ ườ
này có th em s d ng l i không c n biên d ch n a.ể đ ử ụ ạ ầ ị ữ
Interpreter: Nó d ch t ng l nh r i ch y t ng l nh, l n sau mu n ch y l i thì ph i ị ừ ệ ồ ạ ừ ệ ầ ố ạ ạ ả
interpreter l i.ạ
Ví d :ụ
Compiler gi ng nh m t d ch thu t gia, giã s ông ta d ch m t cu n sách t ố ư ộ ị ậ ử ị ộ ố ừ
English sang Vietnam, sau này m t ng i không bi t English v n có th hi u ộ ườ ế ẫ ể ể
n i dungộ quy n sách b ng cách c quy n ti ng Vi t do ông ta d ch.ể ằ đọ ể ế ệ ị
Interpreter gi ng nh là thông d ch viên, có m t cu c hôi th o ng i báo cáo là ố ư ị ộ ộ ả ườ
ng i Anh, trong khi h u h t ng i d báo cáo là ng i vi t không bi t ti ng ườ ầ ế ườ ự ườ ệ ế ế
Anh thì s c n n m t anh thông d ch viên, l n sau c ng có cu c h i th o ẽ ầ đế ộ ị ầ ũ ộ ộ ả
t ng t nh v y, cùng ch ó nh ng c ng c n n anh thông d ch viên. ươ ự ư ậ ủ đề đ ư ũ ầ đế ị
So s ánh ngắn gọ n
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 11
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à, 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ệ ơ ả ề ố
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 12
Ch ng 1: Ph ng pháp gi i quy t bài toán b ng máy tính sươ ươ ả ế ằ ố
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ấ độ ữ ậ
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 13
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ươ ươ ả ế ằ ố
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 14
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 15
Mô t bàn tính:ả
1 . C u t o : Bàn tính là m t khung ch nh t b ng g có m t thanh gi a phân chia ra hai ph n. ấ ạ ộ ữ ậ ằ ỗ ộ ở ữ ầ
thông th ng có 10 c t hay còn g i là gióng. Các th ng gia l n xài lo i nhi u gióng h n. Gióng là ườ ộ ọ ươ ớ ạ ề ơ
m t que tre vót tròn xiên 5 h t g .( quan l i có khi làm b ng x ng ho c ngà voi ) 5 h t này c ộ ạ ổ ạ ằ ươ ặ ạ đượ
chia trên thanh phân chia 4 h t, m i h t là 1 n v và m t h t bên d i là 5 n v .ạ ỗ ạ đơ ị ộ ạ ướ đơ ị
Tóm l i bàn tinh nh 2 hình ch nh t ghép lài t 10 gióng g m 40 h t bên trên và 10 h t bên d i ạ ư ữ ậ ừ ồ ạ ạ ướ
t c là 50 h t.ứ ạ
Tính t ph i qua, các gióng là bách phân, th p phân, n v , ch c , tr m, ngàn, v n ừ ả ậ đơ ị ụ ă ạ
2/ V n hành : Trong ph m vi bài vi t này, mình ch cho b n cách làm toán c ng :ậ ạ ế ỉ ạ ộ
Ban u các h t trên a h t lên trên , h t d i a h t xu ng d .thanh ng n không có h t nào.đầ ạ đư ế ạ ướ đư ế ố ướ ă ạ
Thao tác b ng tay ph i : ngón cái búng h t t d i lên, b n ngón còn l i a h t t trên ằ ả để ạ ừ ướ ố ạ để đư ạ ừ
xu ng.ố
Cách th hi n và c s : S t c là s h t c kéo v thanh phân chia t m g i là gi a nhé : s ể ệ đọ ố ố ứ ố ạ đượ ề ạ ọ ở ữ ố
0 t c là gióng không có h t nào gi a. S 1,2,3 ho c 4 t c là có 1,2,3 ho c 4 t trên a xu ng ứ ạ ở ữ ố ặ ứ ặ ừ đư ố
gi a. S 5 là 1 h t t d i a lên, s 6 là m t h t d i và 1 h t trên s 7,8,9 c ng t ng t .ữ ố ạ ừ ướ đư ố ộ ạ ướ ạ ố ũ ươ ự
Nh v y mu n th hi n 17 ng n m xu (s 17,05) ta làm t ph i qua là 1 h t d i, không h t, 1 ư ậ ố ể ệ đồ ă ố ừ ả ạ ướ ạ
h t d i và 2 h t trên, 1 h t trên.ạ ướ ạ ạ
bây gi c ng v i 5 ng m t nhé ( s 5,10 ) : T ph i qua 5 + 0 thì không thêm h t nào. 0 +1 thì ờ ộ ớ đồ ố ố ừ ả ạ
thêm 1 h t t trên xu ng.ạ ừ ố
n 7+5 m i là r c r i ây : vì không 5 h t nên ta ph i m n bên trái 1 h t t c là 10 b ng cách Đế ớ ắ ố đ đủ ạ ả ượ ạ ứ ằ
cho m t h t bên trái xu ng, vì ch m n 5 nên b n ph i tr lai 5 b ng cách cho 1 h t bên d i ộ ạ ố ỉ ượ ạ ả ả ằ ạ ướ
xu ng.ố
Trong tr ng h p n u m n h t bên trái nh ng không có h t ( vì g p s 9) thì ta m n h t bên ườ ơ ế ượ ạ ư ạ ặ ố ượ ạ
trái n a túc là hàng tr m. c ng làm t ng t ữ ă ũ ươ ự
B n c làm nh v y cho n h t s : K t qu là s h t c p trên và d i thanh phân chia : 22 ng ạ ứ ư ậ đế ế ố ế ả ố ạ ặ ướ đồ
15 xu.
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 16
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-8 (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)
Cơ
(1642 - 1945)
Blaise Pascal (Pháp-1642)
Herman Hollerith lập IBM
(International Business
Machine) ở Mỹ - 1890
Charles Babbage (Anh-1830)
Ch ng 1: Ph ng pháp gi i quy t bài toán b ng máy tính sươ ươ ả ế ằ ố
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 17
Các máy tính c h cơ ọ
Abacus: Bàn tính g y, là công c tính toán ẩ ụ
ra i s m nh t. Theo nhi u tài li u thì nó đờ ớ ấ ề ệ
c ra i Trung Qu c. đượ đờ ở ố
N m 1642: Pascal ã ch t o ra chi c máy ă đ ế ạ ế
tính c h c u tiên, th c hi n c phép ơ ọ đầ ự ệ đượ
c ng và phép tr b ng cách nh p phím s . ộ ừ ằ ấ ố
N m 1830, Babbage – GS H Cambridge ă Đ
– Anh công b công trình "máy tính sai ố
phân", sau ó ông phát tri n thành máy đ ể
tính a n ng, ti n thân c a máy tính s đ ă ề ủ ố
hi n i ngày nay, máy có th c c ệ đạ ể đọ đượ
l nh t bìa c l và thi hành chúng ệ ừ đụ ỗ
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 18
Th h u tiên (1945 – 1955)ế ệđầ
Máy tính ENIAC
Máy tính ENIAC (Ele ctro nic
Numbe rical Inte grator And Command)
do John Mauchly và Jo hn Pres pe r
Eckert (đại học Pe ns ylvania - Mỹ)
thiết kế và chế tạo , là chiếc máy s ố
hoá điệ n tử đa năng đầu tiê n trên thế
giớ i. Thiết kế vào năm 1943 và hoàn
thành vào năm 1946
ENIAC là 1 chiếc máy tính khổng
lồ vớ i 18.000 bóng đè n chân
không, nặng hơ n 30 tấn, tiêu thụ
lượ ng điện năng khoảng 140Kw
và c hiếm 1 diện tích khoảng 1393
m2. Mặc dù vậy nó làm việc
nhanh hơ n nhiều s o vớ i cac loại
máy tính điện cơ cùng thờ i vớ i
khả năng thực hiện 5000 fép tính
cộng trong 1 giây đồng hồ.
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 19
Máy tính IAS
N m 1946, Giáo s Von Neumann cùng các ng nghi p b t tay thi t k 1 máy ă ư đồ ệ ắ ế ế
tính m i có ch ng trình c l u tr v i tên g i IAS (Institue for Advanced ớ ươ đượ ư ữ ớ ọ
Studies) t i h c vi n nghiên c u cao c p Princeton, M . M c dù mãi n n m ạ ọ ệ ứ ấ ỹ ặ đế ă
1952 máy IAS m i c hoàn t t, nó v n là mô hình cho t t c các máy tính a ớ đượ ấ ẫ ấ ả đ
n ng sau này.ă
C u trúc t ng quát c a máy IAS g m cóấ ổ ủ ồ
+ M t b nh chính l u d li u và ch ng trình.ộ ộ ớ để ư ữ ệ ươ
+ M t n v s h c - lu n lý ALU - Arithmetic and Logic Unit: có kh n ng thao ộ đơ ị ố ọ ậ ả ă
tác trên d liêuj nh phân.ữ ị
+ M t n v i u khi n có nhi m v thông d ch các ch th trong b nh và làm ộ đơ ị đề ể ệ ụ ị ỉ ị ộ ớ
cho chúng c th c thi.đượ ự
+ Thi t b nh p xu t c v n hành b i n v i u khi n.ế ị ậ ấ đượ ậ ở đơ ị đề ể
H u h t các máy tính hi n nay u có chung c u trúc và ch c n ng t ng quát ầ ế ệ đề ấ ứ ă ổ
nh trên. Do v y chúng có tên chung là máy ư ậ Von Neumann.
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 20
Máy tính Von Neumann
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 21
Th h th hai (1958 – 1964) ế ệ ứ
Công ty Bell ã phát minh ra đ transistor vào n m 1947 và do ó th ă đ ế
h th hai c a máy tính c c tr ng b ng s thay th các èn ệ ứ ủ đượ đặ ư ằ ư ế đ
i n t b ng các transistor.Tuy nhiên, n cu i th p niên 50, máy đệ ử ằ đế ố ậ
tính th ng m i dùng transistor m i xu t hi n trên th tr ng. Kích ươ ạ ớ ấ ệ ị ườ
th c máy tính gi m, r ti n h n, tiêu t n n ng l ng ít h n.ướ ả ẻ ề ơ ố ă ượ ơ
Vào th i i m này, m ch in và b nh b ng xuy n t c dùng. ờ để ạ ộ ớ ằ ế ừ đượ
Ngôn ng c p cao xu t hi n (nh FORTRAN n m 1956, COBOL ữ ấ ấ ệ ư ă
n m 1959, ALGOL n m 1960) và h i u hành ki u tu n t ă ă ệ đề ể ầ ự
(Batch Processing) c dùng. Trong h i u hành này, ch ng đượ ệ đề ươ
trình c a ng i dùng th nh t c ch y, xong n ch ng trình ủ ườ ứ ấ đượ ạ đế ươ
c a ng i dùng th hai và c th tiêp t c.ủ ườ ứ ứ ế ụ
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 22
Th h th 3 (1964 – 1971)ế ệ ứ
S phát minh ra m ch tích h p vào n m 1958 ã cách m ng hóa i n t và b t u cho ự ạ ợ ă đ ạ đệ ử ắ đầ
k nguyên vi i n t v i nhi u thành t u r c r . M ch tích h p chính là y u t xác nh ỷ đệ ử ớ ề ự ự ỡ ạ ợ ế ố đị
th h th ba c a máy tính. Trong m c ti p sau ây chúng ta s tìm hi u m t cách ng n ế ệ ứ ủ ụ ế đ ẽ ể ộ ắ
g n v công ngh m ch tích h p. Sau ó, hai thành viên quan tr ng nh t trong các máy ọ ề ệ ạ ợ đ ọ ấ
tính th h th ba, máy IBM System/360 và máy DEC PDP-8ế ệ ứ
Máy IBM System/360
Máy IBM System/360 c IBM a ra vào n m 1964 là h máy tính công nghi p u đượ đư ă ọ ệ đầ
tiên c s n xu t m t cách có k ho ch. Khái ni m h máy tính bao g m các máy tính đượ ả ấ ộ ế ạ ệ ọ ồ
t ng thích nhau là m t khái ni m m i và h t s c thành công. ươ ộ ệ ớ ế ứ
H máy IBM System/360 không nh ng ã quy t nh t ng lai v sau c a IBM mà còn ọ ữ đ ế đị ươ ề ủ
có m t nh h ng sâu s c n toàn b ngành công nghi p máy tính. Nhi u c tr ng ộ ả ưở ắ đế ộ ệ ề đặ ư
c a h máy này ã tr thành tiêu chu n cho các máy tính l n khác. ủ ọ đ ở ẩ ớ
Máy DEC PDP-8
Trong lúc IBM gi i thi u máy System/360 thì DEC cho ra i m t hi n t ng khác trong ớ ệ đờ ộ ệ ượ
ngành công nghi p máy tính. ó là máy PDP-8. Vào lúc m t máy tính c trung c ng òi ệ Đ ộ ỡ ũ đ
h i m t phòng có i u hòa không khí, máy PDP-8 nh có th t trên m t chi c ỏ ộ đề đủ ỏ để ể đặ ộ ế
gh dài v n th ng g p trong phòng thí nghi m ho c k t h p vào trong các thi t b ế ố ườ ặ ệ ặ để ế ợ ế ị
khác.
International Business Machine : IBM
Digital Equipment Corporation : DEC
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 23
IBM System/360
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 24
DEC – PDP 8
Khoa Công ngh Thông tinệ
Tr ng H Bách Khoa Tp.HCMườ Đ
Môn : Tin h cọ
Slide 25
Th h th t (1974 – hi n nay)ế ệ ứ ư ệ
n n m 1974, Intel a ra chip 8080, b vi x lý a d ng u Đế ă đư ộ ử đ ụ đầ
tiên c thi t k tr thành CPU c a m t máy vi tính a d ng. đượ ế ế để ở ủ ộ đ ụ
So v i chip 8008, chip 8080 nhanh h n, có t p ch th phong phú ớ ơ ậ ỉ ị
h n và có kh n ng nh a ch l n h n.ơ ả ă đị đị ỉ ớ ơ
C ng trong cùng th i gian ó, các b vi x lý 16 bit ã b t u ũ ờ đ ộ ử đ ắ đầ
c phát tri n. M c dù v y, mãi n cu i nh ng n m 70, các b đượ ể ặ ậ đế ố ữ ă ộ
vi x lý 16 bit a d ng m i xu t hi n trên th tr ng. Sau ó n ử đ ụ ớ ấ ệ ị ườ đ đế
n m 1981, c Bell Lab và Hewlett-packard u ã phát tri n các ă ả đề đ ể
b vi x lý này. ộ ử