Giáo trình Tin học đại cương

Chương 1 : ĐIỆN TOÁN CĂN BẢN  
1.1 Lịch sử máy tính  
Do nhu cầu cần tăng độ chính xác và giảm thời gian tính toán, con người đã  
quan tâm chế tạo các công cụ tính toán từ xưa: bàn tính tay của người Trung quốc,  
máy cộng cơ học của nhà toán học Pháp Blaise Pascal (1623 - 1662), máy tính cơ  
học có thể cộng trừ nhân chia của nhà toán học Đức Gottfried Wilhelmvon  
Leibniz (1646 - 1716), máy sai phân để tính các đa thức toán học, máy phân giải  
điều khiển bằng phiếu đục lỗ của Charles Babbage (1792 - 1871) ...  
Tuy nhiên, máy tính điện tử thực sự hình thành bắt đầu vào thập niên 1950 và  
đến nay đã trải qua 5 thế hệ được phân loại theo sự tiến bộ về công nghệ điện tử và  
vi điện tử cũng như các cải tiến về nguyên lý, tính năng và loại hình của nó.  
❖ Thế hệ 1 (1950 - 1958): Máy tính sử dụng các bóng đèn điện tử chân  
không, mạch riêng rẽ, vào số liệu bằng phiếu đục lỗ, điều khiển bằng tay. Máy có  
kích thước rất lớn, tiêu thụ năng lượng nhiều, tốc độ tính chậm khoảng 300 - 3.000  
phép tính mỗi giây. Loại máy tính điển hình thế hệ 1 như EDVAC (Mỹ) hay  
BESM (Liên xô cũ), ...  
❖ Thế hệ 2 (1958 - 1964): Máy tính dùng bộ xử lý bằng đèn bán dẫn,  
mạch in. Máy đã có chương trình dịch như Cobol, Fortran và hệ điều hành đơn  
giản. Kích thước máy còn lớn, tốc độ tính khoảng 10.000 đến 100.000 phép/s.  
Điển hình như loại IBM-1070 (Mỹ) hay MINSK(LiênXô cũ), ...  
❖ Thế hệ 3 (1965 - 1974): Máy tính được gắn các bộ xử lý bằng vi  
mạch điện tử cỡ nhỏ có thể có được tốc độ tính khoảng 100.000 đến 1 triệu phép/s.  
Máy đã có các hệ điều hành đa chương trình, nhiều người dùng đồng thời hoặc  
theo kiểu chia thời gian. Kết quả từ máy tính có thể in ra trực tiếp ở máy in. Điển  
hình như loại IBM 360 (Mỹ) hay EC (Liên Xô cũ), ...  
❖ Thế hệ 4 (1974 - 1990): Máy tính bắt đầu có các vi mạch đa xử lý có  
tốc độ tính hàng chục triệu đến hàng tỷ phép/giây. Giai đoạn này hình thành 2 loại  
1
máy tính chính : máy tính cá nhân để bàn (Personal Computer - PC) hoặc xách tay  
(Laptop hoặc Notebook computer) và các loại máy tính chuyên nghiệp thực hiện  
đa chương trình, đa vi xử lý ... hình thành các hệ thống mạng máy tính (Computer  
Networks), và các ứng dụng phong phú đa phương tiện.  
❖ Thế hệ 5 (1990 - nay): Bắt đầu có các nghiên cứu tạo ra các máy tính  
mô phỏng các hoạt động của não bộ và hành vi con người, có trí khôn nhân tạo với  
khả năng tự suy diễn phát triển các tình huống nhận được và những hệ quản lý  
kiến thức cơ sở để giải quyết các bài toán đa dạng.  
1.2 Khái niệm tin học và máy tính  
1.2.1 Tin học là gì ?  
Tin học là một ngành khoa học công nghệ nghiên cứu các phương pháp xử lý  
thông tin một cách tự động dựa trên các phương tiện kỹ thuật mà chủ yếu hiện tại  
là máy tính điện tử.  
1.2.2 Máy tính điện tử (Computer)  
Là một thiết bị điện tử dùng để lưu trữ và xử lý thông tin theo các chương trình  
định trước do con người định ra  
1.3 Các hệ đếm  
Hệ đếm là tập hợp các ký hiệu và qui tắc sử dụng tập ký hiệu đó để biểu diễn  
và xác định các giá trị các số. Mỗi hệ đếm có một số ký số (digits) hữu hạn và tổng  
số ký số của mỗi hệ đếm được gọi là cơ số (base hay radix), ký hiệu là b.  
Các hệ đếm phổ biến hiện nay hay dùng là hệ đếm La mã, hệ đếm thập phân,  
hệ đếm nhị phân, hệ đếm bát phân, hệ đếm thập lục phân. Nhưng trong lĩnh vực kỹ  
thuật hiện nay phổ biến 4 hệ đếm như sau :  
Hệ đếm  
Cơ số  
Ký số và trị tuyệt đối  
Hệ nhị phân  
2
0,1  
Hệ bát phân  
8
0,1,2,3,4,5,6,7  
Hệ thập phân  
Hệ thập lục phân  
10  
16  
0,1,2,3,4,5,6,7,8,9  
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F  
2
❖ Hệ đếm thập phân (decimal system)  
Hệ đếm thập phân hay hệ đếm cơ số 10 là một trong những phát minh của  
người Ả rập cổ, bao gồm 10 ký số theo ký hiệu sau:  
0, 1, 2, 3, 4, 5, 6, 7, 8, 9  
Qui tắc tính giá trị của hệ đếm này là mỗi đơn vị ở một hàng bất kỳ có giá trị  
bằng 10 đơn vị của hàng kế cận bên phải. (Ở đây b = 10). Bất kỳ số nguyên dương  
trong hệ thập phân được thể hiện như là một tổng các chuỗi các ký số thập phân  
nhân với 10 lũy thừa, trong đó số mũ lũy thừa được tăng thêm 1 đơn vị kể từ số  
mũ lũy thừa phía bên phải nó. Số mũ lũy thừa của hàng đơn vị trong hệ thập phân  
là 0.  
Ví dụ: Số 5246 có thể được thể hiện như sau:  
5246 = 5 x 103 + 2 x 102 + 4 x 101 + 6 x 100 = 5 x 1000 + 2 x 100 + 4 x 10 + 6 x 1  
Thể hiện như trên gọi là ký hiệu mở rộng của số nguyên.  
Vì 5246 = 5000 + 200 + 40 + 6  
Như vậy, trong số 5246: ký số 6 trong số nguyên đại diện cho giá trị 6 đơn vị  
(1s), ký số 4 đại diện cho giá trị 4 chục (10s), ký số 2 đại diện cho giá trị 2 trăm  
(100s) và ký số 5 đại diện cho giá trị 5 ngàn (1000s). Nghĩa là, số lũy thừa của 10  
tăng dần 1 đơn vị từ trái sang phải tương ứng với vị trí ký hiệu số,  
100 = 1 101 = 10 102 = 100 103 = 1000 104 = 10000 ...  
Mỗi ký số ở thứ tự khác nhau trong số sẽ có giá trị khác nhau, ta gọi là giá trị  
vị trí (place value).  
Phần phân số trong hệ thập phân sau dấu chấm phân cách (theo qui ước của  
Mỹ) thể hiện trong ký hiệu mở rộng bởi 10 lũy thừa âm tính từ phải sang trái kể từ  
dấu chấm phân cách  
Ví dụ: 254.68 = 2x102 + 5x101 + 4x100 + 6x10-1 + 8x10-2  
Tổng quát, hệ đếm cơ số b (b≥2, b là số nguyên dương) mang tính chất sau:  
· Có b ký số để thể hiện giá trị số. Ký số nhỏ nhất là 0 và lớn nhất là b-1.  
3
· Giá trị vị trí thứ n trong một số của hệ đếm bằng cơ số b lũy thừa n : bn  
Số N(b) trong hệ đếm cơ số (b) thể hiện : N(b) = anan-1an-2…a1a0a-1a-2…a-m  
trong đó, số N(b) có n+1 ký số chẵn ở phần nguyên và m ký số lẻ, sẽ có giá trị  
là:  
N(b) = an.bn + an-1.bn-1 + an-2.bn-2 + …+a1b1 + a0.b0 + a-1.b-1 + a-2.b-2 +…+ a-m.b-m  
❖ Hệ đếm nhị phân  
Với b = 2, chúng ta có hệ đếm nhị phân. Đây là hệ đếm đơn giản nhất với 2  
chữ số là 0 và 1. Mỗi chữ số nhị phân gọi là BIT (viết tắt từ chữ BInary digiT). Hệ  
nhị phân tương ứng với 2 trạng thái của các linh kiện điện tử trong máy tính - cụ  
thể: đóng (có điện) ký hiệu là 1 và tắt (không điện) ký hiệu là 0. Vì hệ nhị phân chỉ  
có 2 trị số là 0 và 1, nên khi muốn diễn tả một số lớn hơn, hoặc các ký tự phức tạp  
hơn thì cần kết hợp nhiều bit với nhau.  
Ta có thể chuyển đổi hệ nhị phân theo hệ thập phân quen thuộc.  
Ví dụ 3.6: Số 11101.11(2) sẽ tương đương với giá trị thập phân là :  
Số nhị phân: 1  
Số vị trí:  
1
1
0
1
1
1
4
3
2
1
0
-1  
-2  
Trị vị trí: 24  
Hệ 10 là: 16  
23  
8
22  
4
21  
2
20  
1
2-1 2-2  
0.5  
0.25  
như vậy:  
11101.11  
(2) = 1x16 + 1x8 + 1x4 + 0x2 + 1x1 + 1x0.5 + 1x0.25  
= 29.75  
(10)  
tương tự số 10101 (hệ 2) sang hệ thập phân sẽ là:  
(2) = 1x24 + 0x23 + 1x22 + 0x21 + 1x20 = 16 + 0 + 4 + 0 + 1 = 21(10)  
❖ Hệ đếm bát phân (octal number system)  
10101  
Nếu dùng 1 tập hợp 3 bit thì có thể biểu diễn 8 trị số khác nhau: 000,  
4
001, 010, 011, 100, 101, 110, 111. Các trị số này tương đương với 8 trị số  
trong hệ thập phân là 0, 1, 2, 3, 4, 5, 6, 7. Tập hợp các chữ số này gọi là hệ  
bát phân, là hệ đếm với b = 8 = 23. Trong hệ bát phân, trị số vị trí là lũy  
thừa của 8.  
(B) = 2x82 + 3x81 + 5x80 + 6x8-1 + 4x8-2 = 157.8125(10)  
Ví dụ: 235 . 64  
❖ Hệ đếm thập lục phân (hexa-decimal number system)  
Hệ đếm thập lục phân là hệ cơ số b = 16 = 24 tương đương với tập hợp 4 chữ số  
nhị phân (4 bit). Khi thể hiện ở dạng hexa-decimal, ta có 16 ký tự gồm 10 chữ số từ 0  
đến 9, và 6 chữ in A, B, C, D, E, F để biểu diễn các giá trị số tương ứng là 10, 11, 12,  
13, 14, 15. Với hệ thập lục phân, trị vị trí là lũy thừa của 16.  
Ví dụ: 34F5C(16) = 3X164 + 4x163 + 15x162 + 5x161 + 12x160 = 216294(10)  
Ghi chú: Một số chương trình qui định viết số hexa phải có chữ H ở cuối chữ số.  
Ví dụ: Số 15 viết là FH.  
Bảng qui đổi tương đương 16 chữ số đầu tiên của 4 hệ đếm  
Hệ 10  
Hệ 2  
0000  
0001  
0010  
0011  
0100  
0101  
0110  
0111  
1000  
1001  
1010  
1011  
Hệ 8  
00  
01  
02  
03  
04  
05  
06  
07  
10  
11  
12  
13  
Hệ 16  
0
0
1
2
3
4
5
6
7
8
9
A
B
1
2
3
4
5
6
7
8
9
10  
11  
5
12  
13  
14  
15  
1100  
1101  
1110  
1111  
14  
15  
16  
17  
C
D
E
F
❖ Chuyển đổi số giữa các hệ đếm  
Chuyển một số từ hệ cơ số L=10 sang hệ cơ số H:  
Ta lưu ý rằng các hệ cơ số ta xét đều lấy 1 làm đơn vị, vì vậy một số bất kỳ dù  
biểu diễn ở hệ cơ số nào thì phần thập phân và phần nguyên đều không đổi. Nghĩa  
là dù biến đổi sang hệ cơ số nào đi nữa thì phần thập phân cũng chỉ chuyển sang  
phần thập phân,phần nguyên sang phần nguyên.  
Giả sử ta có một số có phần thập phân b=k+d trong hệ cơ số L trong đó k là  
phần nguyên trước dấu phẩy và d là phần thập phân sau dấu phẩy. Ta sẽ chuyển đổi  
riêng từng phần theo quy tắc sau:  
- Với phần nguyên: Lấy k chia liên tiếp cho H cho đến khi thương số bằng 0,  
phép chia thứ i có số dư bi là chữ số trong hệ cơ số H, i = 0,1,2,...,n , khi đó bn bn-1  
bn-2... b0 là phần nguyên của số b trong hệ cơ số H.  
- Với phần thập phân: Lấy phần thập phân của d nhân liên tiếp với H cho đến  
khi kết quả phép nhân không còn phần thập phân hoặc đạt được độ chính xác ta cần,  
mỗi lần nhân ta lấy phần nguyên của kết quả là cj là chữ số trong hệ cơ số H, j =  
1,2,...,m.Khi đó số.c1c2...cm chính là phần thập phân của số nhị phân cần tìm.  
(Chúng ta lưu ý là sau mỗi lần nhân ta chỉ lấy phần thập phân để nhân tiếp với H,  
phần nguyên ở đây được hiểu là phần bên trái dấu chấm thập phân).  
Ví dụ: Cho số thập phân 14.125 tìm số nhị phân tương ứng.  
Ta có k = 14, d = 0.125  
Chuyển đổi phần nguyên 14  
Chia 2  
14  
Dư  
0
6
7
3
1
0
1
1
1
Chuyển đổi phần thập phân 0.125  
Nhân 2  
0.125  
0.25  
0.5  
Phần nguyên  
0
0
1
1
Vậy 14.125=1110.001  
Chuyển đổi 0.2 sang hệ nhị phân:  
Nhân 2  
0.2  
0.4  
0.8  
1
Phần nguyên  
0
0
1
Ta thấy rằng số 0.2 trong hệ cơ số 2 là một số thập phân vô hạn tuần  
hoàn  
0.210=0.(0011)2  
❖ Chuyển từ hệ bất kỳ sang hệ thập phân  
Giả sử ta có biểu diễn số B theo cơ số H là  
B= bn bn-1 bn-2 ...b1 b0 .c1 c2 cn...cm  
Vì ta đã quen tính toán với hệ cơ số 10 nên ta có thể chuyển đổi trực tiếp theo công  
thức sau:  
B= bnxHn + bn-1xHn-1 + bn-2xHn-2 +...b1xH + b0+ c1xH-1 + c2xH-2 +...+ cmxH-m  
7
(Ta hoàn toàn có thể áp dụng quy tắc đã nêu: chia lấy phần dư, nhân lấy phần  
nguyên... để tìm biểu diễn của B trong hệ thập phân)  
❖ Chuyển từ hệ nhị phân sang bát phân (hoặc thập lục phân)  
Qui tắc: Nhóm các Bit thành từng nhóm 3 Bit (4 Bit - cho hệ thập lục phân) bắt  
đầu từ Bit ngoài cùng bên phải, tính giá trị số học học quy luật giá trị vị trí riêng  
cho từng nhóm 3 (hay 4) Bit, viết các giá trị này liền nhau.  
Ví dụ cho số nhị phân 11110101 chuyển số này sang dạng bát phân và thập  
lục phân. (11 110 101) -> 365 trong hệ bát phân là số 365  
(1111 0101) -> 15 5 -> F5 trong hệ thập lục phân là số F5  
Khi cần chuyển ngược lại chúng ta làm theo các bước tương tự  
❖ Chuyển đổi hệ thống số dựa trên hệ 8 và hệ 16  
Trong phần bài giảng, chúng ta đã làm quen với cách chuyển đổi giữa hệ 2 và  
hệ 10. Tuy nhiên, ở những trị số lớn và dài thì làm cách trên trở nên rất phức tạp  
và dễ nhầm lẫn, ví dụ :  
101110110101(2) =?(10)  
2997(10)  
= ?(12)  
Trong ví dụ thứ nhất ta phải liên tiếp làm nhiều phép nhân và ở ví dụ thứ hai, ta  
lại thực hiện nhiều phép chia liên tiếp.  
❖ Thông qua hệ 8 và hệ 16 để chuyển đổi hệ 2 sang hệ 10  
Chia số nhị phân làm thành từng bộ 3 số và 4 số liên tiếp theo thứ tự tương  
ứng với cách thông qua hệ 8 và hệ 16 và dùng phương pháp nhân với các thừa  
số bên trên tương ứng rồi cộng lại.  
Ví dụ: 101110110101(2) = ? (10)  
THÔNG QUA HỆ 8: Chia số nhị phân từng bộ 3 số:  
8
83  
21  
0
82  
21  
1
81  
21  
1
80  
21  
0
22  
1
20  
1
22  
1
20  
0
22  
1
20  
0
22  
1
20  
1
5
6
6
5
Chú ý:  
5 = 1x22 + 0x21 + 1x20 và  
6 = 1x22 + 1x21 + 0x20  
Kết quả:  
= 5x83 + 6x82 + 6x81 + 5x80 = 5x512 + 6x64 + 6x8 + 5x1 =  
101110110101(2)  
2997(10)  
THÔNG QUA HỆ 16: Chia số nhị phân thành bộ 4 số  
162  
22  
161  
22  
160  
22  
1
23  
1
21  
1
20  
1
23  
1
21  
1
20  
1
23  
0
21  
0
20  
1
0
0
11  
11  
5
Chú ý:  
11 = 1x23 + 0x22 + 1x21 + 1x20 và 5 = 0x23 + 1x22 + 0x21 + 1x20  
Kết quả:  
101110110101  
(2) = 11x162 + 11x161 + 5x160 = 11x256 + 11x16 +5x1 = 2997(10)  
❖ Thông qua hệ 8 và hệ 16 để chuyển hệ 10 sang hệ 2  
Cách làm tương tự như trên, nhưng thay phép nhân thành phép chia  
và lấy các số dư của phép chia ngược từ dưới lên trên để chuyển đổi.  
Ví dụ:  
2997  
(10) = ? (2)  
THÔNG QUA HỆ 8:  
9
Chia 8  
2997  
374  
46  
dư  
5
6
6
5
5
Ta có:  
5 (hệ 8) = 4 + 1 = 1x22 + 0x21 + 1x20 = 101(2)  
6 (hệ 8) = 4+2 = 1x22 + 1x21 + 0x20 = 110(2)  
Tương tự:  
Suy ra:  
2997  
(10) = 101 110 110 101(2)  
THÔNG QUA HỆ 16:  
Chia 16  
2997  
187  
dư  
5
11  
11  
11  
Ta có : 2997 (10) = BB5(16)  
B (hệ 16) = 11 = 8 + 2 +1 = 1x23 + 0x22 + 1x21 + 1x20 = 1011 (hệ 2)  
5 (hệ 16) = 4 + 1 = 0x23 + 1x22 + 0x21 + 1x20 = 0101 (hệ 2)  
Suy ra: 2997(10) = BB6(16) = 1011 1011 0101(2)  
❖ Chuyển hệ 8 sang hệ 16 và ngược lại:  
Ta có thể dùng hệ 10 hoặc hệ 2 làm trung gian để chuyển đổi hệ 8  
sang hệ 16 và ngược lại. Thông thường dùng hệ 2 để trung chuyển có thuận  
lợi hơn.  
Ví dụ: 5665  
(8) = ?(16)  
10  
Cách làm như sau:  
Bước 1: Chuyển hệ 8 thành hệ 2: biểu thị từng trị số trong hệ 8 thành từng  
nhóm 3 số và ghép các nhóm đó lại.  
5 (hệ 8) = 4 + 1 + 0 = 1x22 + 0x21 + 1x20 = 101(hệ 2)  
6 (hệ 8) = 4 + 2 + 2 = 1x22 + 1x21 + 0x20 = 110 (hệ 2)  
Vậy 5665(8) = 101 110 110 101(2)  
Bước 2: Chia dãy số hệ 2 vừa có được thành các bộ 4 số và chuyển các bộ đó sang  
hệ 16  
5665  
(8) = 101 110 110 101(2) = 1011 1011 0101(2)  
Vì: 1011(2) = 1x23 + 0x22 + 1x21 + 1x20 = 8 + 0 + 2 + 1 = 11 = B(16)  
0101(2) = 0x23 + 1x22 + 0x21 + 1x20 = 0 + 4 + 0 + 1 = 5(16)  
Vậy: 5665 (8) = BB5(16)  
Việc chuyển từ hệ 16 sang hệ 8 ta cũng tiến hành 2 bước như vậy.  
1.4 Các bộ phận cơ bản của máy vi tính  
1.4.1 Bộ xử lý trung tâm(CPU : Central Processor Unit)  
a) Chức năng của CPU  
CPU là bộ chỉ huy của máy vi tính, có các chức năng sau:  
- Thực hiện việc nhận lệnh, giải mã lệnh và điều khiển các khối khác thực  
hiện lệnh.  
- Thực hiện các phép tính số học, logic và các phép tính khác.  
- Sinh ra các tín hiệu địa chỉ trên máy.  
b) Cấu tạo của CPU  
CPU bao gồm các phần sau:  
❖ Đơn vị điều khiển (Control unit): Thực hiện việc nhận lệnh, giải mã  
lệnh và điều khiển các khối khác thực hiện lệnh và sinh ra các tín hiệu địa chỉ trên  
máy để quản lý bộ nhớ.  
❖ Đơn vị tính toán số học và logic (Arithmeric - Logic Unit): Bao gồm  
các vi mạch tính để thực hiện các phép tính số học, logic và các phép tính khác.  
11  
❖ Thanh ghi (Register) là một cấu trúc gồm 16 bít (hoặc 32 bit) nhớ  
liền kề nhau được thiết lập ngay trong mạch vi xử lý. Các thanh ghi này được  
phân thành 4 nhóm theo mục đích sử dụng sau:  
- Nhóm 1: 4 thanh ghi đa năng kí hiệu là AX,BX,CX,DX được sử dụng cho  
nhiều mục đích khác nhau.  
- Nhóm 2: 4 thanh ghi địa chỉ đoạn (Segment) bộ nhớ, thanh ghi CS (Code  
segment) chứa điạc chỉ đoạn mã lệnh, thanh ghi DS (Data Segment) chứa địa chỉ  
đoạn dữ liệu, thanh ghi SS (Stack Segment) chứa địa chỉ đoạn ngăn xếp, thanh ghi  
ES (Extra Segment) chứa địa chỉ đoạn dữ liệu mở rộng.  
- Nhóm 3: 5 thanh ghi địa chỉ tương đối (offset), thanh ghi IP (Instruction  
Pointer) trỏ tới ô chứa lệnh trong đoạn CS; thanh ghi SI (Source Index) trỏ tới ô  
chứa dữ liệu nguồn trong đoạn DS, Thanh ghi DI (Destination Index) trỏ tới ô  
chứa dữ liệu đích trong đoạn DS, Thanh ghi SP (Stack Pointer) trỏ tới ô chứa dữ  
liệu trong đoạn ngăn xếp SS và thanh ghi BP (Base Pointer) trỏ tới ô dữ liệu trong  
đoạn chứa dữ liệu mở rộng ES.  
- Nhóm 4: 1 thanh ghi cờ (Flag) để ghi các trạng thái (ta gọi là cờ) xảy ra  
trong các phép toán số học.  
1.4.2 Bộ nhớ (Memory)  
Bộ nhớ hay còn gọi là bộ nhớ trong ( bộ nhớ ) chính của máy vi tính.  
❖ Chức năng của bộ nhớ: Bộ nhớ dùng để chứa các thông tin cần thiết  
như chương trình, dữ liệu trong quá trình máy hoạt động.  
❖ Tổ chức của bộ nhớ:  
- Các thông tin được cất trong bộ nhớ dưới dạng mã nhị phân ( các bít 0  
hoặc 1).  
- Một nhóm các bít có thể là 16 bít hoặc 32 bít,... gọi là một ô nhớ. Mỗi ô  
nhớ được đánh một số thứ tự trong hệ 16 gọi là địa chỉ của ô nhớ. Thông tin ghi  
bên trong ô nhớ là nội dung của ô nhớ. Dùng địa chỉ để truy nhập vào ô nhớ để  
đọc nội dung hoặc ghi nôi dung vào ô nhớ.  
12  
- Kích thước của bộ nhớ hay dung lượng của bộ nhớ là số lượng thông tin  
mà bộ nhớ có khả năng chứa được, thường dùng đơn vị MB hoặc GB.  
❖ Phân loại bộ nhớ: Theo tính chất thông tin chứa trong bộ nhớ người  
ta chia thành bộ nhớ ROM và RAM.  
- ROM ( Read Only Memory): là bộ nhớ cố định cho phép chỉ đọc thông tin  
mà không ghi thông tin vào được. ROM là bộ nhớ cứng do hãng chế tạo cài đặt  
sẵn các chương trình bên trong, bao gồm các chương trình kiểm tra và các chương  
trình cơ sở cốt lõi nhất của máy vi tính. Các thông tin trong ROM sẽ không bị mất  
đi khi ta tắt nguồn của máy.  
- RAM (Random Access Memory): Là bộ nhớ mềm, có thể thay đổi, truy  
nhập một cách ngẫu nhiên. RAM làm từ các mạch vi mạch (gọi là Chip nhớ).  
RAM dùng để ghi chương trình của hệ điều hành nạp vào từ đĩa khởi động,  
chương trình và dữ liệu của người sử dụng. Có thể đọc và ghi thông tin vào RAM.  
Thông tin trong RAM sẽ bị mất đi khi ta tắt nguồn của máy, do vậy ta phải lưu trữ  
thông tin ra bộ nhớ ngoài.  
1.4.3 Thiết bi ngoại vi  
a) Bàn phím (Keyboard)  
❖ Bàn phím là thiết bị vào thông dụng của máy vi tính. Dùng bàn phím  
có thể đưa vào máy các lệnh điều khiển, chương trình, dữ liệu.  
❖ Nguyên tắc của bàn phím: ấn một phím thì gây ra sự tiếp điện giữa  
một dây dọc và một dây ngang tạo ra một xung điện , xung điện này qua chương  
trình điều khiển bàn phím sẽ đưa vào máy mã ASCII của kí tự của phím đó.  
❖ Bàn phím gồm 5 khu vực sau:  
- Khu phím máy chữ gồm các phím chữ, phím dấu và phím số như các  
phím trên bàn phím máy chữ trong đó có phím cách (Space bar)  
- Khu phím chức năng F1,F2,..F12 có tác dụng thực hiện một chức năng  
hoàn chỉnh nào đó khi ta gõ phím đó, tác dụng của nó được cài đặt tuỳ  
theo chương trình. Thí dụ DOS dùng phím F1 để nhắc lại từng kí tự của câu lệnh  
vừa gõ trước, F3 để nhắc lại toàn bộ câu lệnh vừa gõ.  
13  
- Khu vực phím số ở bên phải bàn phím  
- Khu phím dịch chuyển con trỏ màn hình gồm các phím dịch lên, dịch  
xuống, dịch trái, dịch phải, dịch về đầu màn hình (Home), dịch xuống cuối (End),  
dịch lên một trang (PgUp), dịch xuống một trang (PgDn), Dịch trái và xoá (Back  
space), phím TAB dịch con trỏ đi một khoảng 8 cột (gọi là một tab)  
- Khu phím điều khiển:  
ESC để thoát ra khỏi chương trình hoặc lệnh đang thực hiện  
CapsLock để chuyển đổi thường xuyên kiểu chữ nhỏ sang to và  
ngược lại.  
Shift có tác dụng chuyển tạm thời chữ to thành nhỏ hoặc ngược lại  
khi đè giữ phím đó và gõ chữ . Với các phím có 2 kí tự thì nếu gõ được kí tự  
dưới, nếu đè shift và gõ thì cho kí tự trên.  
Insert - chèn kí tự vào vị trí con trỏ  
Delete - xoá kí tự tại vị trí con trỏ  
Print Screen - In màn hình  
Scroll Lock - bật hoặc tắt trạng thái cuốn màn hình  
Pause/Break - Chờ hoặc ngắt chương trình  
Ctrl và Alt dùng để mở rộng chức năng của bàn phím.  
Num Lock - để kích hoạt bàn phím số, bàn phím số chỉ có tác dụng  
khi nào đèn Num Lock sáng.  
b) Màn hình (Display)  
❖ Màn hình là thiết bị ra thông dụng tối thiểu của may vi tính. Các kí  
hiệu ta gõ vào từ bàn phím, các kết quả xử lý, các thông báo của máy vi tính đều  
được hiện ra trên màn hình.  
❖ Màn hình có cấu tạo vật lý giống như một màn hình vô tuyến thông  
thường cũng gồm có ống phóng tia điện tử, mạch quét ngang và quét dọc, tia điện  
tử đập vào màn hình tạo thành một điểm sáng, bộ điều khiển CRT tạo tín hiệu bật  
hoặc tắt tia điện tử theo tín hiệu lấy ra từ bộ nhớ màn hình 1 hay 0, tia điện tử quét  
từ trái sang phải tạo thành một dòng, từ dòng trên cùng xuống dòng dưới cùng  
14  
tạo thành một mành. Tần số quét mành bằng 60Hz nghĩa là trong 1 giây đồng hồ  
màn hình được làm mới lại từ đầu 60 lần, thời gian hồi dọc để tia điện tử chuyển  
về góc trái trên cùng là 1,25ms.  
❖ Có 2 kiểu màn hình: kiểu màn hình văn bản và màn hình đồ hoạ:  
- Màn hình văn bản (Text mode) được phân thành 2 chế độ: 80 cột ( kí tự)  
25 dòng là dạng chuẩn hoặc 40 cột ( kí tự) 25 dòng.  
- Màn hình đồ hoạ (Graphic Mode) được thiết kế gồm nhiều điểm sáng  
(Pixel) theo hai chiều ngang và dọc. Màn hình đồ hoạ được phân thành nhiều chế  
độ khác nhau tuỳ theo độ phân giải, chẳng hạn chiều ngang 640 pixel chiều dọc  
200 pixel (640x200), 640x350, 640x480, 1024x768. Màn hình càng có độ phân  
giải cao thì hình ảnh càng min.  
- Mầu của màn hình được tạo ra bởi sự pha trộn của 4 yếu tố sau: 3 mầu cơ  
bản là đỏ (Red), xanh lá cây (Green), xanh da trời (Blue) và độ chói. Với tổ hợp  
của 3 mầu cơ bản ở độ chói khác nhau của từng mầu mà máy tính có thể tạo ra  
tới 256 mầu khác nhau.  
c) Ổ đĩa và đĩa từ  
Ổ đĩa và đĩa từ là thiết bị vào / ra : Có thể đọc thông tin từ đĩa từ và ghi  
thông tin vào đĩa từ.  
❖ ổ đĩa là khối hình chữ nhật có chứa các thiết bị và linh kiện để làm  
việc với đĩa từ. Máy vi tính có 2 loại ổ đĩa từ là ổ đĩa cứng (Hard Disk/ Fixed  
Disk) và ổ đĩa mềm (Soft Disk/Flopy Disk).  
- ổ đĩa cứng được lắp trong thân máy, nếu máy có 1 ổ đĩa cứng thì tên ổ đĩa  
là C: , nếu máy có 2 ổ đĩa cứng thì tên là C: , D: . ổ đĩa cứng chứa các đĩa cứng có  
dung lượng lưu trữ lớn từ 40 MB đến hàng chục GB.  
- ổ đĩa mềm lắp ngay bên ngoài vỏ máy, 2 ổ mềm có tên là A: , B: , ổ đĩa  
mềm chứa các đĩa mềm có dung lượng lưu trữ nhỏ hơn đĩa cứng, hiện nay thông  
dụng là 1,44MB.  
❖ Đĩa từ có hình dạng tròn được cấu tạo bằng chất dẻo ( đĩa mềm )  
hoặc nhôm ( đĩa cứng) có phủ các hạt sắt từ trên bề mặt để lưu trữ thông tin dựa  
15  
theo đặc tính nhiễm từ của các hạt sắt từ. Các thông tin lưu trữ trên đĩa từ ở dạng  
mã nhi phân ( bít 0 hoặc 1).  
- Mỗi đĩa từ mềm gồm có hai mặt từ hoá được đánh số là mặt 0/1, có 2 đầu  
từ tiếp xúc trên dưới để đọc và ghi thông tin, mỗi mặt phân thành nhiều rãnh  
(Track) đánh số từ 0 trở đi ,rãnh ngoài gần mép đĩa là rãnh số 0, mỗi mặt được  
phân thành nhiều cung (sector) được đánh số từ 1 trở đi, (đĩa 1,2M phân thành 80  
rãnh và15 sectơ, đĩa 1,44 M phân thành 80 rãnh và 18 sectơ ), mỗi cung chứa 512  
byte.  
- Đĩa cứng gồm nhiều mặt đĩa cùng trục quay tạo thành khối trụ gọi là  
cylinder, số mặt tuỳ theo dung lượng của ổ đĩa, chẳng hạn ổ đĩa có 8 đầu từ (Head)  
đánh số từ 0 đến 7 gồm 4 mặt đĩa, mỗi mặt của đĩa cứng được phân thành 17  
sectơ, mỗi mặt gồm nhiều rãnh (đĩa cứng XT gồm 305 rãnh, đĩa cứng AT gồm  
615 rãnh ), mỗi rãnh trên một cung chứa 1024 byte.  
d) Máy in (Printer)  
❖ Máy in là thiết bị ra của máy vi tính, dùng để in ra kết quả xử lý, dữ  
liệu, chương trình, thông báo của máy vi tính.  
❖ Máy in dùng trong máy tính gồm nhiều loại khác nhau hoạt động  
theo các nguyên lý khác nhau. Ta có thể phân thành các loại cơ bản sau:  
- Máy in mầu (Ploter) gồm 8 bút vẽ màu khác nhau hoạt động trên  
nguyên tắc bút vẽ.  
- Máy in Lazer hoạt động trên nguyên tắc dùng tia Laeser ép nóng chẩy bột  
mực khô bám trên lô.  
- Máy in kim (9 kim hoặc 24 kim) hoạt động trên nguyên tắc kim phun bắn  
vào băng mực và tạo ra trên giấy các nốt chấm đen.  
Hiện nay máy in Laser được sử dụng rộng rãi vì có ưu điểm là in nhanh và  
chất lượng tốt nhưng giá đắt hơn máy in kim. Máy in kim giá rẻ hơn và bền hơn  
nhưng chất lượng không cao và in chậm hơn.  
16  
e) Thiết bị chuột  
Chuột là một thiết bị vào của máy vi tính. Có thể chọn lệnh, chọn các đối  
tượng, di chuyển và thay đổi kích thước các đối tượng bằng chuột.  
Thông thường chuột có 2 nút bấm. Nút trái dùng cho phần lớn các thao tác,  
nút phải tuỳ theo từng chương trình mà có các chức năng khác nhau, thông thường  
nhấn nút phải để hiện ra các lệnh có thể thực hiện được tại vị trí vừa chọn của  
chuột. lệnh này tuỳ thuộc phần mềm đang sử dụng.  
f) Các thiết bị khác  
Các thiết bị ngoại vi của máy vi tính hiện nay rất phong phú, ngoài các thiết  
bị cơ bản nêu trên còn các thiết bị khác như : đĩa CD-ROM, máy chiếu (Projecter),  
máy quét ảnh (Scaner), ... Tất cả các thiết bị ngoại vi giúp cho việc đưa thông tin  
vào máy ở nhiều dạng từ các kí tự đến âm thanh, hình ảnh.  
1.5 Chương trình phần mềm  
Phần mềm là tên gọi khi nói tới các chương trình chỉ thị máy tính hoạt động xử  
lý dữ liệu thành những hình thái mà ta mong muốn. Chương trình là một chuỗi các  
chỉ thị lệnh có liên quan nhằm thực hiện từng bước tại mỗi thời điểm để hoàn  
thành một vài công việc nào đó dưới sự điều khiển của CPU. Các chương trình sẽ  
xác định việc các máy tính tiếp nhận đầu vào như thế nào và được hiển thị hoặc  
đưa tới đầu ra cái gì. Thông thường có 3 kiểu chương trình là : phần mềm hệ  
thống, trình dịch ngôn ngữ và các chương trình ứng dụng.  
1.5.1 Phần mềm hệ thống  
Phần mềm hệ thống là một thuật ngữ bao gồm tất cả các chương trình quản  
lý và điều khiển quá trình hoạt động của phần cứng máy tính. Nó có 2 loại chính -  
đó là:  
- Phần mềm hệ điều hành.  
- Các chương trình tiện ích.  
❖ Hệ điều hành:  
Hệ điều hành là một phần mềm điều khiển quá trình hoạt động của máy  
tính từ khi khởi tạo hệ thống, nó được coi như là một yếu tố liên kết giữa phần  
17  
cứng và phần mềm máy tính. Hệ điều hành bao gồm các chương trình quản lý điều  
khiển truyền thông giữa các bộ phận của phần cứng như card màn hình, card âm  
thanh, máy in, bảng mạch chính và các ứng dụng. Nó điều khiển tất cả đầu vào,  
đầu ra từ các thiết bị ngoại vi cũng như sự hoạt động của các chương trình khác.  
Nó cho phép người sử dụng làm việc và quản lý các tệp tin mà không cần biết cụ  
thể dữ liệu được lưu trữ và lấy ra trong các hệ thống đa người dùng; ngoài ra hệ  
điều hành còn quản lý người dùng truy nhập tới bộ xử lý, các thiết bị ngoại vi và  
lịch trình công tác.  
Các chức năng của hệ điều hành:  
- Định vị các tài nguyên hệ thống: điều khiển sự vận chuyển bên trong máy  
tính, có tác dụng quyết định đến tài nguyên nào sẽ được sử dụng và trong thời gian  
bao lâu.  
- Thời gian : định thời trong CPU được phân chia thành các khoảng thời  
gian có đơn vị tính là ms. Đối với mỗi tác vụ được thực thi, CPU sẽ ấn định đích  
xác một khoảng thời gian nhất định cho nó. Khi thời gian kết thúc, các tác vụ khác  
sẽ được đưa vào để tiếp tục quay vòng.  
- Bộ nhớ : bộ nhớ máy tính cũng được quản lý bởi hệ điều hành. Chúng  
được CPU sử dụng luân phiên để rời chuyển dữ liệu thông qua các bộ nhớ đệm.  
Chẳng hạn, các khoảng không gian của đĩa cứng cũng được coi như là một phần  
của bộ nhớ chính. Điều đó có nghĩa là, việc đưa dữ liệu thẳng từ đĩa cứng lên bộ  
nhớ chính mỗi khi CPU yêu cầu sẽ rất chậm trong khi dữ liệu đó phải thường  
xuyên cập nhật lên bộ nhớ. Vì vậy khi bộ nhớ chính bị đầy, một vài dữ liệu sẽ  
được phân trang đưa ra ngoài đĩa cứng và nó được gọi là vùng nhớ trao đổi  
(swapping). Trong hệ điều hành Windows, việc sử dụng tệp tin swap cũng chính là  
cho mục đích này.  
- Quản lý vào/ra (input/output) : điều khiển luồng lưu lượng cũng là một  
phần khả năng đáp ứng của hệ điều hành. Hệ điều hành phải quản lý tất cả các yêu  
cầu như đọc dữ liệu từ ổ đĩa và băng từ hay ghi dữ liệu vào chúng hoặc đưa ra máy  
in.  
18  
- Giám sát hoạt động hệ thống : hệ điều hành thực hiện 2 công việc giám sát  
chủ yếu là thi hành hệ thống và bảo mật hệ thống. Thi hành hệ thống đưa ra các  
thông tin như tên các tác vụ đang thi hành trên hệ thống, thời gian chiếm giữ CPU,  
bộ nhớ... hay người quản trị hệ thống cũngcó thể theo dõi, kiểm tra xem các máy  
tính trên mạng có bị quá tải không để có những can thiệp kịp thời. Vấn đề bảo mật  
hệ thống khá quan trọng, đặc biệt khi sử dụng cho chế độ đa người dùng.  
Khi người sử dụng muốn truy nhập vào hệ thống cần phải thực hiện thủ tục đăng  
nhập user và mật khẩu (gọi là ID).  
- Quản lý tệp tin và ổ đĩa: việc lưu trữ và bảo vệ các tệp tin trên thiết bị ổ  
đĩa, băng từ là một công việc chính, quan trọng trong mỗi hệ điều hành. Hiện nay,  
hầu hết các hệ điều hành đều sử dụng các hệ thống tệp tin như FAT, NFS. Ngoài  
việc quản lý các thiết bị nhớ vật lý như FDD, HDD, CDROM,... hệ điều hành còn  
quản lý các bộ nhớ ảo (virtual memory) được tạo ra trên cơ sở phần còn rỗi (free)  
của các thiết bị nhớ kể trên.  
Các hệ điều hành cơ bản :  
- Microsoft Windows: Windows 95, Windows 98, Windows Me  
(Millennium Edition), Windows NT (NT là viết tắt của New Technology),  
Windows CE và Windows 2000/NT,...  
- Apple Macintosh.  
- OS/2 của hãng IBM.  
- UNIX : SCO Unix, SUN Solaris, AIX (IBM)  
- LINUX được phát triển bởi Linus Torvalds tại University of Finland  
❖ Các chương trình tiện ích  
Các chương trình tiện ích thực hiện các công việc có liên quan đến bảo trì  
máy tính như phần cứng và dữ liệu. Các hệ điều hành hiện nay, hầu hết đều xây  
dựng phần mềm các chương trình tiện ích như :  
- Chương trình quản lý tệp tin: Tạo ra cho người dùng dễ dàng quản lý các  
tệp tin của mình như : viết các chương trình trợ giúp tìm kiếm tệp tin, tạo ra và tổ  
chức các thư mục, sao chép, chuyển đổi tên tệp tin.  
19  
- Chương trình quản lý đĩa: Bao hàm cả định dạng và chống phân mảnh các  
đĩa. Chương trình chống phân mảnh thực hiện sắp xếp lại vị trí các tệp tin trên đĩa  
theo một dãy liên tục. Một số chương trình quản lý đĩa còn định rõ sắp đặt cho bạn  
khi có tệp tin thường xuyên được truy cập. Ngoài ra, có những hệ điều hành còn  
có thêm một số chức năng mới như cho phép chuyển đổi kiểu hệ thống tệp tin từ  
FAT32 sang NTFS và ngược lại...  
- Phần mềm quản lý bộ nhớ: Thực hiện điều khiển bộ nhớ khi các dữ liệu  
hiện thời được đưa lên RAM. Chúng chuyển dịch các đối tượng nội trú bộ nhớ nào  
đó ra ngoài và điều này có thể làm tăng hiệu quả sử dụng bộ nhớ.  
- Chương trình sao lưu (Backup) dữ liệu: Cho phép người sử dụng có thể  
phục hồi lại dữ liệu khi cần thiết.  
- Chương trình nén dữ liệu: Cho phép người sử dụng thông qua các phần  
mềm nén dữ liệu trước khi lưu trữ nhằm tiết kiệm không gian nhớ của đĩa.  
- Chương trình phòng chống Virus: Là các phần mềm khác nhau được cài  
đặt vào bộ nhớ máy tính nhằm giám sát sự hoạt động của virus trong máy tính và  
mạng. Nó có nhiệm vụ phát hiện sự hoạt động của virus trong bộ nhớ máy tính và  
thực hiện “làm sạch” chúng. Hiện nay các phiên bản phần mềm phòng chống virus  
hữu hiệu được sử dụng rộng rãi như Norton AntiVirus, D2, Bkav2000,...  
1.5.2 Trình dịch và ngôn ngữ  
Trong quá trình hoạt động của các thế hệ máy tính điện tử, tất cả các chỉ thị  
lệnh được hoạt hóa bởi máy tính đều phải cung cấp tới CPU dưới dạng mã máy  
(machine code). Tuy nhiên, con người không phải tương tác với máy tính tại mức  
này mà các nhà lập trình có thể viết phần mềm bằng ngôn ngữ Assembler cho  
phép can thiệp trực tiếp tới các thanh ghi của CPU. Hiện nay, hầu hết các chương  
trình được viết trên cơ sở các tiêu chuẩn ngôn ngữ bậc cao như Pascal, Basic, C,...  
Trình dịch là một chương trình được thiết kế nhằm chuyển hóa một chương  
trình được viết bởi ngôn bậc cao thành các chỉ thị lệnh máy của hệ thống tính toán  
riêng biệt. Đầu ra của một trình dịch C cho máy tính IBM hầu như không có gì  
chung với đầu ra của một trình dịch C cho máy chủ VAX. Mặc dù các ngôn ngữ  
20  
Tải về để xem bản đầy đủ
doc 121 trang baolam 24020 Free
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Tin học đại cương", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • docgiao_trinh_tin_hoc_dai_cuong.doc