TRNG I HC BÁCH KHOA À NNG
KHOA N T VIN THÔNG
oOo
BÀI GING
N T S 1
à Nng, 08 / 2007
Chng 1. H thng sm và khái nim v mã Trang 1
Chng 1
THNG SM VÀ KHÁI NIM V MÃ
1.1. H THNG SM
1.1.1. Hm
1. Khái nim
m là tp hp các phng pháp gi và biu din các con s bng các kí hiu có giá tr s
ng xác nh gi là các ch s.
2. Phân loi
Có th chia các hm làm hai loi: hm theo v trí và hm không theo v trí.
a. Hm theo v trí:
m theo v trí là hm mà trong ó giá tr s lng ca ch s còn ph thuc vào v trí ca
nó ng trong con s c th.
Ví d: H thp phân là mt hm theo v trí. S 1991 trong h thp phân c biu din bng
2 ch s “1” và “9”, nhng do v trí ng ca các ch s này trong con s là khác nhau nên s mang
các giá tr s lng khác nhau, chng hn ch s “1” v trí hàng n v biu din cho giá tr s
ng là 1 song ch s “1” v trí hàng nghìn li biu din cho giá tr s lng là 1000, hay ch s
“9” khi hàng chc biu din giá tr là 90 còn khi hàng trm li biu din cho giá tr là 900.
b. Hm không theo v trí:
m không theo v trí là hm mà trong ó giá tr s lng ca ch s không ph thuc vào
trí ca nó ng trong con s.
m La Mã là mt hm không theo v trí. Hm này s dng các ký t “I”, “V”, “X”
biu din các con s, trong ó “I” biu din cho giá tr s lng 1, “V” biu din cho giá tr s
ng 5, “X” biu din cho giá tr s lng 10 mà không ph thuc vào v trí các ch s này ng
trong con s c th.
−≤≤
(a
i
nguyên)
N c gi là c s ca hm. s ca mt hm là s lng ký t phân bit c s
ng trong mt hm. Các h thng sm c phân bit vi nhau bng mt c s N ca h
m ó. Mi ký t biu din mt ch s.
Bài ging K THUT S Trang 2
Trong i sng hng ngày chúng ta quen s dng hm thp phân (decimal) vi N=10. Trong
thng s còn s dng nhng hm khác là hm nh phân (binary) vi N=2, hm bát phân
(octal) vi N=8 và hm thp lc phân (hexadecimal) vi N=16.
- H nh phân : N =2 ⇒ a
i
= 0, 1.
- H thp phân : N =10 ⇒ a
i
= 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
- H bát phân : N =8
⇒
a
i
= 0, 1, 2, 3, 4, 5, 6, 7.
- H thp lc phân : N =16 ⇒ a
i
= 0, 1, 2, …8, 9, A, B, C,D, E, F.
Khi ã xut hin c s N, ta có th biu din s A di dng mt a thc theo c s N, c ký
hiu là A
(N)
:
A
NaA
(1.1)
i N=10 (h thp phân):
A
(10)
= a
m-1
.10
m-1
+ a
m-2
.10
m-2
+ + a
0
.10
0
+ + a
-n
.10
-n
1999,959
(10)
=1.10
3
+ 9.10
2
+ 9.10
1
+ 9.10
+1.2
2
+ 0.2
1
+ 1.2
0
= 13
(10)
i N=16 (h thp lc phân):
A
(16)
= a
m-1
.16
m-1
+ a
m-2
.16
m-2
+ + a
0
.16
0
+ a
-1
16
-1
+ + a
-n
16
+ + a
-n
.8
-n
376
(8)
= 3.8
2
+ 7.8
1
+ 6.8
0
= 254
(10)
Nh vy, biu thc (1.1) cho phép i các s bt k h nào sang h thp phân (h 10).
1.1.3. i c s
1. i t c s d sang c s 10
chuyn i mt s hm c s d sang hm c s 10 ngi ta khai trin con s trong c
d di dng a thc theo c s ca nó (theo biu thc 1.3).
Ví d 1.1
i s 1101
(2)
h nh phân sang h thp phân nh sau:
1011
(2)
= 1.2
3
+ 0.2
2
+ 1.2
có trng s nh nht (LSB).
Trong các ví d trên, c s ca hm c ghi dng ch s bên di. Ngoài ra cng có th ký
ch phân bit nh sau:
B - H nh phân (Binary) O - H bát phân (Octal)
D - H thp phân (Decmal) H - H thp lc phân (Hexadecimal)
Ví d: 1010B có ngha là 1010
(2)
37FH có ngha là 37F
(16)
& Quy tc chuyn i gia các hm c s 2, 8, 16 ?
1.2. HM NH PHÂN VÀ KHÁI NIM V MÃ
1.2.1. Hm nh phân
1. Khái nim
m nh phân, còn gi là hm c s 2, là hm trong ó ngi ta ch s dng hai kí hiu
0 và 1 biu din tt c các s. Hai ký hiu ó gi chung là bit hoc digit, nó c trng cho mch
n t có hai trng thái n nh hay còn gi là 2 trng thái bn ca FLIP- FLOP (ký hiu là FF).
Trong hm nh phân ngi ta quy c nh sau:
- Mt nhóm 4 bít gi là 1 nibble.
- Mt nhóm 8 bít gi là 1 byte.
- Nhóm nhiu bytes gi là t (word), có th có t 2 bytes (16 bít), t 4 bytes (32 bít),
hiu rõ hn mt s khái nim, ta xét s nh phân 4 bít: a
3
a
2
a
1
a
0
. Biu din di dng a thc
theo c s ca nó là:
1
, 2
0
(hay 8, 4, 2, 1) c gi là các trng s.
- a
0
c gi là bit có trng s nh nht, hay còn gi bit có ý ngha nh nht (LSB - Least
Significant Bit), còn gi là bít tr nht.
1023 16
63 16
3 16
0
15
15
3
A
(10)
=1023
→
A
(16)
=3FFH
13
2
6 2
3
2
1
1
0
ng sau ây lit kê các t hp mã nh phân 4 bít cùng các giá tr s thp phân, s bát phân và s
thp lc phân tng ng.
& T bng này hãy cho bit mi quan h gia các s trong h nh phân vi các s trong h
bát phân (N=8) và h thp lc phân (N=16)? Tó suy ra phng pháp chuyn i nhanh gia các
này?
thp phân a
3
a
2
a
1
a
0
S bát phân S thp lc phân
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
ng 1.1. Các t hp mã nh phân 4 bít
chuyn i gia các h thng s m khác nhau gi vai trò quan trng trong máy tính s.
Chúng ta bit rng 2
3
= 8 và 2
4
= 16, t bng mã trên có th nhn thy mi ch s trong h bát phân
ng ng vi mt nhóm ba ch s (3 bít) trong h nh phân, mi ch s trong h thp lc phân
ng ng vi mt nhóm bn ch s (4 bít) trong h nh phân. Do ó, khi biu din s nh phân
nhiu bit trên máy tính tránh sai sót ngi ta thng biu din thông qua s thp phân hoc thp
c phân hoc bát phân.
Ví d 1.3
a
1
a
0
có bao nhiêu t hp nh phân (t mã nh phân) khác nhau?
2. Các phép tính trên s nh phân
a. Phép cng
cng hai s nh phân, ngi ta da trên qui tc cng nh sau:
0 + 0 = 0 nh 0
0 + 1 = 1 nh 0
1 + 0 = 1 nh 0
1 + 1 = 0 nh 1
Ví d 1.4
:
3
→
0011
2
→
0010
5
→
0101 = 1.2
2
+ 1.2
0
= 5
(10)
b. Phép tr
0 - 0 = 0 mn 0
7
→
0111
5
→
0101
35 0111
0000
0111
0000
0100011 = 1.2
5
+ 1.2
1
+ 1.2
0
= 35
(10)
d. Phép chia
0 : 1 = 0
1 : 1 = 1
u ý: Khi chia s chia phi khác 0
+
+
-
-
x
x
Bài ging K THUT S Trang 6
Ví d 1.7: 10 5
cách s dng các t mã nh phân. Vic mã hóa ký t, tp lnh, ting nói, hình nh u da trên c
mã hóa s thp phân.
0 0 0 0 0 1 011 0
0 0 0 0 0 0 111
Thanh ghi ban u
Thanh ghi sau khi dch trái 1 bít
ch trái 1 bít
↔
nhân 2
0 0 0 0 0 0 10 1 1
0
Thanh ghi sau khi dch phi 1 bít
ch phi 1 bít
↔
chia 20
Hình 1.1. ng dng thanh ghi dch thc hin phép toán nhân và chia 2
Chng 1. H thng sm và khái nim v mã Trang 7
2. Mã hóa s thp phân
a. Khái nim
Trong thc t mã hóa s thp phân ngi ta s dng các s nh phân 4 bit (a
3
a
2
a
1
a
0
) theo quy
c sau:
c trng ca mã BCD s hc là có tính cht i xng qua mt ng trung gian. Do
y, tìm t mã BCD ca mt s thp phân nào ó ta ly bù (o) t mã BCD ca s bù 9
ng ng.
Ví d xét mã BCD 2421. ây là mã BCD s hc (tng các trng s bng 9), trong ó s 3
(thp phân) có t mã là 0011, s 6 (thp phân) là bù 9 ca 3. Do vy, có th suy ra t mã ca 6
ng cách ly bù t mã ca 3, ngha là ly bù 0011, ta s có t mã ca 6 là 1100.
b2. Mã BCD không có trng s là loi mã không cho phép phân tích thành a thc theo trng
ca nó. Các mã BCD không có trng s là: Mã Gray, Mã Gray tha 3.
c trng ca mã Gray là b mã trong ó hai t mã nh phân ng k tip nhau bao gi cng ch
khác nhau 1 bit.
Ví d:
Các bng di ây trình bày mt s loi mã thông dng.
Mã Gray: 2
→
0011
3
→
0010
4
→
0110
Còn vi mã BCD 8421:
3
→
0011
4
→
0100
Bài ging K THUT S Trang 8
ng 1.2: Các mã BCD t nhiên.
0 0 1 1 0 0 1 1 0 1 1 0 3
0 1 0 0 0 1 0 0 0 1 1 1 4
0 1 0 1 1 0 0 0 1 0 0 0 5
0 1 1 0 1 0 0 1 1 0 0 1 6
0 1 1 1 1 0 1 0 1 0 1 0 7
1 0 0 0 1 0 1 1 1 0 1 1 8
1 0 0 1 1 1 0 0 1 1 0 0 9
ng 1.3: Các mã BCD s hc
BCD 2421 BCD 5121 BCD 84-2-1
a
3
a
2
a
1
a
0
b
3
b
2
b
1
b
0
c
3
c
2
c
c
1
c
0
G
3
G
2
G
1
G
0
g
3
g
2
g
1
g
0
thp
phân
0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0
0 0 0 1 0 1 0 0 0 0 0 1 0 1 1 0 1
0 0 1 0 0 1 0 1 0 0 1 1 0 1 1 1 2
0 0 1 1 0 1 1 0 0 0 1 0 0 1 0 1 3
0 1 0 0 0 1 1 1 0 1 1 0 0 1 0 0 4
0 1 0 1 1 0 0 0 0 1 1 1 1 1 0 0 5
0 1 1 0 1 0 0 1 0 1 0 1 1 1 0 1 6
0 1 1 1 1 0 1 0 0 1 0 0 1 1 1 1 7
0
không phi s BCD 8421
- Nu y = 0 thì a
3
a
2
a
1
a
0
là s BCD 8421
Nh vy, nu mt s nh phân 4 bit không phi là mt s BCD 8421 thì ngõ ra y = 1. T bng
1.1 ta thy mt s nh phân 4 bít không phi là s BCD 8421 khi bít a
3
luôn luôn bng 1 và (bit a
1
ng 1 hoc bít a
2
bng 1).
Suy ra phng trình logic ca ngõ ra y: y = a
3
(a
1
+ a
2
) = a
3
a
1
+ a
0110
0001 0010
ch nhn dng
BCD 8421
y
a
3
a
2
a
1
a
1
a
2
a
3
y
a
1
a
2
a
3
y
hiu chnh
+ + + +
+
Bài ging K THUT S Trang 10
Có hai trng hp phi hiu chnh kt qu ca phép cng 2 s BCD 8421:
0111 0111
5
→
0101 1010
2 0010 1 0001
1
0010
u ý:
- Bù 1 ca mt s nh phân là ly o tt c các bít ca só (bit 0 thành 1, bit 1 thành 0).
- Bù 2 ca mt s nh phân bng s bù 1 cng thêm 1 vào bít LSB.
Xét các trng hp m rng sau ây:
1. Thc hin tr 2 s BCD 1 các mà s b tr nh hn s tr ?
2. M rng cho cng và tr 2 s BCD nhiu các ?
hiu chnh (6)
+ +
t qu là s BCD 8421 nh
ng
i xut hin s nh bng 1
t qu sau khi hiu chnh là 17
Bù 1 ca 5
- -
+
+
ng 1 LSB có bù 2 ca 5
i s nh
t qu cui cùng
Chng 2. i s BOOLE Trang 11
Chng 2
I S BOOLE
2.1. CÁC TIÊN VÀ NH LÝ I S BOOLE
x
, sao cho luôn tha mãn:
x +
x
= 1 và x.
x
= 0
Bài ging N T S 1 Trang 12
u B = B* = {0,1} (B* ch gm 2 phn t 0 và 1) và tha mãn 5 tiên trên thì cng lp thành
u trúc i s Boole nhng là cu trúc i s Boole nh nht.
2.1.2. Các nh lý c bn ca i s Boole
1. Vn i ngu trong i s Boole
Hai mnh (hai biu thc, hai nh lý) c gi là i ngu vi nhau nu trong mnh này
ngi ta thay phép toán cng thành phép toán nhân và ngc li, thay 0 bng 1 và ngc li, thì s
suy ra c mnh kia.
Khi hai mnh i ngu vi nhau, nu 1 trong 2 mnh c chng minh là úng thì mnh
còn li là úng. Di ây là ví d v các cp mnh i ngu vi nhau.
Ví d 2.1
: x.(y+z) = (x.y) + (x.z)
x + (y.z) = (x+y).(x+z)
Ví d 2.2
: x +
x
= 1
x.
x
= 0
2. Các nh lý
a. nh lí 1 (nh lý v phn t bù là duy nht)
∀x, y ∈ B, ta có:
x. y. z = x.y.z = zyx ++
e. nh lí 5 (nh lý dán)
∀x, y ∈ B, ta có:
x. (
x
+ y) = x.y
x + (
x
.y) = x + y
Hai m
nh này là i ngu
Hai m
nh này là i ngu