You are on page 1of 13

1

CHNG I
CAC H M VA VIC MA HOA THNG TIN TRONG MAY
TNH
1. Cc h m dng trong my tnh
1.1. H mi v h hai
Trong cuc sng hng ngy chng ta dng h c s mi hoc
ni gn hn h mi biu din cc gi tr s. iu ny l rt t
nhin v t khi xa mt con ngi bnh thng bit dng 10 ngn
tay ca mnh nh l cng c tnh ton s ng. Trong h thng ny
chng ta dng t hp ca cc ch s 0..9 biu din cc gi tr s, i
km theo tp hp c th dng thm ch D i m vn ngm hiu
rng l s h mi
Trong th gii my tnh th khc, biu din 1 gi tr s chng
ta dng h c s hai hoc ni gn hn h hai, trong ch tn ti hai
ch s 0 v 1 biu din cc gi tr s (ng vi hai trng thi c in
v khng c in ca cc mch in t cu to trn my). 0 v 1 cng
l cc gi tr c th c ca mt ch s h hai. H hai l h dng trong
cc my tnh. Mt s h hai thng c nh du bng ch B i km
cui phn bit vi cc h khc khi ta lm vic cng mt lc vi
nhiu h m khc nhau. Mt cm 4 bit s to thnh 1 nibble, cm 8
bit s to thnh 1 byte, cm 16 bit thng thng s tro thnh mt
t(word), cm 32 bit s to thnh mt t kp. Ch s u tin bn tri
trong dy cc s h hai gi l bt c ngha ln nht, cn bit cui cng
bn phi trong dy gi l bit c ngha b nht. ng vi vic m th
t 1,2,3 h 10 th h 2 ta c 1,10,11
Nibble
byte
word
Double
Word
Hnh1.1. Cc n v o di ca s h hai dn xut t bit
V con ngi ch quen tnh ton vi h mi, trong khi cc b
phn tnh ton ca my tnh ch bit lm vic vi h hai, nn m
bo s giao tip thun tin gia ngi v my (khi a s liu vo v
lc ly ra kt qu tnh ton) thng xuyn phi c vic chuyn i qua
li gia hai h m ny. Chng ta cng xem xt nhanh cc vn trn
thng qua cc v d n gin di y.
Mt s h mi vit nh sau: 12345,67

2
S c gi tr s bng tng ca cc tch gia cc h s 1,2,3,4,5,6,7 vi
cc trng s 10i nh sau:
12345,67=1.104 +2.103 +3.102 +4.101 +5.100 +6.10-1 +7.10-2
Tng t nh vy, mt s h hai vit nh sau: 10111,01
S c gi tr s bng tng ca cc tch gia cc h s 1,0,1,1,1,01,1 vi
cc trng s 2i tng ng ln lc nh sau:
=1.24 +0.23 +1.22 +1.21 +1.20 +0.2-1 +1.2-2
Cc thut ton thng dng chuyn i gia hai h trn:
. i s h hai sang h mi
Mun i mt s t h hai sang h mi ch cn tnh cc gi tr 2 i
tng ng vi cc ch s khc khng th i ca h s hai ri cng li
nh ni trn:
V d
10111,11B =24 +22 +21 +20 +2-1 +2-2 =25,75
Ngc li mun chuyn mt s t h mi sang h hai ta c th
lm theo hai cch:
. Cch mt i s h mi sang h hai
Quy tc: Ly s h mi cn i tr i 2 x (x l gi tr ln nht ca
s m chn sao cho 2x nh hn hoc bng so vi s h 10 cn i), ghi
li gi tr 1 cho ch s h hai ng vi 2 x. Tip tc lm nh vy i vi
s d do php tr trn to ra v cc s 2 i bc thp hn cho ti t ti
20 v ghi li cc gia tr (0 hoc 1) cho ch s h hai th i ty theo quan
h gia s d v ly tha tng ng:
1, khi s d ln hn hoc bng 2i
0, khi s d nh hn hoc bng 2i (v php tr khng c thc
hin)
v d i s 34 sang h hai.
Cc gi tr 2i cn tnh dn (25 =32 l gi tr 2x st di nht so vi
s 34)
25
24
23
22
21
20
Cc ch s h hai tnh c:
1
0
0
0
1
0
Nh vy 34=100010B.

Cach 2 i s h mi sang h hai

Quy tc: Ly s cn i chia cho 2 va ghi nh phn d,


tip theo ly thng cua phep chia trc o chia cho 2 va ghi
nh phn d. Lam nh vy cho ti khi c thng bng 0.
ao ngc th t day cac s d se c cac ch s cua
s h hai cn tm.
V du : i s 34 sang h hai (hnh 1.1.). Kt qua c
100010B.
34 2

3
0

17
1

2
8
0

2
4
0

2
2
0

2
1

2
0

Cac s d trong khung se c sp xp theo chiu


mui tn
Hnh 1.1. Mt cach i s h mi sang h hai..
Trong trng hp s h mi cn i co thm ca phn
le sau du phy th u tin ta phai i ring re tng phn
ri sau o cng cac kt qua lai. i vi phn nguyn ta co
th lam theo 2 cach a noi trn. Ring i vi phn sau du
phy ta i theo quy tc trnh bay sau y.

Quy tc i s thp phn h mi ra h hai

Ly s cn i nhn vi 2, tch nhn c se gm


phn nguyn va phn le nh phn, ly phn le nh phn cua
tch thu c nhn tip vi 2. Lam nh vy cho ti khi c
tch chn bng 1. Chon ring cac phn nguyn (phn trc
du phy) cua cac tch thu c va sp xp lai se c
cac ch s sau du phy cua s h hai cn tm.
V du: s 0.125 ra s h hai.
Ta thc hin phep nhn ln lt theo cac bc trn:
0,125 * 2 =
0 ,250
0,250 * 2 =
0 ,500
0,500 * 2 =
1 ,000
va thu c kt qua la 0,125 = 0,001B (phn c ong
trong khung).
Kt hp cac v du trn lai, nu phai i s 34,125 ra
h hai ta thu c kt qua cui cung la 34,125 = 100010,001 B.
1.2. S BCD (s h mi ma hoa bng h hai)
Gia h mi va h hai con tn tai mt h lai: h
BCD cho cac s h mi ma hoa bng h hai (Binary Coded
Decimal number), rt thch hp cho cac thit b do co thm
phn hin th s u ra dung cac loai en hin s khac
nhau. y ta dung 4 s h hai ma hoa mt s h mi
co gia tr nm trong khoang 0 ..9. Nh vy, y ta khng dung
ht cac t hp co th co cua 4 bit. V tm quan trong cua
cac s BCD nn cac b vi x ly thng co cac lnh thao tac
vi chung.

4
V du: S 410 nu biu din theo kiu s BCD th
c 0100 0001 0000. Kt qua nay cung gi y cho ta cach
thc chuyn i gia hai loai s.
1.3. H mi sau (Hexa-decimal, hex, H)
Nu ta dung h hai biu din cac s co gia tr ln ta
se gp iu bt tin la s h hai thu c qua dai. V du
biu din s 255 ta cn n 8 bit vit nh sau:
255 = 1111 1111 B
Trong thc t vit kt qua biu din cac s cho
gon lai ngi ta tm cach nhom 4 s h hai (1 nibble) thanh
mt s h mi sau . Khac vi h BCD va noi h 16 dung
ht cac t hp co th cua 4 bit biu din cac gia tr s.
lam c iu nay ngi ta s dung cac ch s sn co
cua h mi 0 .. 9 biu din cac gia tr s ng vi 0 .. 9
va dung thm cac ch cai A .. F biu din cac gia tr con
lai ng vi 10 .. 15. phn bit mt s h mi sau vi
cac s h khac ta kem thm ch H cui. Ta cung d nhn
thy rng s mi ch la mt b phn cua h mi sau.
2. Cac phep toan s hoc i vi s h hai
2.1. Phep cng
Phep cng cac s h hai thc hin ging nh khi ta
lam vi s h mi. Quy tc phep cng s h hai c ch
ra trong bang 1.1.
Bang 1.1. Quy tc phep cng
1.2. Quy tc phep tr
y=a+b
y= a-b
a
b
y
C
0
0
0
0
0
1
1
0
1
0
1
0
1
1
1
1
C: nh (Carry)
mn (Borrow)
V du:
Cng h mi
11
nh
099
S hang 1
095
S hang 2

Bang

a
0
0
1
1

b
0
1
0
1

y
0
1
1
0

B
0
1
0
0
B:

Cng h hai
1111 1110
0110 0011
0101 1111

5
194
Tng
1100 0010
Cac b cng trong cac khi tnh toan s hoc cua may tnh se
thc hin cac phep cng theo cach a noi trn.
2.2. Phep tr va s bu hai
a) Phep tr
Phep tr cac s h hai thc hin ging nh khi ta lam
vi s h mi.
Quy tc phep tr s h hai c ch ra trong bang 1.2.
V du
Tr h mi
Tr h hai
1
Mn
110 0000
109
s b tr
0110 1101
9
s tr
0011 0001
060
Hiu
0011 1100
b) S bu hai
Trong khi lam pheo tr ta nhn thy co th thc hin
phep tr bng phep cng: cng s b tr vi s i cua s
tr. iu nay cung c ng dung trong cac khi tnh toan
s hoc cua may tnh tn dung cac b cng a co sn.
Vn t ra i vi s h hai la ta phai co cach biu din
s m mt cach thch hp sao cho ta co th ng dung c
tnh cht noi trn. Co rt nhiu cach ma hoa cac s h hai
biu din s m nhng trong thc t hay dung nht la dung
cach ma hoa kiu s bu hai.
Bang 1.3 ch ra cach tao ra cac s h hai co du va s
bu hai trong s tng quan vi s h hai.
Bang 1.3. Biu din cac s theo h hai, h hai co du
va ma bu hai.
S 8 bit
s h mi tnh
h hai
theo ma bu hai
0000 0000
+0
0000 0001
+1
0000 0010
+2
...
...
0111 1101
+ 125

s h mi
tng ng

s h mi theo
ma h hai co du

+0

+1

+2

...

...

125

+ 125

6
0111 1110
+126
0111 1111
+127
1000 0000
- 128
1000 0001
- 127
1000 0010
- 126
...
...
1111 1101
- 3
1111 1110
-2
1111 1111
-1

126

+126

127

+127

128

-0

129

-1

130

-2

...

...

125

-125

126

-126

255

-127

Quan sat ky bang nay chung ta co th rut ra cac nhn xet


sau:
1. Nu ta dung 8 bit biu din s th ta thu c 256
t hp co gia tr t 0 n 255 (tng ng 00 .. FF H),
tc la ch biu din c s dng.
2. Vi t hp trn nu ta mun biu din s co du
theo kiu du va ln (sign and magnitude) ta phai
mt 1 bit danh cho du va 7 bit con lai nh gia
tr. Vi cach lam nay ta co kha nng biu din ca s
m va s dng nm trong khoang -127 .. -0, +0 .. +127
(chu y 2 gia tr 0 khac nhau).
3. S bu hai c tao ra theo cach gn ging nh kiu
du va ln nhng no dung ca 8 bit biu din
gia tr cua s c ma hoa. Ma bu hai dai 8 bit co kha
nng biu din cac s m va dng trong khoang
-128..0..+127. Mt s dng co ma bu hai ging nh
h ma hai thng thng.
4. Mt s biu din theo h hai se co cac gia tr khac
nhau nu hiu o la ma biu din s theo kiu
h hai co du hoc kiu s bu hai. Noi khac i, mt
cum cac s 0 va 1 se c cam nhn khac nhau khi
no biu din gia tr s theo cac ma khac nhau. Cho du
co c biu din bng s h hai co du hay s
bu hai th cac s m u co bit b7 = 1, con cac s
dng co bit b7 = 0.

7
By gi ta noi cu th cach tnh s bu hai cua mt s
nao o. V mt toan hoc th s bu hai cua mt s chnh la
s i cua no. Nh vy mt s dng se co s bu hai la
mt s m cung gia tr tuyt i va ngc lai.
Quy tc: Mun tm s bu hai (con goi la bu s hoc) cua
mt s A ta lam theo cac bc sau:

biu din s A theo ma bu hai cua no


tm s bu mt (bu logic) cua s o (bng cach
ao bit)
cng 1 vao s bu mt trn nhn c s
bu hai cua s A.

Ghi chu: Khi co mt s m c biu din theo ma bu


hai nu mun tnh gia tr tuyt i cua no ta cung ap dung
quy tc nay (ap dung cac bc 2.3).
V du: Tm s bu hai cua 13.
13 = 0000 1101 B (ma bu hai cua 13)
s bu 1 cua 13: 1111 0010 B (ao bit cua s trn)
cng thm 1:
1
s bu hai cua 13: 1111 0011 B (tc la -13)
Co th ly mt v du khac chng to kt qua trn la
ung va qua o cung thy c ng dung cua s bu hai
trong khi lam phep tr.
V du: 15 - 13 = ?
Ta co th vit lai phep tr trn thanh phep cng 15 + (13) va s dung kt qua va tnh c trn cho s (-13):
15
...
0000 1111
(-13)
...
1111 0011
tng
...
0000 0010 (nh 1)
Nu khng y n nh ta co kt qua la 2.
V du: 12 - 13 = ?
12
...
0000 1100
(-13)
...
1111 0011
tng
...
1111 1111 (tc -1)
y la mt s m (bit b7=1) vi gia tr tuyt i la
1 (tra theo bang 1.2). Mt khac ta cung co th tm c gia tr
tuyt i cua kt qua bng cach tm s bu hai cua no:
Ma bu hai cua kt qua trn
... 1111 1111
S bu 1 cua kt qua trn
... 0000 0000
Cng - tm gia tr tuyt i
... 0000 0001
2.3 Phep nhn

8
Phep nhn cac s h hai thc hin ging nh khi ta lam
vi h s mi. Quy tc phep nhn s h hai c ch ra
trong bang 1.4
Bang 1.4.
a
0
0
1
1

Quy
b
0
1
0
1

tc phep nhn y=a.b


y
0
0
0
1

Trn c s quy tc va nu va cho n gian ta thc


hin v du mt phep nhn 2 s h hai vi dai 4 bit
lam sang to thut toan nhn.
1001
0110
0000

S b nhn (9)
S nhn (6)
Thanh phn 1 cua

tng tch luy


1001

Thanh phn 2 cua

tng tch luy


1001

Thanh phn 3 cua

tng tch luy


0000

Thanh phn 4 cua

tng tch luy


0110110

Tng tch luy

(54)
dai cc ai cua kt qua trong trng hp nay la 8
bit. Nu ta co cac toan hang 8 (hoc 16) bit th dai cc
ai cua kt qua la 16 (hoc 32) bit. Mi ln nhn 1 bit khac 0
cua s nhn vi s b nhn ta thu c chnh s b nhn. Nu
dch trai no mt s ln tng ng vi v tr cua bit khac 0 o
trong s nhn, ta tao ra 1 thanh phn cua tng tch luy. Tng
cua cac thanh phn nh trn la kt qua cua phep nhn.
Phn tch ky qua trnh trn ta thy phep nhn co th thc
hin theo thut toan cng va dch (trn c s cac b cng va
dch) nh sau:
Thanh phn u tin cua tng tch luy thu c la
tch cua s LSB trong s nhn vi s b nhn. Nu LSB
= 0 th thanh phn nay cung bng 0, con nu LSB = 1
th thanh phn nay chnh bng s b nhn.
Mi thanh phn th i tip theo cua tng tch luy se
tnh c bng cach tng t, nhng phai dch trai i
bit (co th bo qua cac thanh phn bng 0).
Tng cua cac tng thanh phn la tch cn tm.

9
minh hoa cho thut toan trn, ta dung lun no rut
gon v du a lam trc y nh sau:
1001
S b nhn (9)
0110
S nhn (6)
1001
S b nhn dch trai 1 ln
1001
S b nhn dch trai 2 ln
0110110
Tng tch luy (54)
2.4 Phep chia
Phep chia la phep tnh ngc cua phep nhn. T o suy ra
phep chia co th c thc hin bng cac phep tr va
phep dch lin tip cho ti khi khng th tr c na (do
khng con g tr hoc s b tr nho hn s chia). Sau y
la thut toan cua phep chia thng qua v du cu th.
V du: 35/5 = 7
Ta hay quan sat ky cac bc phai lam khi chia bng tay:
100011
101
000
0111
1000
101
111
101
101
101
0
Trong cac bc tnh trn lin tuc cn phai co cac d
oan va kim tra tm ra c kt qua ung. Cng vic nay
la rt kho khn i vi cac mach in t cua khi tnh toan
s hoc (vn la cac phn t thc hin phep cng va
dch trong may tnh). Sau y la mt thut toan khc phuc
c cac vn nu trn:
1.i s chia ra s bu hai cua no ( bc sau lam
tnh tr bng tnh cng).
2.Ly s b chia tr i s chia.
Nu kt qua nay co bit du bng 0 (co ngha la phn
nay cua s b chia chia c cho s chia) th bit tng ng cua
thng bng 1.
Nu kt qua nay co bit du bng 1 (co ngha la phn
nay cua s b chia khng chia c cho s chia) th bit tng
ng cua thng bng 0 va ta buc phai khi phuc lai gia tr
ban u cua s b chia bng cach cng kt qua nay vi s
chia ma h hai.

10
3.Dch trai kt qua thu c trn va lam lai bc 2 cho
n khi nhn c kt qua cui cung la 0 (chia ht) hoc
nho hn s chia (chia con d).
V du: 36/5 = 7, d 1. Thc hin phep chia nay trong h
hai.
u tin ta co 5 = 0101B va s bu hai cua no la 1011B.
Cac bc tnh toan tip cua phep chia theo thut toan a
nu trn c lit k ra nh sau:
Toan hang
Thng
Tn toan
hang, thao tac
0 100100
1 011000

S b chia
S chia ma bu hai

cng
1 111100

Tng, kt qua 1

(kq1)
1 111100
0 101000

kq1
S chia ma h hai

0 100100

S b chia

1 00100

S b chia dch trai 1

1 01100

S chia ma bu hai

cng

ln
cng
0 10000
qua 2 (kq2)

1 0000

Tng, kt
kq2 dch trai 2

ln
1 0110
hai cng
0 0110
qua 3 (kq3)

S chia ma bu
1

0 110
1 011

Tng, kt
kq3 dch trai 3 ln
S chia ma bu hai

cng
0 001
qua 4 (kq4)

Bit du
T y ta rut ra 36/5 = 7 va d 1.

Tng, kt

11

3. Ma ASCII - ma tiu chun cho trao i thng tin


Bang 1.5. Bang ma ASCII tiu chun
0
1
2
3
4
5

Hexadecimal

0
1
2
3
4
5
6
7
8
9
A
B
C
D
E

48

64

80

96

112

33

49

65

81

97

113

34

50

66

82

98

114

35

51

67

83

99

115

36

52

68

84

100

116

37

53

69

85

101

117

&

38

54

70

86

102

118

39

55

71

87

103

119

40

56

72

88

104

120

41

57

73

89

105

121

42

58

74

90

106

122

43

59

75

91

107

123

<

44

60

76

92

108

124

45

61

77

93

109

125

>

<NUL>

<DLE>

<SP>

16

32

<SOH>

<DC1>

17

<STX>

<DC2>

18

<ETX>

<DC3>

19

<EOT>

<DC4>

20

<ENQ>

<NAK>

21

<ACK>

<SYN>

22

<BEL>

<ETB>

23

<BS>

<CAN>

24

<HT>

<EM>

25

<LF>

<SUB>

10

26

<VT>

<ESC>

11

27

<FF>

<FS>

12

28

<CR>

<GS>

13

29

<SO>

<RSI>

12

14
<SI>

30
<US>

15

31

46

62

78

94

110

47

63

79

95

111

126
<DEL>
127

Trong cac phn trc ta a noi n cach biu din s


trong cac h m. By gi ta xem xet vic biu din thng tin
noi chung trong may tnh. Tt ca cac thng tin trong may tnh
u c biu din di dang cac s 0 va 1. Mi t hp
cua cac s 0 va 1 c gan mt ky t ch cai, ch s
hoc mt ky t khac theo mt cach thc nht nh. Trogn
thc t thng tin c truyn i, c lu gi trong cac b
nh hoc hin th trn man hnh u di dang ky t
va tun theo 1 loai ma c dung rt rng rai goi la ma ASCII
(American Standard Code for Information Interchange, ma chun cua
My dung cho trao i thng tin). Vic dung cac ky t ma
hoa thng tin theo bang ma ASCII (bang 1.5) cho ta kha nng trao
i thng tin vi hu ht cac may tnh khac.
Trong bang ma ASCII tiu chun, ngi ta dung 7 bit ma
hoa cac ky t thng dung, nh vy bang ma nay se co 128
ky t ng vi cac ma s t 0..127. Bit th 8 co th cho lin
tuc bng 0, 1 hoc co th dung cha bit parity (xem y
ngha cua parity chng 3, phn noi v cac c) phuc vu cho
vic phat hin li khi truyn.
Bn canh bang ASCII tiu chun ngi ta con dung bang
ASCII m rng cho cac ky t c bit (khac cac ky t tiu
chun) vi ma t 128.. 255.
Khi tra cac bang nay ta oc ma cua ky t theo th t
ct hang.
V du: Ma ASCII cua mt s ky t thng dung trong
khi lp trnh:
<Bel> (Bell, chung): 7
<BS> (Back space, xoa lui): 8
<HT> (Horizont tab, gian cach ngang): 9
<LF> (Line feed, thm dong mi): OAH
<CR> (Carriage return, v u dong): ODH
<SP> (Space, du cach): 2OH;
$: 24H;
0: 30H;
9: 39H;
A:41H;
a: 61H...
Khi xem xet bang 1.5 ta co th rut ra my nhn xet s b
nh sau:
1. 2 ct u cua bang ma c dung cho cac ky t
iu khin.
2. Ct 2 danh ring cho cac ky t ngn cach

13
3. Cac ky t s nm ct 3. Ma cua ky t 0 la 30H.
9 la 39H.
Gia gia tr s va ma ASCII
cua s o co khoang cach la 30H.
4. Cac ch cai hoa nm cac ct 4,5, cac ch cai
thng ct 6,7.
Khoang cach gia ch
thng va ch hoa cung tn la 20H.
4. Quan h gia ma ASCII vi s BCD
Trong khi lam toan vi cac s BCD ta thng kt hp 2
s BCD thanh 1 byte. Dang s BCD vit theo kiu nay goi la
dang BCD chun hay con c goi la dang BCD goi (packed
BCD). Khi lu tr, khi hin th hoc khi truyn gia cac thit
b cac gia tr s 0 .. 9, thc cht ta lam vic vi ma ASCII cua
cac s o, tc la cac s 30H .. 39H. Nh vy ta thy trong 1
byte ma ASCII biu din cac s 0 ..9 co 4 bit thp ng vi ma
BCD cua chnh cac s o, 4 bit cao bao gi cung ng vi ma
BCD cua s 3 (tc la 0011B). Nu trong byte ma ASCII nay ta
thay 4 bit cao bng OH th ta thu c s BCD khng goi. Noi
cach khac s BCD khng goi la s dai 1 byte, trong o 4 bit cao
bng khng, 4 bit thp la s BCD chun ma hoa s cn biu
din.
V du sau minh hoa quan h gia s BCD goi, BCD khng
goi va ma ASCII.
Ma
Ma
Ma
Ma
Ma

ASCII
cua
ASCII
cua
ASCII khng goi
cua
ASCII khng goi
cua
ASCII goi (chun) cua

5
9
5
9
59

la 0011 0101B = 35H


la 0011 1001B = 39H
la 0000 0101B = 05H
la 0000 1001B = 09H
la 0101 1001B = 59H

T y ta co th rut ra cac bc phai lam i 2 s


dang ma ASCII sang dang s BCD chun:
i s u tin t ma ASCII ra s BCD khng goi
i s th 2 t ma ASCII ra s BCD khng goi
Ly 4 bit thp cua s u ghep vi 4 bit thp cua s
sau tao thanh 1 byte biu din s BCD goi.
y la cac cng vic hay gp khi thao tac vi cac s trong
cac h vi x ly.

You might also like