CHƯƠNG 1: TỔNG QUAN VỀ LƯU TRỮ DỮ LIỆU TRÊN Ổ CỨNG 1. Dữ liệu máy tính 1. Khái niệm dữ liệu máy tính Dữ liệu máy tính là những thông tin được xử lý hoặc lưu trữ bởi máy tính. Thông tin này có thể ở dạng tài liệu văn bản, hình ảnh, clip âm thanh, phần mềm hoặc các loại dữ liệu khác.
Dữ liệu máy tính có thể được xử lý bởi CPU và lưu trữ trong các tệp và thư mục trên đĩa cứng của máy tính. Trong các hệ thống máy tính hiện đại (sau năm 1960), tất cả dữ liệu đều được biểu diễn dưới dạng một loạt các bit 0 và bit 1 được gọi là dữ liệu nhị phân. Bởi vì tất cả dữ liệu máy tính ở định dạng nhị phân nên nó có thể được tạo, xử lý và lưu trữ bằng kỹ thuật số. Điều này cho phép dữ liệu được truyền từ máy tính này sang máy tính khác bằng các kết nối mạng hoặc các thiết bị đa phương tiện khác nhau, đồng thời dữ liệu cũng không bị suy giảm theo thời gian hoặc mất chất lượng sau khi được sử dụng nhiều lần.
Dữ liệu máy tính có ba trạng thái: dữ liệu ở trạng thái lưu trữ, dữ liệu trong trạng thái lưu thông và dữ liệu trong trạng thái sử dụng. Cách biểu diễn dữ liệu trong thiết bị lưu trữ Như đã biết, dữ liệu là hình thức biểu diễn thông tin. Vậy đối với máy tính dữ liệu chính là các thông tin đã được mã hoá dưới dạng nhị phân. Máy tính có thể tính toán trên các số, có thể xử lý thông tin chữ hay thông tin logic, có thể xử lý những thông tin đa phương tiện (multimedia) như âm thanh và hình ảnh.
Máy tính còn có thể xử lý tri thức (knowledge). Tuy nhiên, để lưu trữ trong môi trường điện tử cả dữ liệu số, phi số và tri thức đều được mã hóa bằng các mã nhị phân. Theo nghĩa đó mọi dữ liệu dù là bản chất có khác nhau nhưng đều được số hoá. Dữ liệu kiểu số Hai cách thường dùng để biểu diễn số là số dấu phảy tĩnh và số dấu phảy động.
• Biểu diễn số dấu phảy tĩnh Với kiểu biểu diễn số dấu phảy tĩnh, một số sẽ được biểu diễn bởi n bit. Trong n bit này, bit đầu tiên dùng để mã dấu của số theo cách bit 0 dùng để mã dấu dương, bit 1 dùng để mã dấu âm. Trong n-1 bit còn lại, lấy một số bit cho phần nguyên và phần còn lại cho phần lẻ. Ví dụ trong dãy 16 bit nếu dùng 7 bit cho phần nguyên và 8 bit cho phần lẻ và một bit cho dấu thì có thể biểu diễn số như sau 01100101,11011011.
Do với mỗi kiểu biểu diễn đã chọn, vị trí dấu phảy mang tính quy ước nằm ở một vị trí cố định nên kiểu biểu diễn này gọi là kiểu dấu phảy tĩnh. Trên thực tế đa số các môi trường xử lý quy ước dấu phảy đứng sau ô cuối cùng có nghĩa là chỉ áp dụng chế độ dấu phảy tĩnh cho số nguyên. Độ dài của biểu diễn tuỳ thuộc vào nhu cầu. Các số nguyên thường dùng chủ yếu có các loại độ dài 8 bit, 16 bit và 32 bit.
Mã số nguyên trình bày trên đây được gọi là mã thuận. Thực ra để tiện cho việc thực hiện các phép tính đại số nhiều loại mã số nguyên khác được sử dụng như mã ngược, mã bù. • Biểu diễn dấu phảy động Trên thực tế việc biểu diễn dấu phảy tĩnh không thể đáp ứng được một số nhu cầu, đặc biệt trong tính toán gần đúng. Đối với các bài toán tính gần đúng những sai số là lớn về tuyệt đối nhưng tỉ số của sai số trên giá trị thực của số là nhỏ (sai số tương đối) có thể chấp nhận.
Mặt khác cách biểu diễn số trong dấu phảy tĩnh không đủ mềm dẻo để thể hiện các số quá lớn hoặc quá bé. Đã từ lâu, khi có nhu cầu tính toán gần đúng trên máy tính một loại biểu diễn số khác là biểu dấu phảy động thường được sử dụng. Trong dạng này số phải được phân tích trong dạng mũ hay còn là dạng nửa logarit như sau: × = ±𝑚𝑥. 10±𝑃𝑥 trong đó 𝑚𝑥 gọi là phần định trị còn ±𝑃𝑥 gọi là phần bậc.
Ví dụ: 3,14 = 0,314 × 101 −0,001 = −0,1 × 10−2 4 Như vậy phân tích của một số ra dạng mũ là không duy nhất nhưng nếu kèm thêm điều kiện phần định trị phải nằm giữa 1 và 10−1 thì phân tích luôn duy nhất. Phân tích như thế gọi là dạng chuẩn. Với dạng chuẩn, phần định trị không có phần nguyên nên chỉ phải biểu diễn vị trí dấu phảy phần lẻ của nó. Để biểu diễn một số trong một vùng nhớ n bit, một phần bit sẽ được dành ra để biểu diễn phần định trị và một vùng biểu diễn phần bậc.
Nguyên tắc mã dấu của phần định trị và phần bậc cũng giống như trong trường hợp số dấu phảy tĩnh. Như vậy ví trí dấu phảy thực sự của số là do phần bậc định ra trên phần định trị. Chính vì như vậy kiểu biểu diễn số này được gọi là biểu diễn dấu phảy động. Biểu diễn dấu phảy động có hai ưu điểm so với biểu diễn dấu phảy tĩnh là: - Khoảng biểu diễn số rất lớn khi với cùng một số vị trí (tương ứng là các ngăn lưu trữ trong một ô nhớ), kiểu dấu phảy động có thể biểu diễn các số có giá trị tuyệt đối rất lớn hoặc rất nhỏ so với biểu diễn dấu phảy tĩnh.
- Kiểu dấu phảy động có thể biểu diễn sai số tương đối tốt hơn rất nhiều khi so với biểu diễn dấu phảy tĩnh. Dữ liệu phi số • Chữ và dữ liệu kiểu văn bản Đơn vị cơ sở của dữ liệu văn bản là chữ. Ở đây khái niệm chữ cần được hiểu theo nghĩa rộng, không chỉ là các chữ cái la tinh mà kể cả chữ số, các dấu chính tả, các dấu toán học, các kí hiệu để trình bày. Mặt khác không phải dân tộc nào cũng dùng chữ latinh nên đối với một số dân tộc có thể có những chữ riêng.
Ví dụ bộ chữ Trung hoa có đến hơn 60 nghìn chữ. Để đỡ gây nhầm lẫn giữa khái niệm chữ theo nghĩa chữ cái thông thường (letter) với "chữ" dùng trong văn bản nói chung kể cả văn bản máy tính, thuật ngữ ký tự (character) sẽ được sử dụng với ý nghĩa là một ký hiệu dùng trong văn bản. Nếu dùng một vùng nhớ k bit để mã hoá một chữ thì chỉ có thể biểu diễn được tối đa là 2k kí tự vì chỉ có thể tạo được đúng 2K các mã nhị phân khác nhau. Điều này giải thích tại sao người Mỹ chỉ cần 7 bit để mã cho các chữ của họ; 5 để có thêm các mặt chữ châu Âu, chữ Hy lạp và một số ký hiệu trình bày cũng chỉ cần 8 bit; trong khi đó người Trung hoa hay người Nhật phải dùng các mã 16 bit.
Các văn bản được hình dung như một chuỗi kí tự. Nội dung một cuốn sách, một bài thơ được đưa vào máy tính được xem như một ví dụ cụ thể về thông tin văn bản. Hầu hết các máy tính và môi trường lập trình hiện nay đều sử dụng một byte để mã hoá một chữ. • Dữ liệu logic Dữ liệu loại logic chỉ thể hiện một trong hai trạng thái đối lập là đúng/sai, hoặc có/không.
Điều này thường thấy trong rất nhiều loại hồ sơ. Ví dụ trong lý lịch cá nhân: họ tên, quê quán là dữ liệu kiểu văn bản, ngày tháng năm sinh, lương có thể thể hiện bằng số, còn các thông tin như có là đoàn viên không, có gia đình hay không là các thông tin có kiểu logic. Các thông tin kiểu logic chịu tác động của các phép toán đặc trưng như các phép toán so sánh, các phép toán nhân logic “và”, cộng logic “hoặc” hay phủ định logic “không” ví dụ trong một hệ thống quản lý sinh viên người ta có thể phải đặt các câu hỏi như: in ra danh sách các sinh viên tuổi < 20 hoặc tuổi < 21 là đoàn viên và nơi sinh không phải Hà Nội. Về nguyên tắc có thể mã giá trị sai hay không bởi bit 0, giá trị đúng hay có bởi bit 1.
Tuy nhiên mức bit ít khi được sử dụng tới vì cơ chế địa chỉ hoá thường ít nhất ở mức byte. Khi đó các giá trị logic thường được dùng một byte để mã hoá. • Hình ảnh Hình ảnh cũng có thể xử lý bằng máy tính. Khác với hình ảnh thông thường, hình ảnh trong máy tính được mã hoá dưới dạng nhị phân.
Có rất nhiều kiểu mã hoá ảnh trong đó hai kiểu thông dụng nhất là: - Ảnh bitmap (nghĩa là bản đồ các bit) thể hiện ảnh như một lưới điểm. Như vậy mỗi điểm sẽ phải nằm trong một hàng và một cột nào đó trong lưới, ngoài ra màu của điểm cũng được mã hoá. Các ảnh khí tượng do các vệ tinh chụp gửi về, ảnh phong cảnh, chân dung đều có thể thể hiện theo kiểu này. Ngoài ra, cũng có thể đưa một ảnh bất kỳ vào máy dưới dạng bitmap bằng máy quét ảnh (scanner), máy quay video số (digital video camera) hay máy chụp ảnh số (digital camera).
Nói chung dữ liệu ảnh này là dữ liệu lớn. Vì vậy, các kỹ thuật nén ảnh thường được sử dụng trước khi đưa vào máy lưu trữ và 6 khôi phục ảnh khi trình bày. Có rất nhiều chuẩn ảnh khác nhau, chủ yếu khác nhau ở cách tổ chức để nén được ảnh mà vẫn giữ được chất lượng và thể hiện được các hiệu ứng ảnh. Còn lúc hiển thị để xem thì ảnh sẽ được khôi phục dưới dạng bitmap.
- Kiểu thứ 2 thể hiện ảnh theo cách vẽ. Kiểu này chỉ phù hợp với các ảnh có thành phần là các điểm rời rạc, các đường hoặc hình thể hiện bằng các đường biên như bản vẽ kiến trúc, các bản vẽ kỹ thuật, bản đồ. Cách lưu trữ là lưu thông tin về các thành phần của ảnh. Đối với một đoạn thẳng thì chỉ lưu toạ độ các đầu mút, đối với một hình tròn thì chỉ lưu toạ độ tâm và bán kính.
Vì thế các ảnh này thường gọn gàng và dễ phóng to thu nhỏ (vì chỉ dùng các phép biến đổi toạ độ). • Âm thanh Âm thanh cũng có thể được xử lý bằng máy tính. Cũng có nhiều phương pháp mã hoá âm thanh. Cách đơn giản nhất là mã hoá bằng cách xấp xỉ dao động sóng âm bằng một chuỗi các byte thể hiện biên độ dao dộng tương ứng theo từng khoảng thời gian bằng nhau.
Dĩ nhiên các đơn vị thời gian này cần phải đủ nhỏ để không làm nghèo âm thanh.