________________________________________Chương I : Các H Thng S I-1
CHƯƠNG 1: CÁC H THNG S & MÃ
U NGUYÊN LÝ CA VIC VIT S
U CÁC H THNG S
Ò H cơ s 10 (thp phân)
Ò H cơ s 2 (nh phân)
Ò H cơ s 8 (bát phân)
Ò H cơ s 16 (thâp lc phân)
U BIN ĐỔI QUA LI GIA CÁC H THNG S
Ò Đổi t h b sang h 10
Ò Đổi t h 10 sang h b
Ò Đổi t h b sang h bk & ngược li
Ò Đổi t h bk sang h bp
U CÁC PHÉP TOÁN S NH PHÂN
Ò Phép cng
Ò Phép tr
Ò Phép nhân
Ò Phép chia
U MÃ HÓA
Ò Mã BCD
Ò Mã Gray
Nhu cu v định lượng trong quan h gia con người vi nhau, nht là trong nhng
trao đổi thương mi, đã có t khi xã hi hình thành. Đã có rt nhiu c gng trong vic tìm
kiếm các vt dng, các ký hiu . . . dùng cho vic định lượng này như các que g, v sò, s
La mã . . . Hin nay s rp t ra có nhiu ưu đim khi được s dng trong định lượng, tính
toán. . . ..
Vic s dng h thng s hng ngày tr nên quá quen thuc khiến chúng ta có th đã
quên đi s hình thành và các qui tc để viết các con s.
Chương này nhc li mt cách sơ lưc nguyên lý ca vic viết s và gii thiu các h
thng s khác ngoài h thng thp phân quen thuc, phương pháp biến đổi qua li ca các s
trong các h thng khác nhau. Chúng ta s đặc bit quan tâm đến h thng nh phân là h
thng được dùng trong lãnh vc đin t-tin hc như là mt phương tin để gii quyết các vn
đề mang tính logic.
Phn cui ca chương s gii thiu các loi mã thông dng để chun b cho các
chương kế tiếp.
1.1 Nguyên lý ca vic viết s
Mt s được viết bng cách đặt k nhau các ký hiu, được chn trong mt tp hp xác
định. Mi ký hiu trong mt s được gi là s (s hng, digit).
Thí d, trong h thng thp phân (cơ s 10) tp hp này gm 10 ký hiu rt quen
thuc, đó là các con s t 0 đến 9:
S10 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
______________________________________________________________
Khi mt s gm nhiu sđược viết, giá tr ca các s mã tùy thuc v trí ca nó
trong s đó. Giá tr này được gi là trng s ca s mã.
______________________Nguyn Trung Lp__________________________
KĨ THUT S
________________________________________Chương I : Các H Thng S I-1
Thí d s 1998 trong h thp phân có giá tr xác định bi trin khai theo đa thc ca
10:
199810 = 1x103 + 9x102 +9x101 + 9x100 = 1000 + 900 + 90 + 8
Trong trin khai, s mũ ca đa thc ch v trí ca mt ký hiu trong mt s vi qui ước
v trí ca hàng đơn v là 0, các v trí liên tiếp v phía trái là 1, 2, 3, ... . Nếu có phn l, v trí
đầu tiên sau du phy là -1, các v trí liên tiếp v phía phi là -2, -3, ... .
Ta thy, s 9 đầu tiên (sau s 1) có trng s là 900 trong khi s 9 th hai ch là 90.
Có th nhn xét là vi 2 ký hiu ging nhau trong h 10, ký hiu đứng trước có trng
s gp 10 ln ký hiu đứng ngay sau nó. Điu này hoàn toàn đúng cho các h khác, thí d,
đối vi h nh phân ( cơ s 2) thì t l này là 2.
Tng quát, mt h thng s được gi là h b s gm b ký hiu trong mt tp hp:
Sb = {S0, S1, S2, . . ., Sb-1}
Mt s N được viết:
N = (anan-1an-2. . .ai . . .a0 , a-1a-2 . . .a-m)b vi ai Sb
S có giá tr:
N = an bn + an-1bn-1 + an-2bn-2 + . . .+ aibi +. . . + a0b0 + a-1 b-1 + a-2 b-2 +. . .+ a-mb-m.
=
=
n
mi
i
i
ba
aibi chính là trng s ca mt ký hiu trong Sb v trí th i.
1.2 Các h thng s
1.2.1 H cơ s 10 (thp phân, Decimal system)
H thp phân là h thng s rt quen thuc, gm 10 s mã như nói trên.
Dưới đây là vài ví d s thp phân:
N = 199810 = 1x103 + 9x102 + 9x101 + 8x100 = 1x1000 + 9x100 + 9x10 + 8x1
N = 3,1410 = 3x100 + 1x10-1 +4x10-2 = 3x1 + 1x1/10 + 4x1/100
1.2.2 H cơ s 2 (nh phân, Binary system)
H nh phân gm hai s mã trong tp hp
S2 = {0, 1}
Mi s mã trong mt s nh phân được gi là mt bit (viết tt ca binary digit).
S N trong h nh phân:
N = (anan-1an-2. . .ai . . .a0 , a-1a-2 . . .a-m)2 (vi ai S2)
Có giá tr là:
N = an 2n + an-12n-1 + . . .+ ai2i +. . . + a020 + a-1 2-1 + a-2 2-2 + . . .+ a-m2-m
an là bit có trng s ln nht, được gi là bit MSB (Most significant bit) và a-m là bit
trng s nh nht, gi là bit LSB (Least significant bit).
Thí d: N = 1010,12 = 1x23 + 0x22 + 1x21 + 0x20 + 1x2-1 = 10,510
1.2.3 H cơ s 8 (bát phân ,Octal system)
H bát phân gm tám s trong tp hp
S8 = {0,1, 2, 3, 4, 5, 6, 7}.
S N trong h bát phân:
N = (anan-1an-2. . .ai . . .a0 , a-1a-2 . . .a-m)8 (vi ai S8)
______________________________________________________________
______________________Nguyn Trung Lp__________________________
KĨ THUT S
________________________________________Chương I : Các H Thng S I-1
Có giá tr là:
N = an 8n + an-18n-1 + an-28n-2 +. . + ai8i . . .+a080 + a-1 8-1 + a-2 8-2 +. . .+ a-m8-m
Thí d: N = 1307,18 = 1x83 + 3x82 + 0x81 + 7x80 + 1x8-1 = 711,12510
1.2.4 H cơ s 16 (thp lc phân, Hexadecimal system)
H thp lc phân được dùng rt thun tin để con người giao tiếp vi máy tính, h
này gm mười sáu s trong tp hp
S16 ={0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F }
(A tương đương vi 1010 , B =1110 , . . . . . . , F=1510) .
S N trong h thp lc phân:
N = (anan-1an-2. . .ai . . .a0 , a-1a-2 . . .a-m)16 (vi ai S16)
Có giá tr là:
N = an 16n + an-116n-1 + an-216n-2 +. . + ai16i . . .+a0160+ a-1 16-1 + a-2 16-2 +. . .+ a-m16-m
Người ta thường dùng ch H (hay h) sau con s để ch s thp lc phân.
Thí d: N = 20EA,8H = 20EA,816 = 2x163 + 0x162 + 14x161 + 10x160 + 8x16-1
= 4330,510
1.3 Biến đổi qua li gia các h thng s
Khi đã có nhiu h thông s, vic xác định giá tr tương đương ca mt s trong h
này so vi h kia là cn thiết. Phn sau đây cho phép ta biến đổi qua li gia các s trong bt
c h nào sang bt c h khác trong các h đã được gii thiu.
1.3.1 Đổi mt s t h b sang h 10
Để đổi mt s t h b sang h 10 ta trin khai trc tiếp đa thc ca b
Mt s N trong h b:
N = (anan-1an-2. . .ai . . .a0 , a-1a-2 . . .a-m)b vi ai Sb
Có giá tr tương đương trong h 10 là:
N = an bn + an-1bn-1 +. . .+ aibi +. . . + a0b0+ a-1 b-1 + a-2 b-2 +. . .+ a-mb-m.
Thí d:
* Đổi s 10110,112 sang h 10
10110,112 = 1x24 + 0 + 1x22 + 1x2 + 0 + 1x2-1 + 1x2-2 = 22,7510
* Đổi s 4BE,ADH sang h 10
4BE,ADH=4x162+11x161+14x160+10x16-1+13x16-2 = 1214,67510
1.3.2 Đổi mt s t h 10 sang h b
Đây là bài toán tìm mt dãy ký hiu cho s N viết trong h b.
Tng quát, mt s N cho h 10, viết sang h b có dng:
N = (anan-1 . . .a0 , a-1a-2 . . .a-m)b = (anan-1 . . .a0)b + (0,a-1a-2 . . .a-m)b
Trong đó
(anan-1 . . .a0)b = PE(N) là phn nguyên ca N
và (0,a-1a-2 . . .a-m)b = PF(N) là phn l ca N
Phn nguyên và phn l được biến đổi theo hai cách khác nhau:
______________________________________________________________
______________________Nguyn Trung Lp__________________________
KĨ THUT S
________________________________________Chương I : Các H Thng S I-1
Phn nguyên:
Giá tr ca phn nguyên xác định nh trin khai:
PE(N) = anbn + an-1bn-1 + . . .+ a1b 1+ a0b0
Hay có th viết li
PE(N) = (anbn-1 + an-1bn-2 + . . .+ a1)b + a0
Vi cách viết này ta thy nếu chia PE(N) cho b, ta được thương sPE’(N) = (anbn-
1 + an-1bn-2 + . . .+ a1)s dưa0.
Vy s dư ca ln chia th nht này chính là s mã có trng s nh nht (a0) ca
phn nguyên.
Lp li bài toán chia PE’(N) cho b:
PE’(N) = anbn-1 + an-1bn-2 + . . .+ a1= (anbn-2 + an-1bn-3 + . . .+ a2)b+ a1
Ta được s dư th hai, chính là s mã có trng s ln hơn kế tiếp (a1) và thương s
là PE”(N)= anbn-2 + an-1bn-3 + . . .+ a2.
Tiếp tc bài toán chia thương sđược vi b, cho đến khi được s dư ca phép chia
cui cùng, đó chính là s mã có trng s ln nht (an)
Phn l:
Giá tr ca phn l xác định bi:
PF(N) = a-1 b-1 + a-2 b-2 +. . .+ a-mb-m
Hay viết li
PF(N) = b-1 (a-1 + a-2 b-1 +. . .+ a-mb-m+1 )
Nhân PF(N) vi b, ta được : bPF(N) = a-1 + (a-2 b-1 +. . .+ a-mb-m+1 ) = a-1+ PF’(N).
Vy ln nhân th nht này ta được phn nguyên ca phép nhân, chính là s
trng s ln nht ca phn l (a-1) (s a-1 này có th vn là s 0).
PF’(N) là phn l xut hin trong phép nhân.
Tiếp tc nhân PF’(N) vi b, ta tìm được a-2phn l PF”(N).
Lp li bài toán nhân phn l vi b cho đến khi kết qu có phn l bng không, ta s
tìm được dãy s (a-1a-2 . . .a-m).
Chú ý: Phn l ca s N khi đổi sang h b có th gm vô s s hng (do kết qu ca
phép nhân luôn khác 0), điu này có nghĩa là ta không tìm được mt s trong h b có giá tr
đúng bng phn l ca s thp phân, vy tùy theo yêu cu v độ chính xác khi chuyn đổi mà
người ta ly mt s s hng nht định.
Thí d:
* Đổi 25,310 sang h nh phân
Phn nguyên: 25 : 2 = 12 dư 1 a0 = 1
12 : 2 = 6 dư 0 a1 = 0
6 : 2 = 3 dư 0 a2 = 0
3 : 2 = 1 dư 1 a3 = 1
thương s cui cùng là 1 cũng chính là bit a4:
a4 = 1
Vy PE(N) = 11001
Phn l: 0,3 * 2 = 0,6 a-1 = 0
0,6 * 2 = 1,2 a -2 = 1
0,2 * 2 = 0,4 a-3 = 0
0,4 * 2 = 0,8 a-4 = 0
0,8 * 2 = 1,6 a-5 = 1 . . .
______________________________________________________________
______________________Nguyn Trung Lp__________________________
KĨ THUT S
________________________________________Chương I : Các H Thng S I-1
Nhn thy kết qu ca các bài toán nhân luôn khác không, do phn l ca ln nhân
cui cùng là 0,6, đã lp li kết qu ca ln nhân th nht, như vy bài toán không th kết thúc
vi kết qu đúng bng 0,3 ca h 10.
Gi s bài toán yêu cu ly 5 s l thì ta có th dng đây và
PF(N) = 0,01001.
Kết qu cui cùng là:
25,310 = 11001,010012
* Đổi 1376,8510 sang h thp lc phân
Phn nguyên: 1376 : 16 = 86 s dư = 0 a0 = 0
86 : 16 = 5 s dư = 6 a1 = 6 & a2 = 5
137610 = 560H
Phn l: 0,85 * 16 = 13,6 a-1 = 1310=DH
0,6 * 16 = 9,6 a -2 = 9
0,6 * 16 = 9,6 a-3 = 9
Nếu ch cn ly 3 s l: 0,8510= 0,D99H
Và kết qu cui cùng:
1376,8510 = 560,D99H
1.3.3 Đổi mt s t h b sang h bk và ngược li
T cách trin khai đa thc ca s N trong h b, ta có th nhóm thành tng k s hng t
du phy v hai phía và đặt thành tha s chung
N = anbn +. . . +a5b5 + a4b4 +a3b3 +a2b2 +a1b1 +a0b0 +a-1 b-1 +a-2 b-2 +a-3 b-3. . .+a-mb-m
Để d hiu, chúng ta ly thí d k = 3, N được viết li bng cách nhóm tng 3 s hng,
k t du phy v 2 phía
N = ...+ (a5b2 + a4b1 + a3b0)b3 + (a2b2 + a1b1 + a0b0 )b0+ (a-1 b2 + a-2 b1 + a-3b0)b-3 +...
Phn cha trong mi du ngoc luôn luôn nh hơn b3 , vy s này to nên mt s
trong h b3 và lúc đó được biu din bi ký hiu tương ng trong h này.
Tht vy, s N có dng:
N = ...+A2B2+A1B1+A0B0 + A-1B-1 +...
Trong đó:
B=b3 (B0=b0; B1=b3; B2=b6, B-1=b-3 ....)
A2= a8b2 + a7b1 + a6b0 = b3(a8b-1 + a7b-2 + a6b-3) < B=b3
A1= a5b2 + a4b1 + a3b0 = b3(a5b-1 + a4b-2 + a3b-3) < B=b3
A0= a2b2 + a1b1 + a0b0 = b3(a2b-1 + a1b-2 + a0b-3) < B=b3
Các s Ai luôn luôn nh hơn B=b3 như vy nó chính là mt phn t ca tp hp s to
nên h B=b3
Ta có kết qu biến đổi tương t cho các h s k khác.
Tóm li, để đổi mt s t h b sang h bk, t du phy đi v hai phía, ta nhóm tng k
s hng, giá tr ca mi k s hng này (tính theo h b) chính là s trong h bk .
Thí d:
* Đổi s N = 10111110101 , 011012 sang h 8 = 23
T du phy, nhóm tng 3 s hng v hai phía (nếu cn, thêm s 0 vào nhóm đầu và
cui để đủ 3 s hng mà không làm thay đổi giá tr ca s N):
N = 010 111 110 101 , 011 0102
Ghi giá tr tương ng ca các s 3 bit, ta được s N trong h 8
N = 2 7 6 5 , 3 2 8
* Đổi s N trên sang h 16 = 24
______________________________________________________________
______________________Nguyn Trung Lp__________________________
KĨ THUT S