Biểu diễn dữ liệu
Trang 2m _Ö_ÖẮÖ_
Nói dung chương 53
I Khái niệm về biêu diễn dữ liệu
H Biểu diễn sô nguyên
III Biéu dién sô thực
IV Biéu dién ky tu
V Dữ liệu 4m thanh, hình anh
Trang 4s« Giá trị sô (numbers)
¢ Van ban (text)
¢ Hinh anh (images, graphics)
¢ Am thanh (audio)
¢ Hinh anh dong (video)
Trang 5Ste
Nen di ligu (Data Compression)
m Mục tiêu: giảm kích thước lưu trữ dữ liệu
s Tỉ sô nén (Compression ratio) mCó hai kỹ thuật chính:
° Nén không mất dữ liệu (lossless): dữ liệu có
thê được phục hôi nguyên vẹn từ đữ liệu nén
° Nén có mât dữ liệu (lossly): có một phân dữ
liệu bị mât khi nén
Trang 6m
Dữ liệu dạng nhị phân
a May tinh được thiết kê đề sử dụng dữ liệu
dang nhi phan:
¢ Giá thành thâp
¢ DO tin cậy cao
= BIT (Binary digiT): cht s6 nhi phan
Trang 12Ste
Mot so gia tri can nho (tt)
Trang 13
Em :
4 Chuyén doi gitra cac hé dém
= Chuyén tir hé 2, hé 8, hé 16 sang hé 10
= Chuyén déi gitta hé 2 va hé 8
m Chuyên đôi giữa hệ 2 và hệ 16
= Chuyén tir hé 10 sang hệ 2
= Chuyên từ hệ I0 sang hệ đêm cơ sô K
13
Trang 15° 175, = 001111101 =1111101,
15
Trang 17m.Ốỗẻ nh
Chuyên tử hệ 10 sang hệ 2
Hai phương pháp thông dụng:
m Phân tích thành tông các lũy thừa của 2
m Thực hiện các phép chia cho 2
17
Trang 20m_._
Chuyên từ hệ I0 sang hệ đềm co so K
Gia tri thap phan X
m Thực hién cac phep chia X va cac thuong
sô có được cho K, cho dén khi thương số
là 0
m Kết quả là các dư sô được lây theo chiêu
ngược lại (từ đáy lên đỉnh.)
Trang 23m.Ốề
LL Biều diên số nguyên
1 Cac khai niém
2 Sô nguyên không dâu
3 SÔ nguyên co dau
23
Trang 24m _Ö_ÖẮÖ_
1 Cac khái niêm
m Giá trị X được biêu diễn trên n bit
s X: øiá trị cân biêu diễn
° n: kích thước biều diễn
+ Voi n bit chỉ biêu diễn được các giá trị X
trong một khoảng biêu diện
= So nguyên không dau (unsigned integer)
= SO nguyên c6 dau (signed integer)
Trang 26TC -
Bài tập 2
m Tìm biểu diễn nhị phân, bát phân, thập
lục phân của các sô thập phân không dâu sau đây:
¢ 81, 102, 250 vo1n=8
¢ 1000, 2050 voi n = 16
Trang 28m(n-1) bit còn lại là biêu diễn nhị phân của
độ lớn X (trị tuyệt đôi của X)
m Vị dụ:
°X=5n=4 > X=0101
Trang 30SESE ete
b Ma bu |
m Dùng phép toán bitwise NOT (đối bit Ï thành
bit 0, bít 0 thành bít 1) đề tạo sô âm
m Vị dụ: vớin=4
« 0I01=1+19
¢ 1010=-5 mã bù | cua -5 la 1010
m Nhận xét: có 1 bit dau (0:duong, 1:4m)
= Khoảng biêu diễn:
- (2"†1_— 1) > +(2"!_ 1)
°® n=6&: -127 49 D +1274,
-n=16: -32767 4) > +32767 1,
Trang 33m Được sử dụng trên các mày tính hiện đại
(trong CPU, ngôn ngữ lập trình)
33
Trang 34Ul
Tim ma bu 2
X: giá trị cân biêu diễn, n: sô bit dùng biêu diễn
=mX dương: mã bù 2 là biêu diễn nhị phân
dung n bit cua X
e X=5, n=8, ma bu 2 cua 5 là 00000101
mX âm:
¢ Biéu dién trị tuyệt đôi X dùng n bit
s Đôi bít 1 thành bit 0 và bit 0 thành bít |
¢ Cong thêm |
Trang 36m _Ö_ÖẮÖ_
Tim ma bu 2 (tt)
m Phương pháp đơn gian cho X am
¢ Biéu dién tri tuyét d6i cha X dung n bit
¢ Tim bit 1 dau tién ttr bén phai
- Doi 150, 01 tat ca cdc bit bén trai bit 1
Trang 38m n
Xác định kêt quả phép cộng sô bù 2
mNêu sô nhớ vào (carry in) bang voi sô
nhớ ra (carry out) trong phép cong bit dau thì không có hiện tượng tràn
mNêu sô nhớ vào (carry in) khác với sô
nhớ ra (carry out) trong phép cong bit dau
thì có hiện tượng tràn
s Overflow: kết quả phép toán vượt ra
ngoài khoảng biêu diện
Trang 39Ste
d Ma qua N
= Con goi la phuong phap di chuyén (biased)
a Mot gia tri nguyen có dâu X được biêu
diễn thành một sô nguyên không dâu có oja tri la X+N
m Ví dụ: N=7 2 mã quá 7, n=4
¢ Ma quả 7 của -5 là 0010
¢ Ma qua 7 cua 5 la 1100
39
Trang 40m Mã quá N dùng trong biểu diễn sô dâu
châm động theo tiêu chuân IEEE 754
Trang 41NMA, NMA, NMA,
NA,
NA, NMA,
NA,
NA,
NA,
Sign and Magnitude
NMA,
41
Trang 42Ste
Bai tap 3
mCho n = 8, tìm mã độ lớn có dâu, mã bù
1, mã bù 2, mã quá 127 của các sô thập
phân sau đây:
s« 10, 61, 102
e -22, -55, -100
Trang 43' mg _~
III Biéu dién so thuc
1 Khái niệm vê sô thực
2 Sô dâu châm tĩnh
3 Sô dâu châm động
4 Tiêu chuân sô dâu châm động IEEE 754
43
Trang 45m Dùng n+m+1 bit đề biêu diễn:
s 1 bit dâu (0: dương, 1: âm)
¢ n bit: phan nguyên
¢ m bit: phan phan so dung
Bit dau _ Phần nguyên _ Phan phan so dung
45
Trang 48LOC
Ung dung so dau cham tinh
m Dùng trong các chương trinh tính toàn
thương mại (các ứng dung spreadsheet),
và được hỗ trợ trên một sé ngôn ngữ lập
trình
Trang 49Ste
Bai tap 4
a Cho n=7, m=8, tim biéu dién sô dâu châm
tinh cua cac so thap phan sau day:
¢ 100.625, -/0.3125, -120.4375
49
Trang 50a goi la co so (radix)
m goi la phan dinh tri (mantissa)
e goi la phan bac (exponent)
Trang 51m VỊ trí ngăn cách giữa phân nguyên và phân
phân sô phụ thuộc phân bậc e không cô định
như trong biểu diễn số dâu cham tinh > biéu
diễn sô dâu châm động
51
Trang 52Ste
SO dau cham dong (tt)
m Nêu đặt thêm điêu kiện ar! <|ml|< 1 thi
cach phan tich la duy nhat: dang chuân
m Xét lại ví dụ trên:
a= 10, X =3.14,, = 0.314*10!
Trang 53
mẻ
Khải niệm FLOPS
a Dung trong đánh giá hiệu suất máy tính
a FLoating-point Operations Per Second
¢ S6 tinh toan s6 dau châm động trong l giây
m Khải niệm tương tự MIPS
¢ Million Instructions Per Second S6 lénh thuc hién trong mot giay, trong do lệnh có thể là tính toán sô nguyên, tính toán sô dâu châm động, tính toán luận
ly,
53
Trang 54m.ỐỒÔ _ ltt—we J
4 Tieu chuan so dau cham dong IEEE 754
= Do t6 chirc IEEE (Institude of Electrical
and Electronic Engineers)
° Mở rộng thành tiêu chuân IEEE 854
= Được sử dụng phô biên trên các đơn vị sô
dâu châm dong (FPU, Floating-Point
Unit) trong cac bo xu ly, va trén cac ngon ngữ lập trinh
Trang 55m
Tiéu chuan [EEE754 (tt)
m Tiêu chuân IEEE 754 gôm các dạng sô châm
động tiêu chuân (normalized):
¢ S6 chinh xác đơn — Single-precision 32 bit
(S6 single)
* S6 chinh xac kép — Double-precision 64 bit (S6 double)
© S6 chinh xác kép mở rộng — Double-Extended precision 80 bit (S6 extended)
m Sô extended ding dé giam cac 161 khi lam tròn
sô và chỉ dùng bên trong các FPU
55
Trang 56trong do: S la phan dinh tri (significand)
e la phan bac (exponent)
VỚI I./0<|SŠ|<^2
S có thể viết thành S = 1.f
trong đó f là phân phan so (fraction)
X=+1.4* 2°
Trang 57Slt
SO chinh xac don (so single)
= So chinh xác đơn có 32 bit:
¢ 1 bit dâu (0:dương, 1:4m)
s 8 bit phân bậc dùng mã quá 127
s 23 bit phân phân sô (thuộc phân định trị)
1 bit 8 bit 23 bit
of
Trang 58¢ Phan dinh tri S = 1.0, phân phân sô = 0
= Biéu dién dang s6 chinh xác đơn của 0.5:
- 001111110 00 00, = 3F000000,,
23 BIT 0
Trang 60
m.ỐỔỒ Ö
SÔ chính xác kép (sô double)
m Sô chính xác kép có 64 bit:
¢ 1 bit dâu (0:dương, 1:âm)
s 11 bit phân bậc dùng mã quá 1023
s 52 bit phân phân sô (thuộc phân định trị)
1 bit 11 bit 92 bit
Trang 61S6 bit phan bac 8 11
S6 bit phan dinh tri 23 52
Trang 64m Sô vô cực có thê dung lam toan hạng tuần
theo các quy tắc toán học cho sô vô cực
m Khi kết quả phép toán không xác định, ví
dụ œ/œ thi dùng dang NaN (Not a Number)
Trang 65Nêu sô cân làm tròn ở giữa 2 giá trị thì làm
tròn về số có bit cuôi bên phải là 0
* Toward zero: lam tron vé zero
¢ Toward positive infinity: lam tron vé +00
¢ Toward negative infinity: lam tron vé -oo
65
Trang 66m
Bai tap 5
m Đôi các giá trị thập phân sau đây sang
dang so single (IEEE 754), trinh bay ket quả ở dạng hệ ló:
e -15.5, 20.5, -34
m Đôi các sô dạng sinøle sau đây vê dang
thập phân:
¢ 42E48000H, 3F880Q0000H
Trang 68Stes
1 Cac khái niêm
m Ký tự trên máy tinh (computer character)
là đơn vị thông tin tương ứng vỚI:
° Một ký hiệu âm tiét (syllabary) trong dang viet của ngôn ngữ tự nhiên
° Ký tự điêu khiên trong xử lý văn bản
m Mỗi ký tự được mã hoá băng một chuỗi
bit va duoc liệt kê trong bảng mã (character encoding scheme) hay bộ ký tự (character set)
Trang 69¢ Vi du: “ˆA”ˆ có giả trị 41H trong ma ASCII
a Cac Ky tự có biểu diễn đô họa (glyph)
trén cac thiét bi xuat (man hình, may in)
m Font chữ (computer font) la file di lieu
bao gôm tap hop cac biéu diễn đô họa của các ký tự, ký hiệu theo một dạng (typeflace)
69
Trang 70¢ Vi du: 12 points, 24 points vo1 point là đơn
vị trong kỹ thuật in (1 point = 1/72 inch)
Trang 71mềẻỗẻ
Vi du font chữ
a Time New Roman — Bold — 36 point
a Arial — Bold Italic — 36 point
B Sench Deriph — Bold — 48 point
™m Courier New —- Normal —- 32 point
Trang 722 hUMUlle
Các định dạng chính của đữ liệu font chữ
= Bitmap font
¢ Bao gom mot chudi cac diém anh (pixel)
biêu diễn ảnh của ky tu theo một dạng chữ trên một cỡ chữ
= Outline font
¢ Bao gom cac dudng cong dang Bézier, cac
lệnh vẽ, các biêu thức toán, cho phép thê hiện một dạng chữ theo kích thước tùy ý (scalable)
Trang 73.' ý -
True Type font
a La dang Outline font duoc st’ dung pho
bién trén cac hé diéu hanh hién dai
ma Vi du: Windows 2K/XP su dung True
Type font dang OpenType
73
Trang 74"—_
2 ASCII
American Standard Code for Information Interchange
= Do ANSI (American National Standards
Institude) cong bo nam 1967, cap nhat
nam 1986
= Bang ma ASCII dung biéu dién ky tu trén
máy tính và các thiệt bị truyền thông
Trang 75m UhUlUlet
Ma ASCII (tt)
mMã ASCII chuẩn dùng 7 bít, biêu diễn
được 128 ky tu, bao g6m:
° Cac ky tu diéu khién (control characters) co o1a tri (ma) tu 0 dén 1 Fh
° Các ký tự 1n duge (printable characters) co e1a tri (ma) tu 20h dén 7Fh
m Mã ASCII mở rộng dùng 8 bit, bao gôm:
¢ Phan ASCII chuan
° Các ký tự đặc biệt có giá trị (mã) từ 80h dén
FFh
75
Trang 76() NUL|SOH STX ETX | EOT|ENQ | ACK|BEL BS TAB) LF | VT FF CR\SO|SI
] DLEDCI DC2.DC3.DC4 NAE SYN ETB CAN BM SUB ESC FS|GS/|RS US
Trang 79ESE
a CIớI thiệu Unicode
mUnicode là tiêu chuân mã hóa ký tự của
Hiệp hội Unicode (Unicode Consortium) bao gôm các nha san xuat IBM, Apple,
HP, MicroSoft, Adobe,
=m Unicode la mot hién thưc của chuân ISO
10646 UCS 2 (Universal Character Set)
= Unicode được hỗ trợ trên các hệ điệu
hành, trình duyệt web, các tiêu chuan phan mém hién dai như XML, Java, LDAP, CORBA,
79
Trang 80mm —_
CHới thiệu Unicode (tt)
m Mục tiêu của Unicode là cung cap ma
(code point) duy nhat cho ky tu, ky hiệu trên tât cả các ngôn ngữ, hệ thông chữ viét (writing systems)
° Việc hiện thị ky tu (font) do chuong trình
ung dung (web, word processor, ) thực
hiện
mUnicode là mã 16 bít biêu diễn được
65536 ký tự, và có thê mở rộng đên trên Ì
triệu ký tự
Trang 81m Cách thê hiện mã ký tự theo Unicode:
U+xxxx, voi x la 1 chit so hé 16, vi du:
¢ Latin -1 {U+0080 U+00FF}
¢ Latin Extended A, B {U+0100 U+024F}
¢ Combining Diacritical Marks {U+0300
U+036F}
¢ Latin Extended Additional {U+1E00 U+1EFF}
° Đơn vị tiên tệ Viet Nam (Bong): ¢ U+20AB
81
Trang 82Có chuân dé chuyên đối giữa hai dạng trên
=m NFC (Normalization Form C)
=m NFD (Normalization Form D)
Trang 83° Dạng mã hóa chuẩn, dùng 1 hay 2 số nguyên 16 bit
¢ Duoc dung trong Windows API, NET, Java
ae UIF-8:
¢ Gom | dén 4 byte
° Được thiết kê để tương thích với mã ASCII và các
ø1ao thức trên byte
°® Dùng trên Web Browsers, E-Mail
83
Trang 87Stes
Ma tiéng Viet | byte
m Dùng phân mã ASCH mở rộng dé biêu
diễn các ký tự tiéng Việt
° Không đủ vì cân 134 ma (Aa, Da, .)
m Giải quyết bang viec dung chung ma cho
chữ thường và chữ hoa (cân 67 mã), phan biệt băng font chữ hoa, chữ thường hoặc sir dung 6 ma trong ving ASCII chuan
m Ví du: TCVN-5712 (font ABC), BKHCM
| byte, VPS,
87
Trang 88trong cùng | font
m Ví dụ: VNI, BKHCM 2 byte,
Trang 89trong trao doi thong tin dién tu
w Unicode dang dung san
¢ Latin Extended Additional {U+1E00 U+1EFF}
m Unicode dạng tô hợp
- Latin -1 {U+0080 U+00FF}
¢ Latin Extended A, B {U+0100 U+024F}
¢ Combining Diacritical Marks {U+0300 U+036F}
89
Trang 90- ABC, BKHCM 2 byte, VNI,
m Mã Unicode dùng các font chữ do hệ điều
hành và các phân mềm hô trợ
Trang 91¢ Chuong trinh diéu khién ban phim
¢ Chuong trinh ban phim
*® Bộ go
mNhận chuỗi phím theo quy định cách
nhập (input method) tiêng Việt, chuyền
đôi thành mã ký tự Việt theo bảng mã xác
định
91
Trang 94Sts
V Di lieu âm thanh hình ảnh
I Dữ liệu âm thanh (audio)
2 Dw liéu hinh anh (images, graphics)
3 Dữ liệu hình ảnh dong (video)
Trang 95m.ổỔỒÓỒ
1 Dữ liệu âm thanh
= Con người cảm nhận âm thanh do sóng
âm tác động trên taI, và tai truyên tín hiệu lên não
m Thiết bị loa tạo âm thanh do các tín hiệu
dién dang tuong tu (analog)
m Khi sô hóa dữ liệu âm thanh thì sẽ định
ky đo điện áp tín hiệu và lưu lại trên các cia tri so thich hop
¢ Sampling: Qua trinh lay mau
95
Trang 97m Về nguyên tắc, tộc độ lây mẫu khoảng
40000 lân/øiây là có thê lưu trữ, phục hôi
âm thanh với chat luong tot
97
Trang 98Ste
Cac dinh dang file 4m thanh thong dung
= Dang khong nén (uncompressed)
¢ PCM (Pulse Code Modulation)
¢ Dang file wav
= Dang nén mat dir liéu (lossy compression)
¢ MPEG-1 layer 3 (MP3), Vorbis, lossy Windows Media Audio (WMA)
= Dang nén không mất dữ liệu (lossless
compression)
¢ Apple lossless, lossless WMA
Trang 99theo ba nhóm chính: Red, Green Blue
m Màu sắc biểu diễn trên máy tính thường
dựa trên các giá trị R,G,B thể hiện thành
phân của các màu cơ bản
99
Trang 101mm
Biêu điện màu sắc
mColor depth: sô lượng dữ liệu dùng đề
biêu diễn màu
¢ Hi Color: 16 bit, True Color: 32 bit
= Mot chương trình ứng dụng có thê chỉ thê
hiện một sô lượng màu hạn chế theo color
palette (bảng màu)