Tin học - Chương 2: Thể hiện dữ liệu trong máy tính số

pdf 25 trang vanle 2050
Bạn đang xem 20 trang mẫu của tài liệu "Tin học - Chương 2: Thể hiện dữ liệu trong máy tính số", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdftin_hoc_chuong_2_the_hien_du_lieu_trong_may_tinh_so.pdf

Nội dung text: Tin học - Chương 2: Thể hiện dữ liệu trong máy tính số

  1. MÔN TIN HỌC Chương 2 THỂ HIỆN DỮ LIỆU TRONG MÁY TÍNH SỐ 2.1 Cơ bản về việc lưu trữ và xử lý tin trong máy tính 2.2 Cơ bản về hệ thống số 2.3 Các phương pháp chuyển miêu tả số 2.4 Biểu diễn dữ liệu trong máy tính 2.5 Hệ thống file 2.6 Quản lý hệ thống file Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 21 2.1 Cơ bản về việc lưu trữ và xử lý tin trong máy tính Phần tử nhớ nhỏ nhất của máy tính số chỉ có thể chứa 2 giá trị : 0 và 1 (ta gọi là bit). Ta kết hợp nhiều phần tử nhớ để có thể miêu tả đại lượng lớn hơn. Thí dụ ta dùng 8 bit để miêu tả 28 = 256 giá trị khác nhau. Dãy 8 bit nhớ được gọi là byte, đây là 1 ô nhớ trong bộ nhớ của máy tính. Bộ nhớ trong của máy tính được dùng để chứa dữ liệu và code của chương trình đang thực thi. Nó là 1 dãy đồng nhất các ô nhớ 8 bit, mỗi ô nhớ được truy xuất độc lập thông qua địa chỉ của nó (tên nhận dạng). Thường ta dùng chỉ số từ 0 - n để miêu tả địa chỉ của từng ô nhớ. Mặc dù ngoài đời ta đã quen dùng hệ thống số thập phân, nhưng về phần cứng bên trong máy tính, máy chỉ có thể chứa và xử lý trực tiếp dữ liệu ở dạng nhị phân. Do đó trong chương này, ta sẽ giới thiệu các khái niệm nền tảng về hệ thống số và cách miêu tả dữ liệu trong máy tính. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 22 11
  2. 2.2 Cơ bản về hệ thống số Hệ thống số (number system) là công cụ để biểu thị đại lượng. Một hệ thống số gồm 3 thành phần chính : 1. cơ số : số lượng ký số (ký hiệu để nhận dạng các số cơ bản). 2. qui luật kết hợp các ký số để miêu tả 1 đại lượng nào đó. 3. các phép tính cơ bản trên các số. Trong 3 thành phần trên, chỉ có thành phần 1 là khác nhau giữa các hệ thống số, còn 2 thành phần 2 và 3 thì giống nhau giữa các hệ thống số. Thí dụ :-hệ thống số thập phân (hệ thập phân) dùng 10 ký số : 0,1,2,3,4,5,6,7,8,9. - hệ nhị phân dùng 2 ký số : 0,1. -hệ bát phân dùng 8 ký số : 0,1,2,3,4,5,6,7. - hệ thập lục phân dùng 16 ký số : 0 đến 9,A,B,C,D,E,F. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 23 Cơ bản về hệ thống số -Qui luật miêu tả lượng Biểu diễn của lượng Q trong hệ thống số B (B>1) là : dndn-1 d1d0d-1 d-m ⇔ n n-1 0 -1 -m Q = dn*B + dn-1*B + +d0*B +d-1*B + +d-m*B trong đómỗi di là 1 ký số trong hệ thống B. Trong thực tế lập trình bằng ngôn ngữ cấp cao, ta thường dùng hệ thống số thập phân để miêu tả dữ liệu số của chương trình (vì đã quen). Chỉ trong 1 số trường hợp đặc biệt, ta mới dùng hệ thống số thập lục phân (dạng ngắn của nhị phân) để miêu tả 1 vài giá trị nguyên, trong trường hợp này, qui luật biểu diễn của lượng nguyên Q trong hệ thống số B sẽ đơn giản là : dndn-1 d1d0 ⇔ n n-1 1 0 Q = dn*B + dn-1*B + +d1*B +d0*B trong đómỗi di là 1 ký số trong hệ thống B. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 24 12
  3. Cơ bản về hệ thống số -Vài thídụ Thí dụ về biểu diễn các lượng trong các hệ thống số : -lượng "mười bảy" được miêu tả là 17 trong hệ thập phân vì : 17 = 1*101+7*100 -lượng "mười bảy" được miêu tả là 11 trong hệ thập lục phân vì : 11 = 1*161+1*160 -lượng "mười bảy" được miêu tả là 10001 trong hệ nhị phân vì : 10001 = 1*24+0*23+0*22+0*21+1*20 Trong môi trường sử dụng đồng thời nhiều hệ thống số, để tránh nhằm lẫn trong các biểu diễn của các lượng khác nhau, ta sẽ thêm ký tự nhận dạng hệ thống số được dùng trong biểu diễn liên quan. Thí dụ ta viết : -17D để xác định sự biểu diễn trong hệ thống số thập phân. -11H (hệ thống số thập lục phân.) - 10001B (hệ thống số nhị phân.) Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 25 2.3 Các phương pháp chuyển miêu tả số Để chuyển 1 miêu tả số từ hệ thống số này sang hệ thống số khác, ta cần dùng 1 phương pháp chuyển thích hợp. Có 4 phương pháp sau tương ứng với từng yêu cầu chuyển tương ứng : 1. chuyển từ hệ thống số khác về thập phân. 2. chuyển từ nhị phân về thập lục phân (hay bát phân). 3. chuyển từ thập lục phân (hay bát phân) về nhị phân. 4. chuyển từ hệ thống số thập phân về hệ thống số khác. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 26 13
  4. Chuyển từ hệ thống khác về thập phân Để chuyển 1 miêu tả số từ hệ thống số khác (nhị phân, thập lục phân hay bát phân) sang hệ thập phân, ta dùng công thức tính Q. Thí dụ : 2 1 0 1. 1A2H = 1*16 +10*16 +2*16 = 256+160+2 = 418D 2 1 0 2. 642O = 6*8 +4*8 +2*8 = 384+32+2 = 418D 8 7 5 1 3. 110100010B = 2 + 2 +2 +2 = 256+128+32+2 =418D Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 27 Chuyển từ hệ thống nhị phân về thập lục phân Lưu ý rằng có 1 mối quan hệ mật thiết giữa hệ nhị phân và thập lục phân (hay bát phân), đólà4 ký số nhị phân tương đương với 1 ký số thập lục phân (hay 3 ký số nhị phân tương đương với 1 ký số bát phân) theo bảng tra sau : Dec Hex Oct Binary Dec Hex Oct Binary 0 0 00 0000 8 8 10 1000 1 1 01 0001 9 9 11 1001 2 2 02 0010 10 A 12 1010 3 3 03 0011 11 B 13 1011 4 4 04 0100 12 C 14 1100 5 5 05 0101 13 D 15 1101 6 6 06 0110 14 E 16 1110 7 7 07 0111 15 F 17 1111 Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 28 14
  5. Chuyển từ hệ thống nhị phân về thập lục phân Để đổi 1 số nhị phân về thập lục phân (hay bát phân), ta đi từ phải sang trái và chia thành từng nhóm 4 ký số nhị phân (hay 3 ký số nhị phân), sau đó đổi từng nhóm 4 ký số (hay 3 ký số) thành 1 ký số thập lục phân tương đương (hay 1 ký số bát phân tương đương). Thí dụ : 1. 110100010B = 0001.1010.0010 = 1A2H 2. 110100010B = 110.100.010 = 642O Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 29 Chuyển từ hệ thống thập lục phân về nhị phân Để đổi 1 số thập lục phân (hay bát phân) về nhị phân, ta đổi từng ký số thập lục phân (hay bát phân) thành từng nhóm 4 ký số nhị phân (hay 3 ký số nhị phân). Thí dụ : 1. 1A2H = 0001.1010.0010 = 110100010B 2. 642O = 110.100.010 = 110100010B Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 30 15
  6. Chuyển từ hệ thống thập phân về hệ thống khác Để đổi 1 số thập phân về hệ thống số khác, ta hãy chia số cần đổi cho cơ số đích để có được thương và dư số, ta lặp lại hoạt động chia thương số cho cơ số đích để có được thương và dư số mới, cứ thế lặp mãi cho đến khi thương số = 0 thì dừng lại. Ghép các dư số theo chiều ngược chiều lặp để tạo ra kết quả (đólàsự miêu tả số tương đương nhưng ở hệ thống số khác). Thí dụ chuyển số 418 về miêu tả tương ứng trong hệ thập lục : 418D 16 2 26 16 10 1 16 1 0 Kết quả là 418D = 1A2H Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 31 Chuyển từ hệ thống thập lục phân về bát phân Để đổi 1 số thập lục phân về bát phân (hay ngược lại), ta nên chuyển tuần tự từ thập lục phân về nhị phân, rồi từ nhị phân về bát phân. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 32 16
  7. Cơ bản về hệ thống số - Các phép tính Các phép tính cơ bản trong 1 hệ thống số là : 1. phép cộng (+). 2. phép trừ (-). 3. phép chia (/). 4. phép nhân (*). 5. phép dịch trái n ký số ( > n). Ngoài ra do đặc điểm của hệ nhị phân, hệ này còn cung cấp 1 số phép tính sau (các phép tính luận lý) : 1. phép OR bit (|). 2. phép AND bit (&). 3. phép XOR bit (^). 4. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 33 Thí dụ về phép cộng, trừ, nhân Thí dụ về các phép tính cơ bản (các giá trị đều được biểu diễn bằng hệ nhị phân : 0 1 1 0 1 0 0 1 1 0 0 1 + 0 0 1 1 - 0 0 1 1 * 0 1 0 1 1 0 0 1 0 1 1 0 1 0 0 1 0 0 0 0 1 0 0 1 1 0 1 1 0 1 Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 34 17
  8. Thí dụ về phép chia Thí dụ về các phép tính cơ bản (các giá trị đều được biểu diễn bằng hệ nhị phân) : số bị chia 1 0 1 1 1 0 số chia -1 0 1 0 1 thương số 0 1 -0 0 1 1 -1 0 0 1 dư số Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 35 Thí dụ về phép dịch ký số Thí dụ về các phép tính dịch ký số (các giá trị đều được biểu diễn bằng hệ nhị phân) : 0 0 0 0 1 1 0 1 bị dịch trái 2 bit thành 0 0 0 0 1 1 0 1 0 0 (tương dương với nhân 22) 0 0 0 0 0 0 0 0 1 1 0 1 bị dịch phải 2 bit thành 0 0 0 0 1 1 0 1 (tương dương với chia 22) Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 36 18
  9. Các phép tính của đại số Boole Đạisố Boole nghiên cứu các phép toán thựchiện trên các biếnchỉ có 2 giá trị 0 và 1, tương ứng với hai thái cựcluận lý "sai" và "đúng" (hay "không" và "có") của đờithường. Các phép toán này gồm: xynot xx and yx nand yx or yx nor yx xor y 00 1 0 1 0 1 0 01 0 1 1 0 1 10 0 0 1 1 0 1 11 1 0 1 0 0 Biểuthức Boole là 1 biểuthức toán hoc cấu thành từ các phép toán Boole trên các toán hạng là các biếnchỉ chứa 2 trị 0 và 1. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 37 Hàm Boole Một hàm Boole theo n biến boole (hàm n ngôi) là 1 biểuthức boole cấu thành từ các phép toán Boole trên các biến boole. Thay vì miêu tả hàm boole bằng biểu thức boole, ta có thể miêu tả hàm boole bằng bảng thực trị. Bảng thực trị của hàm boole n biến có 2n hàng, mỗi hàng miêu tả 1 tổ hợp trị cụ thể của các biến và giá trị cụ thể của hàm tương ứng với tổ hợp trị này (xem slide ngay trước). Như vậy 1 hàm boole n biến được miêu tả như 1 chuỗi 2n bit ⇒ có n chính xác 2 2 hàm boole n ngôi khác nhau. Cụ thể có : 1 22 = 4 hàm boole 1 ngôi khac nhau 2 22 = 24 = 16 hàm boole 2 ngôi khac nhau 3 22 = 28 = 256 hàm boole 3 ngôi khac nhau Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 38 19
  10. Các đơn vị nhớ thường dùng Máy tính dùng trực tiếp hệ nhị phân, các đơnvị biểu diễn thông tin thường dùng là : 1. bit : miêu tả 2 giá trị khác nhau (đúng/sai, 0/1, ) 2. byte : 8bit, có thể miêu tả được28 = 256 giá trị khác nhau. 3. word : 2 byte, có thể miêu tả được216 = 65536 giá trị khác nhau. 4. double word : 4 byte, có thể miêu tả được232 = 4.294.967.296 giá trị khác nhau. 5. KB (kilo byte) = 210 = 1024 byte. 6. MB (mega byte) = 220 = 1024KB = 1.048.576 byte. 7. GB (giga byte) = 230 = 1024MB = 1.073.741.824 byte. 8. TB (tetra byte) = 240 = 1024GB = 1.099.511.627.776 byte. Thí dụ, RAM củamáybạnlà512MB, đĩacứng là 300GB. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 39 2.4 Biểu diễn số nguyên trong Visual Basic Tùy ngôn ngữ lập trình mà cách biểu diễn số trong máy có những khác biệt nhất định. Riêng VB có nhiều phương pháp biểu diễn số khác nhau, trong đó 2 cách thường dùng là số nguyên và số thực. Máy dùng 1 word (2 byte) để chứa dữ liệu nguyên (Integer) theo qui định cụ thểởslide sau. Vì mỗi ô nhớ máy tính chỉ chứa được 1 byte, do đó ta phải dùng nhiều ô liên tiếp (2 hay 4) để chứa số nguyên. Có 2 cách chứa các byte của số nguyên (hay dữ liệu khác) vào các ô nhớ : BE & LE. Cách BE (Big Endian) chứa byte trọng số cao nhất vào ô nhớ địa chỉ thấp trước, sau đólần lượt đến các byte còn lại. Cách LE (Little Endian) chứa byte trong số nhỏ nhất vào ô nhớ địa chỉ thấp trước, sau đólần lượt đến các byte còn lại. VB sử dụng cách LE để chứa số nguyên vào bộ nhớ (Integer và Long). Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 40 20
  11. Biểu diễn số nguyên trong Visual Basic ƒ Phần dương có 32768 số Sự biểu diễngiátrị từ số 0 tới 32767, được miêu tả theo công thức Q. 00000000 00000000 0 ƒ Phần âm có 32768 số từ - 00000000 00000001 1 32768 tới -1, được miêu tả ở dạng số bù 2 như sau : ƒ Số bù 1 của 1 số n bit là n 01111111 11111111 32767 bit mà mỗi bit là ngược với 10000000 00000000 -32768 bit gốc (0 → 1 và 1 → 0) 10000000 00000001 -32767 ƒ Số bù 2 của 1 số n bit là số bù 1 của số đórồi tăng lên 1 đơn vị. 11111111 11111111 -1 Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 41 Biểu diễn số nguyên trong VB - Thí dụ ƒ Số 15 được miêu tả dưới dạng nhị phân 16 bit như sau : 0000 0000 0000 1111 ƒ Do đó, nếu dùng kiểu Integer để lưu số 15, ta dùng 16 bit như trên hay viết ngắn gọn là 000FH. Nếu lưu vào bộ nhớ dạng LE thì ô nhớ có địa chỉ thấp (i) chứa byte 0FH, và ô nhớ kế (i+1) chứa byte 00. Nếu dùng kiểu Long để lưu số 15, ta dùng 4 byte 0000000FH và lưu vào bộ nhớ dạng LE tốn 4 ô nhớ với giá trị lần lượt từ địa chỉ thấp đến cao là 0FH, 00, 00, 00. ƒ Số bù 1 của 15 là 1111 1111 1111 0000, số bù 2 của 15 là 1111 1111 1111 0001 ƒ Như vậy -15 được lưu vào máy dạng Integer là 2 byte có giá trị FFF1H. Nếu lưu vào ô nhớ dạng LE thì ô nhớ có địa chỉ thấp (i) chứa byte F1H, và ô nhớ kế (i+1) chứa byte FFH. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 42 21
  12. Biểu diễn số thực trong Visual Basic Để miêu tả được các giá trị nguyên nằm ngoài phạm vi từ -32768 đến 32767, VB cung cấp kiểu 'Long', kiểu này dùng 4 byte để miêu tả 1 giá trị nguyên với cùng nguyên tắc như kiểu Integer. Kết quả là kiểu Long miêu tả các số nguyên trong phạm vi từ -2 tỉ đến 2 tỉ. Trong khoa học, ta có thể miêu tả số thực theo dạng ±m*Be, m gọi là định trị, B là cơ số và e là số mũ. Như vậy 1 số thực cụ thể có thể được miêu tả bởi rất nhiều miêu tả khác nhau, trong đó miêu tả có 0.1≤m<1 được gọi là miêu tả chính tắc của số thực. Đây là miêu tả mà máy tính sẽ dùng. m (mantissa) quyết định độ chính xác ±m × B e B (base) e (exponent) quyết định độ lớn/nhỏ 9135.512 × 10-1 0.9135512 × 103 913.5512 91355.12 × 10-2 9.135512 × 102 Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 43 Biểu diễn số thực trong Visual Basic Trước khi lưu vào máy tính, số thực được đổi về dạng miêu tả nhị phân dưới dạng ±1.m*2e (m là chuỗi bit nhị phân miêu tả phần lẻ). VB lưu số thực theo chuẩn IEEE 754, dùng 1 trong 2 dạng lưu : ƒ Chính xác đơn (Single) : VB dùng 4 byte - 4 ô nhớ (32 bit) để lưu số thực theo dạng thức cụ thể sau : trong đó bit S = 1 (âm), =0 (dương). M = m & E = 127 + e S E M 1 8 23 ƒ Chính xác kép (Double) : VB dùng 8 byte - 8 ô nhớ (64 bit) để lưu số thực theo dạng thức cụ thể sau : trong đó bit S = 1 (âm), =0 (dương); M = m & E = 1023 + e SE M 1 11 52 Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 44 22
  13. Biểu diễn số thực trong VB - Thí dụ Thí dụ giá trị -1.5 được miêu tả dạng nhị phân là -1.1*20. ƒ Do đónếu dùng kiểu Single chứa số thực -1.5, ta tốn 4 byte (32 bit) với các thành phần S = 1, M = 10 0 (22 bit 0), E = 127. Kết quả, giá trị của 4 byte miêu tả số -1.5 như sau : BF C0 00 00 ƒ Tương tự, nếu dùng kiểu Double chứa số thực -1.5, ta tốn 8 byte (64 bit) với các thành phần S = 1, M = 10 0 (51 bit 0), E = 1023. Kết quả, giá trị của 8 byte miêu tả số -1.5 như sau : BF F8 00 00 00 00 00 00. ƒ VB dùng cách chứa LE, do đógiátrị -1.5 được lưu vào bộ nhớ theo kiểu Single sẽ chiếm 4 byte theo giá trị lần lượt từ địa chỉ thấp đến cao là 00 00 C0 BF. Tương tự nếu miêu tả -1.5 vào bộ nhớ theo kiểu Double thì sẽ cần 8 ô nhớ với giá trị lần lượt từ địa chỉ thấp đến cao là 00 00 00 00 00 00 F8 BF. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 45 Biểu diễn chuỗi ký tự trong Visual Basic Chuỗi ký tự là danh sách nhiều ký tự, mỗi ký tự được miêu tả trong máy bởi n bit nhớ : ƒ mã ASCII dùng 7 bit (dùng luôn 1 byte nhưng bỏ bit 8) để miêu tả 1 ký tự ⇒ tập ký tự mà mã ASCII miêu tả được là 128. ƒ mã ISO8859-1 dùng 8 bit (1 byte) để miêu tả 1 ký tự ⇒ tập ký tự mà mã ISO8859-1 miêu tả được là 256. ƒ mã Unicode trên Windows dùng 16 bit (2 byte) để miêu tả 1 ký tự ⇒ tập ký tự mà mã Unicode trên Windows miêu tả được là 65536. ƒ Hiện có nhiều loại mã tiếng Việt khác nhau, đa số dùng mã ISO8859-1 rồi qui định lại cách hiển thị 1 số ký tự thành ký tự Việt. Riêng Unicode là bộ mã thống nhất toàn cầu, trong đócó đủ các ký tự Việt. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 46 23
  14. Bảng mã ASCII 7 bit Mã ASCII dùng các giá trị (mã) từ 0 - 127 để miêu tả các ký tự : ƒ mã từ 0 - 31 là các mã điều khiển như CR=13 (Carriage Return), LF=10 (Line Feed), ESC=27 (Escape) ƒ mã 32 miêu tả ký tự trống, 33 miêu tả ký tự !, theo bảng sau : ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 47 Bảng mã ISO8859-1 (8 bit) Mã ISO8859-1 dùng các giá trị (mã) từ 0 - 255 để miêu tả cáckýtự (128 mã ký tựđầu qui định giống như mã ASCII) : ƒ mã từ 0 - 31 là các mã điềukhiểnnhư CR=13 (Carriage Return), LF=10 (Line Feed), ESC=27 (Escape) ƒ mã 32 miêu tả ký tự trống, 33 miêu tả ký tự !, theo bảng sau : ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ €‚ƒ„ †‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬-®¯°±²³´µ¶·¸¹º»¼½¾¿ ÀÁ à ÄÅÆÇÈÉÊ ËÌ ÍÎÏÐ ÑÒ ÓÔ Õ Ö×ØÙÚÛÜÝ Þ ß àáâãäåæçèéê ëìíîïð ñò óô õ ö÷øùúûüý þ ÿ Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 48 24
  15. Bảng mã tiếng Việt ĐHBK 1 byte Mã ĐHBK 1 byte có được bằng cách hiệu chỉnh bảng mã ISO8859-1 : ƒ mã từ 0 - 31 là các mã điều khiển như CR=13 (Carriage Return), LF=10 (Line Feed), ESC=27 (Escape) ƒ mã 32 miêu tả ký tự trống, 33 miêu tả ký tự !, theo bảng sau : ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ Á Ảƒ Ạ †Ẻ ˆ Ẹ Š‹ŒŽỎ’ Ọ ”•ỦŨ˜ Ă š Ằ œ žŸ ~¡¢£¤¥¦§¨©ª«¬­ ®¯°±²³´µ¶·¸¹º»¼½¾¿ ÀÁ à ÄÅÆÇÈÉÊ ËÌ ÍÎÏÐ ÑÒ ÓÔ Õ Ö×ØÙÚÛÜÝ Þ ß àáâ ã äåæçèéê ëìíîïð ñò óô õ ö÷øùúûüý þ ÿ Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 49 Một phần mã tiếng Việt Unicode Mã Unicode Windows dùng 2 byte để miêu tả 1 ký tự : ƒ 256 mã đầu từ 0 - 255 giống y như mã ISO8859-1. ƒ mã từ 256 trở đi chứa các ký tự của hầu hết các ngôn ngữ trên thế giới (quá khứ, hiện tại và tương lai). ƒ thí dụ sau là 1 phần mã tiếng Việt trong mã Unicode : mã 1ea0H biểu diễn ký tựẠ mã 1ef9H biểu diễn ký tựỹ Ạ  Ả À~ޡߢà£á¤âšØẰ ٜڝ Û ž Ü Ẹ Ç Ẻ ÅˆÆ¦ä §å¨æ©çªèŒÊŽ Ì Ọ Ñ Ỏ Ï¬ê­ ë®ì¯í°î²ð³ñ´ò µó¶ô˜ÖỦ Ô¸ö¹÷ºø»ù¼ú^ü ÿ`ý|þ Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 50 25
  16. Mã hóa dữ liệu của ứng dụng Số nguyên (Integer, Long), số thực (Single, Double), chuỗi ký tự (String) là những dạng mã hóa dữ liệu phổ dụng, ngoài ra mỗi ứng dụng có thể cần có cách mã hóa riêng để mã hóa dữ liệu đặc thù của mình như hình ảnh, âm thanh, Trong chương 5 và 6 chúng ta sẽ trình bày chi tiết các kiểu dữ liệu mà ngôn ngữ VB hỗ trợ. Nhưng ta đã trình bày trong slide 15 (chương 1), dù dùng cách mã hóa cụ thể nào thì kết quả của việc mã hóa phải là 1 chuỗi bit (hay chuỗi byte) để có thể được lưu trử và xử lý bên trong máy tính. Bộ nhớ của máy tính thường có dung lượng không lớn nên ta chỉ dùng nó để chứa code và dữ liệu của chương trình đang thực thi. 1 máy tính có thể lưu trữ rất nhiều chương trình và dữ liệu của chúng trên các thiết bị chứa tin (bộ nhớ ngoài) như đĩa mềm, đĩa cứng, CDROM, Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 51 2.5 Hệ thống file ƒ code của 1 chương trình, chuỗi byte miêu tả dữ liệu được lưu trữ trên thiết bị chứa tin trong 1 phần tử chứa tin luận lý được gọi là file. ƒ 1 thiết bị chứa tin thường chứa rất nhiều file. Để nhận dạng và truy xuất 1 file, ta dùng tên nhận dạng gán cho mỗi file. Để dễ dùng file, tên nhận dạng của nó sẽởdạng tên gợi nhớ (chuỗi ký tự miêu tả ngữ nghĩa của nội dung file), thí dụ như file "luận án tốt nghiệp.doc" chứa toàn bộ nội dung luận án tốt nghiệp của người dùng máy. ƒ Nếu ta dùng không gian phẳng để đặt tên cho các file trên 1 thiết bị chứa tin thì vì số lượng file quá lớn nên ta khó lòng đặt tên, nhận dạng, xử lý, (nói chung là quản lý) từng file. ƒ Để giải quyết vấn đề trên ta dùng không gian cây thứ bậc để tổ chức và quản lý các file trên từng thiết bị chứa tin. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 52 26
  17. Thiết bị chứa tin : Không gian cây thứ bậc ƒ Để tạo không gian cây thứ bậc, ta dùng khái niệm thư mục (directory). ƒ thư mục là phần tử chứa nhiều phần tử bên trong nó : có thể là file hay thư mục. Thường ta sẽ dùng thư mục để chứa những phần tử con có mối quan hệ mật thiết nào đó, thí dụ như thư mục chứa các ảnh kỷ niệm, thư mục chứa các file nhạc ưa thích, ƒ Thiết bị chứa tin vật lý (đĩa mềm, đĩa cứng, CDROM, ) được trừu tượng hóa như là 1 thư mục (ta gọi thư mục đặc biệt này là thư mục gốc). Thư mục gốc chứa nhiều phần tử con bên trong, mỗi phần tử con của thư mục gốc thường là thư mục con nhưng cũng có thể là file. Mỗi thư mục con lại có thể chứa nhiều thư mục con hay file và cứ thế ta sẽ hình thành 1 cây thứ bậc các thư mục và file. ƒ Ta cũng dùng tên gợi nhớ để nhận dạng từng thư mục. Trong không gian cây thứ bậc, ta sẽ dùng khái niệm đường dẫn (pathname) để nhận dạng 1 file hay 1 thư mục. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 53 Thí dụ về hệ thống file Cây thứ bậc của ổ c: \ Windows AudioFile VideoFile config.sys System Fonts USAFilm ChinaFilm VNFilm win.com arial.ttf Dòng đời.mpg Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 54 27
  18. Đường dẫn tuyệt đối và tương đối ƒ Đường dẫn (pathname) là thông tin để tìm kiếm(xácđịnh) 1 phầntử từ 1 vị trí nào đó, nó chứa danh sách chính xác các tên gợinhớ của các phầntử mà ta phải đi qua xuất phát từ vị trí đầu để đếnphầntử cần tìm. ƒ ta dùng 1 dấungăn đặcbiệt để ngăncách2 têngợinhớ liên tiếp nhau trong đường dẫn (trong Windows, dấungănlà'\') ƒ Tên thư mụcgốc luôn là '\'. ƒ Có 2 khái niệm đường dẫn: đường dẫntuyệt đốivàđường dẫntương đối. Đường dẫntuyệt đốilàđường dẫnxuất phát từ thư mụcgốc, đường dẫntương đốixuất phát từ thư mụclàmviệc(working directory). ƒ Trướckhiứng dụng bắt đầuchạy, hệ thống sẽ khởi động thư mục làm việc cho ứng dụng (theo cơ chế nào đó). Trong quá trình thựcthi, ứng dụng có quyền thay đổithư mục làm việc theo yêu cầu riêng. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 55 Đường dẫn tuyệt đối và tương đối (tt) ƒ Xét cây thứ bậc của ổ c: trên slide 54, đường dẫn tuyệt đối sau sẽ nhận dạng chính xác file arial.ttf trong thư mục 'Fonts' : c:\Windows\Fonts\arial.ttf ƒ Nếu thư mục working của chương trình hiện là c:\Windows\Fonts thì ta có thể dùng đường dẫn tương đối sau đây để xác định file arial.ttf : arial.ttf ƒ Đường dẫn tuyệt đối thường dài hơn đường dẫn tương đối nhưng nó luôn có giá trị bất chấp ứng dụng đang ở thư mục working nào. ƒ Đường dẫn tương đối thường gọn hơn (đa số chỉ chứa tên file cần truy xuất vì ứng dụng sẽ thiết lập thư mục working là thư mục chứa các file mà ứng dụng truy xuất) nhưng chỉ có giá trị với 1 thư mục working cụ thể. ƒ Trong 1 vài trường hợp đặc biệt, ta phải dùng đường dẫn tương đối ngay cả nó dài và phức tạp hơn đường dẫn tuyệt đối. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 56 28
  19. 2.6 Quản lý hệ thống file ƒ Hình dạng và cấu trúc của 1 hệ thống file của 1 thiết bị chứa tin sẽ do người dùng thiết lập nhờ các tác vụ phổ biến như : tạo/xóa thư mục, tạo/xóa file, copy/move file/thư mục từ nơi này đến nơi khác. ƒ Nhưng trước khi thực hiện 1 tác vụ nào đó, người dùng thường duyệt file : làm hiển thị cấu trúc của hệ thống file ở 1 dạng nào đó để quan sát nó dễ dàng. ƒ Hệ thống dùng nhiều cơ chế khác nhau để bảo vệ việc truy xuất file bởi người dùng. 1 trong các cơ chế mà Windows XP dùng là kết hợp với mỗi file 1 số thuộc tính truy xuất, mỗi thuộc tính được lưu trữ trong 1 bit : ƒ Read Only, nếu = 1 thì hệ thống không cho các ứng dụng xóa/hiệu chỉnh phần tử. ƒ Hidden, nếu = 1 thì hệ thống sẽ dấu không hiển thị phần tử bởi các ứng dụng duyệt file. ƒ Archive được thiết lập =1 nếu phần tử bị hiệu chỉnh nội dung (phục vụ cho cơ chế backup tăng dần). Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 57 Tiện ích quản lý hệ thống file ƒ Tấtcả tác vụ liên quan đếnhệ thống file đượcgọilàtácvụ quảnlýhệ thống file. ƒ hệ thống sẽ cung cấp1 ứng dụng (tiệních) để người dùng dễ dàng thựchiệncáctácvụ quản lý file. Thí dụ trên Windows ta thường dùng tiệních"Windows Explorer" để quảnlýhệ thống file. ƒ Có 4 cách phổ biến để chạy1 ứng dụng (tiệních) : 1. double-click vào icon miêu tảứng dụng trên màn hình desktop (phảitạo icon shortcut chương trình trước khi dùng cách chạy này). 2. duyệtvàchọn ứng dụng từ menu Start.Programs 3. chạy trình Windows Explorer (từ menu Start.Programs.Accessories.Windows Explorer), duyệtthư mục tìm file ứng dụng, ấn kép chuột vào file để chạy nó. 4. vào menu Start.Run, rồinhập hàng lệnh chứa đường dẫnxácđịnh file chương trình và các tham số hàng lệnh. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 58 29
  20. Cửa sổ của WE & các phần tử giao diện chính MenuBar chứa tất cả tác vụ mà ứng dụng hỗ trợ Toolbar chứa các icon tác vụ thường dùng TreeCtrl hiển thị hệ thống file dạng cây ListCtrl hiển thị các phần tử trong thư mục StatusBar Taskbar Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 59 Các thao tác duyệt hệ thống file Click vào ô - để thu nhỏ nội dung thư mục Click vào ô + để chi tiết hóa nội dung thư mục. Nhưng tốtnhấtlà double-click vào tên thư mục để chi tiết hóa/thu nhỏ nội dung Click vào tên thư mục để hiểnthị nội dung chi tiếtcủanó Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 60 30
  21. Các tác vụ xử lý file Qui trình chung để thực hiện tác vụ trên 1 hay nhiều phần tử nào đólà: 1. chọn 1 hay nhiều phần tử cần xử lý. 2. chọn option trong menu hay icon trong toolbar thực hiện tác vụ mong muốn. Chọn nhiều phần tử liên tiếp : 1. chick vào phần tử đầu, 2. ấn và giử phím Shift, 3. click vào phần tử cuối. 4. thả phím Shift. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 61 Các tác vụ xử lý file Chọn nhiều phần tử rời rạc : 1. chick vào phần tử đầu, 2. ấn và giử phím Ctrl, 3. dời mouse đến từng phần tử cần chọn rồi click vào nó. 4. lặp lại bước 3 nhiều lần cho nhiều phần tử 5. thả phím Ctrl. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 62 31
  22. Tạo thư mục/file mới Thường việc tạo file mới được thực hiện bên trong ứng dụng. Qui trình tạo mới 1 thư mục/file trong WE như sau : 1. duyệt cây thư mục trong cửa sổ bên trái và chọn thư mục mà ở đóbạn muốn tạo thư mục/file mới. 2. chọn menu File.New 3. nếu muốn tạo thư mục, chọn Folder. 4. nếu muốn tạo file, chọn loại file trong danh sách. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 63 Xóa thư mục/file đang tồn tại Qui trình xóa 1 thư mục/file trong WE như sau : 1. duyệt cây thư mục trong cửa sổ bên trái và chọn thư mục mà ở đó bạn muốn xóa thư mục/file. 2. chọn các phần tử cần xóa trong ListCtrl bên phải. 3. chọn menu File hay ấn phải chuột vào vị trí chọn các phần tử để hiển thị menu các tác vụ có thể thực hiện. 4. chọn option "Delete" Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 64 32
  23. Copy thư mục/file vào clipboard Qui trình copy thư mục/file trong WE như sau : 1. duyệt cây thư mục trong cửa sổ bên trái và chọn thư mục mà ở đó bạn muốn copy thư mục/file. 2. chọn các phần tử cần copy trong ListCtrl bên phải. 3. chọn menu Edit hay ấn phải chuột vào vị trí chọn các phần tử để hiển thị menu các tác vụ có thể thực hiện. 4. chọn option "Copy" Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 65 Dán thư mục/file từ clipboard Qui trình dán thư mục/file từ clipboard vào thư mục chứa như sau : 1. duyệt cây thư mục trong cửa sổ bên trái và chọn thư mục mà ở đó bạn muốn dán thư mục/file. 2. chọn menu Edit để hiển thị menu các tác vụ có thể thực hiện. 3. chọn option "Paste" Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 66 33
  24. Di chuyển (move) thư mục/file Việc di chuyển thư mục/file được thực hiện bởi 3 tác vụ copy/paste/delete như đã được trình bày. Qui trình move thư mục/file khác như sau : 1. duyệt cây thư mục trong cửa sổ bên trái và chọn thư mục mà ở đóbạn muốn copy thư mục/file. 2. chọn các phần tử cần copy trong ListCtrl bên phải. 3. chọn menu Edit để hiển thị menu các tác vụ có thể thực hiện. 4. chọn option "Move to Folder" và xác định thư mục đích. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 67 Load file vào bộ nhớ để hiệu chỉnh Qui trình chạy ứng dụng và load file vào bộ nhớđể hiệuchỉnh nội dung file như sau : 1. duyệtcâythư mục trong cửasổ bên trái và chọn thư mụcchứafile cần hiệuchỉnh. 2. chọn file cầnhiệuchỉnh trong ListCtrl bên phải. 3. ấnphảichuột vào file chọn để hiểnthị menu các tác vụ có thể thực hiện. 4. chọn option "Open with" và xác định ứng dụng đượcdùngđể hiệu chỉnh file. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 68 34
  25. Hiển thị cửa sổ thông tin về file/thư mục Qui trình làm hiển thị cửa sổ thông tin thư mục/file như sau : 1. duyệt cây thư mục trong cửa sổ bên trái và chọn thư mục/file cần hiển thị thông tin. 2. chọn thư mục/file cần hiển thị thông tin trong ListCtrl bên phải. 3. ấn phải chuột vào file chọn để hiển thị menu các tác vụ có thể thực hiện. 4. chọn option "Properties" để làm hiển thị cửa sổ thông tin của thư mục/file tương ứng. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 69 Xem và hiệu chỉnh thuộc tính file/thư mục Khi cửasổ thông tin củathư mục/file đã đượchiểnthị, chọn trang general/Version để thấy các thông tin tương ứng. Trang bên phải là trang General. 1. xem các thuộc tính file. 2. nếumuốn thay đổi thuộc tính nào đó, ấn chuột vào checkbox tương ứng. Thuộc tính sẽ chuyểntừ không thành có hay ngượclại. 3. nếumuốncậpnhậtcác hiệuchỉnh thì ấnchuột vào button OK. Môn : Tin học Khoa Công nghệ Thông tin Chương 2 : Thể hiện dữ liệu trong máy tính số Trường ĐH Bách Khoa Tp.HCM Slide 70 35