You are on page 1of 13

1

CHÆÅNG I
CAÏC HÃÛ ÂÃÚM VAÌ VIÃÛC MAÎ HOÏA THÄNG TIN TRONG MAÏY
TÊNH

1. Các hệ đếm dùng trong máy tính


1.1. Hệ mười và hệ hai
Trong cuộc sống hàng ngày chúng ta dùng hệ cơ số mười hoặc
nói gọn hơn hệ mười để biểu diễn các giá trị số. Điều này là rất tự
nhiên vì từ khi xưa một con người bình thường đã biết dùng 10 ngón
tay của mình như là “công cụ tính toán sơ đẳng. Trong hệ thống này
chúng ta dùng tổ hợp của các chữ số 0..9 để biểu diễn các giá trị số, đi
kèm theo tập hợp đó có thể dùng thêm chữ D đi mà vẫn ngầm hiểu
rằng đó là số hệ mười
Trong thế giới máy tính thì khác, để biểu diễn 1 giá trị số chúng
ta dùng hệ cơ số hai hoặc nói gọn hơn hệ hai, trong đó chỉ tồn tại hai
chữ số 0 và 1để biểu diễn các giá trị số (ứng với hai trạng thái có điện
và không có điện của các mạch điện tử cấu tạo trên máy). 0 và 1 cũng
là các giá trị có thể có của một chữ số hệ hai. Hệ hai là hệ dùng trong
các máy tính. Một số hệ hai thường được đánh dấu bằng chữ B đi kèm
ở cuối để phân biệt với các hệ khác khi ta làm việc cùng một lúc với
nhiều hệ đếm khác nhau. Một cụm 4 bit sẽ tạo thành 1 nibble, cụm 8
bit sẽ tạo thành 1 byte, cụm 16 bit thông thường sẽ trạo thành một
từ(word), cụm 32 bit sẽ tạo thành một từ kép. Chữ số đầu tiên bên trái
trong dãy các số hệ hai gọi là bít có ý nghĩa lớn nhất, còn bit cuối cùng
bên phải trong dãy gọi là bit có ý nghĩa bé nhất. Ứng với việc đếm thứ
tự 1,2,3…ở hệ 10 thì ở hệ 2 ta có 1,10,11…

Nibble

byte

word

Double
Word

Hình1.1. Các đơn vị đo độ dài của số hệ hai dẫn xuất từ bit

Vì con người chỉ quen tính toán với hệ mười, trong khi các bộ
phận tính toán của máy tính chỉ biết làm việc với hệ hai, nên để đảm
bảo sự giao tiếp thuận tiện giữa người và máy (khi đưa số liệu vào và
lúc lấy ra kết quả tính toán) thường xuyên phải có việc chuyển đổi qua
lại giữa hai hệ đếm này. Chúng ta cùng xem xét nhanh các vấn đề trên
thông qua các ví dụ đơn giản dưới đây.
Một số hệ mười viết như sau: 12345,67
2

Sẽ có giá trị số bằng tổng của các tích giữa các hệ số 1,2,3,4,5,6,7 với
các trọng số 10i như sau:
12345,67=1.104 +2.103 +3.102 +4.101 +5.100 +6.10-1 +7.10-2
Tương tự như vậy, một số hệ hai viết như sau: 10111,01
Sẽ có giá trị số bằng tổng của các tích giữa các hệ số 1,0,1,1,1,01,1 với
các trọng số 2i tương ứng lần lược như sau:
=1.24 +0.23 +1.22 +1.21 +1.20 +0.2-1 +1.2-2
Các thuật toán thường dùng để chuyển đổi giữa hai hệ trên:
. Đổi số hệ hai sang hệ mười
Muốn đổi một số từ hệ hai sang hệ mười chỉ cần tính các giá trị 2i
tương ứng với các chữ số khác không thứ i của hệ số hai rồi cộng lại
như đã nói ở trên:
Ví dụ
10111,11B =24 +22 +21 +20 +2-1 +2-2 =25,75
Ngược lại muốn chuyển một số từ hệ mười sang hệ hai ta có thể
làm theo hai cách:
. Cách một để đổi số hệ mười sang hệ hai
Quy tắc: Lấy số hệ mười cần đổi trừ đi 2x (x là giá trị lớn nhất của
số mũ chọn sao cho 2x nhỏ hơn hoặc bằng so với số hệ 10 cần đổi), ghi
lại giá trị 1 cho chữ số hệ hai ứng với 2x. Tiếp tục làm như vậy đối với
số dư do phép trừ trên tạo ra và các số 2 i bậc thấp hơn cho tới đạt tới
20 và ghi lại các gia trị (0 hoặc 1) cho chữ số hệ hai thứ i tùy theo quan
hệ giữa số dư và lũy thừa tương ứng:

1, khi số dư lớn hơn hoặc bằng 2i


0, khi số dư nhỏ hơn hoặc bằng 2i (và phép trừ không được thực
hiện)
ví dụ đổi số 34 sang hệ hai.
Các giá trị 2i cần tính dến (25 =32 là giá trị 2x sát dưới nhất so với
số 34)
25 24 23 22 21 20
Các chữ số hệ hai tính được:
1 0 0 0 1 0
Như vậy 34=100010B.

• Caïch 2 âãø âäøi säú hãû mæåìi sang hãû hai


Quy tàõc: Láúy säú cáön âäøi chia cho 2 vaì ghi nhåï pháön dæ,
tiãúp theo láúy thæång cuía pheïp chia træåïc âoï chia cho 2 vaì ghi
nhåï pháön dæ. Laìm nhæ váûy cho tåïi khi âæåüc thæång bàòng 0.
Âaío ngæåüc thæï tæû daîy caïc säú dæ seî âæåüc caïc chæî säú cuía
säú hãû hai cáön tçm.
Vê duû : Âäøi säú 34 sang hãû hai (hçnh 1.1.). Kãút quaí âæåüc
100010B.
34 2
3

0 17 2
1 8 2
0 4 2
0 2 2
0 1 2
1 0

Caïc säú dæ trong khung seî âæåüc sàõp xãúp theo chiãöu
muîi tãn
HÇnh 1.1. Mäüt caïch âäøi säú hãû mæåìi sang hãû hai..

Trong træåìng håüp säú hãû mæåìi cáön âäøi coï thãm caí pháön
leí sau dáúu pháøy thç âáöu tiãn ta phaíi âäøi riãng reî tæìng pháön
räöi sau âoï cäüng caïc kãút quaí laûi. Âäúi våïi pháön nguyãn ta coï
thãø laìm theo 2 caïch âaî noïi åí trãn. Riãng âäúi våïi pháön sau dáúu
pháøy ta âäøi theo quy tàõc trçnh baìy sau âáy.

• Quy tàõc âäøi säú tháûp phán hãû mæåìi ra hãû hai
Láúy säú cáön âäøi nhán våïi 2, têch nháûn âæåüc seî gäöm
pháön nguyãn vaì pháön leí nhë phán, láúy pháön leí nhë phán cuía
têch thu âæåüc nhán tiãúp våïi 2. Laìm nhæ váûy cho tåïi khi âæåüc
têch chàôn bàòng 1. Choün riãng caïc pháön nguyãn (pháön træåïc
dáúu pháøy) cuía caïc têch thu âæåüc vaì sàõp xãúp laûi seî âæåüc
caïc chæî säú sau dáúu pháøy cuía säú hãû hai cáön tçm.
Vê duû: Âäè säú 0.125 ra säú hãû hai.
Ta thæûc hiãûn pheïp nhán láön læåüt theo caïc bæåïc trãn:
0,125 * 2 = 0 ,250
0,250 * 2 = 0 ,500
0,500 * 2 = 1 ,000
vaì thu âæåüc kãút quaí laì 0,125 = 0,001B (pháön âæåüc âoïng
trong khung).
Kãút håüp caïc vê duû trãn laûi, nãúu phaíi âäøi säú 34,125 ra
hãû hai ta thu âæåüc kãút quaí cuäúi cuìng laì 34,125 = 100010,001 B.

1.2. Säú BCD (säú hãû mæåìi maî hoïa bàòng hãû hai)
Giæîa hãû mæåìi vaì hãû hai coìn täön taûi mäüt hãû lai: hãû
BCD cho caïc säú hãû mæåìi maî hoïa bàòng hãû hai (Binary Coded
Decimal number), ráút thêch håüp cho caïc thiãút bë do coï thãm
pháön hiãûn thë säú åí âáöu ra duìng caïc loaûi âeìn hiãûn säú khaïc
nhau. ÅÍ âáy ta duìng 4 säú hãû hai âãø maî hoïa mäüt säú hãû mæåìi
coï giaï trë nàòm trong khoaíng 0 ..9. Nhæ váûy, åí âáy ta khäng duìng
hãút caïc täø håüp coï thãø coï cuía 4 bit. Vç táöm quan troüng cuía
caïc säú BCD nãn caïc bäü vi xæí lyï thæåìng coï caïc lãûnh thao taïc
våïi chuïng.
4

Vê duû: Säú 410 nãúu biãøu diãùn theo kiãøu säú BCD thç
âæåüc 0100 0001 0000. Kãút quaí naìy cuîng gåüi yï cho ta caïch
thæïc chuyãøn âäøi giæîa hai loaûi säú.

1.3. Hãû mæåìi saïu (Hexa-decimal, hex, H)


Nãúu ta duìng hãû hai âãø biãøu diãùn caïc säú coï giaï trë låïn ta
seî gàûp âiãöu báút tiãûn laì säú hãû hai thu âæåüc quaï daìi. Vê duû
âãø biãøu diãùn säú 255 ta cáön âãún 8 bit viãút nhæ sau:
255 = 1111 1111 B
Trong thæûc tãú âãø viãút kãút quaí biãøu diãùn caïc säú cho
goün laûi ngæåìi ta tçm caïch nhoïm 4 säú hãû hai (1 nibble) thaình
mäüt säú hãû mæåìi saïu . Khaïc våïi hãû BCD væìa noïi hãû 16 duìng
hãút caïc täø håüp coï thãø cuía 4 bit âãø biãøu diãùn caïc giaï trë säú.
Âãø laìm âæåüc âiãöu naìy ngæåìi ta sæí duûng caïc chæî säú sàôn coï
cuía hãû mæåìi 0 .. 9 âãø biãøu diãùn caïc giaï trë säú æïng våïi 0 .. 9
vaì duìng thãm caïc chæî caïi A .. F âãø biãøu diãùn caïc giaï trë coìn
laûi æïng våïi 10 .. 15. âãø phán biãût mäüt säú hãû mæåìi saïu våïi
caïc säú hãû khaïc ta keìm thãm chæî H åí cuäúi. Ta cuîng dãù nháûn
tháúy ràòng säú mæåìi chè laì mäüt bäü pháûn cuía hãû mæåìi saïu.

2. Caïc pheïp toaïn säú hoüc âäúi våïi säú hãû hai
2.1. Pheïp cäüng
Pheïp cäüng caïc säú hãû hai thæûc hiãûn giäúng nhæ khi ta
laìm våïi säú hãû mæåìi. Quy tàõc pheïp cäüng säú hãû hai âæåüc chè
ra trong baíng 1.1.

Baíng 1.1. Quy tàõc pheïp cäüng Baíng


1.2. Quy tàõc pheïp træì
y=a+b
y= a-b

a b y C a b y B
0 0 0 0 0 0 0 0
0 1 1 0 0 1 1 1
1 0 1 0 1 0 1 0
1 1 1 1 1 1 0 0
C: nhåï (Carry) B:
mæåün (Borrow)

Vê duû:
Cäüng hãû mæåìi Cäüng hãû hai
11 nhåï 1111 1110
099 Säú haûng 1 0110 0011
095 Säú haûng 2 0101 1111
5

194 Täøng 1100 0010


Caïc bäü cäüng trong caïc khäúi tênh toaïn säú hoüc cuía maïy tênh seî
thæûc hiãûn caïc pheïp cäüng theo caïch âaî noïi åí trãn.

2.2. Pheïp træì vaì säú buì hai


a) Pheïp træì
Pheïp træì caïc säú hãû hai thæûc hiãûn giäúng nhæ khi ta laìm
våïi säú hãû mæåìi.
Quy tàõc pheïp træì säú hãû hai âæåüc chè ra trong baíng 1.2.
Vê duû
Træì hãû mæåìi Træì hãû hai
1 Mæåün 110 0000
109 säú bë træì 0110 1101
9 säú træì 0011 0001
060 Hiãûu 0011 1100
b) Säú buì hai
Trong khi laìm pheïo træì ta nháûn tháúy coï thãø thæûc hiãûn
pheïp træì bàòng pheïp cäüng: cäüng säú bë træì våïi säú âäúi cuía säú
træì. Âiãöu naìy cuîng âæåüc æïng duûng trong caïc khäúi tênh toaïn
säú hoüc cuía maïy tênh âãø táûn duûng caïc bäü cäüng âaî coï sàôn.
Váún âãö âàût ra âäúi våïi säú hãû hai laì ta phaíi coï caïch biãøu diãùn
säú ám mäüt caïch thêch håüp sao cho ta coï thãø æïng duûng âæåüc
tênh cháút noïi trãn. Coï ráút nhiãöu caïch maî hoïa caïc säú hãû hai âã
biãøu diãún säú ám nhæng trong thæûc tãú hay duìng nháút laì duìng
caïch maî hoïa kiãøu säú buì hai.
Baíng 1.3 chè ra caïch taûo ra caïc säú hãû hai coï dáúu vaì säú
buì hai trong sæû tæång quan våïi säú hãû hai.

Baíng 1.3. Biãøu diãùn caïc säú theo hãû hai, hãû hai coï dáúu
vaì maî buì hai.
Säú 8 bit säú hãû mæåìi säú hãû mæåìi theo
säú hãû mæåìi tênh
hãû hai tæång âæång maî hãû hai coï dáúu
theo maî buì hai
0000 0000 0 +0
+0
0000 0001 1 +1
+1
0000 0010 2 +2
+2
... ... ...
...
0111 1101 125 + 125
+ 125
6

0111 1110 126 +126


+126
0111 1111 127 +127
+127
1000 0000 128 -0
- 128
1000 0001 129 -1
- 127
1000 0010 130 -2
- 126
... ... ...
...
1111 1101 125 -125
- 3
1111 1110 126 -126
-2
1111 1111 255 -127
-1

Quan saït kyî baíng naìy chuïng ta coï thãø ruït ra caïc nháûn xeït
sau:
1. Nãúu ta duìng 8 bit âãø biãøu diãùn säú thç ta thu âæåüc 256
täø håüp coï giaï trë tæì 0 âãún 255 (tæång æïng 00 .. FF H),
tæïc laì chè biãøu diãùn âæåüc säú dæång.
2. Våïi täø håüp trãn nãúu ta muäún biãøu diãùn säú coï dáúu
theo kiãøu dáúu vaì âäü låïn (sign and magnitude) ta phaíi
máút 1 bit âãø daình cho dáúu vaì 7 bit coìn laûi âãø âënh giaï
trë. Våïi caïch laìm naìy ta coï khaí nàng biãøu diãùn caí säú
ám vaì säú dæång nàòm trong khoaíng -127 .. -0, +0 .. +127
(chuï yï 2 giaï trë 0 khaïc nhau).
3. Säú buì hai âæåüc taûo ra theo caïch gáön giäúng nhæ kiãúu
dáúu vaì âäü låïn nhæng noï duìng caí 8 bit âãø biãøu diãùn
giaï trë cuía säú âæåüc maî hoïa. Maî buì hai daìi 8 bit coï khaí
nàng biãøu diãùn caïc säú ám vaì dæång trong khoaíng
-128..0..+127. Mäüt säú dæång coï maî buì hai giäúng nhæ
hãû maî hai thäng thæåìng.
4. Mäüt säú biãøu diãùn theo hãû hai seî coï caïc giaï trë khaïc
nhau nãúu hiãøu âoï laì maî âãø biãøu diãùn säú theo kiãøu
hãû hai coï dáúu hoàûc kiãøu säú buì hai. Noïi khaïc âi, mäüt
cuûm caïc säú 0 vaì 1 seî âæåüc caím nháûn khaïc nhau khi
noï biãøu diãùn giaï trë säú theo caïc maî khaïc nhau. Cho duì
coï âæåüc biãøu diãùn bàòng säú hãû hai coï dáúu hay säú
buì hai thç caïc säú ám âãöu coï bit b7 = 1, coìn caïc säú
dæång coï bit b7 = 0.
7

Báy giåì ta noïi cuû thãø caïch tênh säú buì hai cuía mäüt säú
naìo âoï. Vãö màût toaïn hoüc thç sê buì hai cuía mäüt säú chênh laì
säú âäúi cuía noï. Nhæ váûy mäüt säú dæång seî coï säú buì hai laì
mäüt säú ám cuìng giaï trë tuyãût âäúi vaì ngæåüc laûi.
Quy tàõc: Muäún tçm säú buì hai (coìn goüi laì buì säú hoüc) cuía
mäüt säú A ta laìm theo caïc bæåïc sau:
• biãøu diãùn säú A theo maî buì hai cuía noï
• tçm säú buì mäüt (buì logic) cuía säú âoï (bàòng caïch
âaío bit)
• cäüng 1 vaìo säú buì mäüt åí trãn âãø nháûn âæåüc säú
buì hai cuía säú A.
Ghi chuï: Khi coï mäüt säú ám âæåüc biãøu diãùn theo maî buì
hai nãúu muäún tênh giaï trë tuyãût âäúi cuía noï ta cuîng aïp duûng
quy tàõc naìy (aïp duûng caïc bæåïc 2.3).
Vê duû: Tçm säú buì hai cuía 13.
13 = 0000 1101 B (maî buì hai cuía 13)
säú buì 1 cuía 13: 1111 0010 B (âaío bit cuía säú trãn)
cäüng thãm 1: 1
säú buì hai cuía 13: 1111 0011 B (tæïc laì -13)
Coï thãø láúy mäüt vê duû khaïc âãø chæïng toí kãút quaí trãn laì
âuïng vaì qua âoï cuîng tháúy âæåüc æïng duûng cuía säú buì hai
trong khi laìm pheïp træì.
Vê duû: 15 - 13 = ?
Ta coï thãø viãút laûi pheïp træì trãn thaình pheïp cäüng 15 + (-
13) vaì sæí duûng kãút quaí væìa tênh âæåüc åí trãn cho säú (-13):
15 ... 0000 1111
(-13) ... 1111 0011
täøng ... 0000 0010 (nhåï 1)
Nãúu khäng âãø yï âãún nhåï ta coï kãút quaí laì 2.
Vê duû: 12 - 13 = ?
12 ... 0000 1100
(-13) ... 1111 0011
täøng ... 1111 1111 (tæïc -1)
Âáy laì mäüt säú ám (bit b7=1) våïi giaï trë tuyãût âäúi laì
1 (tra theo baíng 1.2). Màût khaïc ta cuîng coï thãø tçm âæåüc giaï trë
tuyãût âäúi cuía kãút quaí bàòng caïch tçm säú buì hai cuía noï:
Maî buì hai cuía kãút quaí trãn ... 1111 1111
Säú buì 1 cuía kãút quaí trãn ... 0000 0000
Cäüng - âãø tçm giaï trë tuyãût âäúi ... 0000 0001

2.3 Pheïp nhán


8

Pheïp nhán caïc säú hãû hai thæûc hiãûn giäúng nhæ khi ta laìm
våïi hãû säú mæåìi. Quy tàõc pheïp nhán säú hãû hai âæåüc chè ra
trong baíng 1.4

Baíng 1.4. Quy tàõc pheïp nhán y=a.b


a b y
0 0 0
0 1 0
1 0 0
1 1 1
Trãn cå såí quy tàõc væìa nãu vaì âãø cho âån giaín ta thæûc
hiãûn vê duû mäüt pheïp nhán 2 säú hãû hai våïi âäü daìi 4 bit âãø
laìm saïng toí thuáût toaïn nhán.

1001 Säú bë nhán (9)


0110 Säú nhán (6)
0000 Thaình pháön 1 cuía
täøng têch luyî
1001 Thaình pháön 2 cuía
täøng têch luyî
1001 Thaình pháön 3 cuía
täøng têch luyî
0000 Thaình pháön 4 cuía
täøng têch luyî
0110110 Täøng têch luyî
(54)

Âäü daìi cæûc âaûi cuía kãút quaí trong træåìng håüp naìy laì 8
bit. Nãúu ta coï caïc toaïn haûng 8 (hoàûc 16) bit thç âäü daìi cæûc
âaûi cuía kãút quaí laì 16 (hoàûc 32) bit. Mäùi láön nhán 1 bit khaïc 0
cuía säú nhán våïi säú bë nhán ta thu âæåüc chênh säú bë nhán. Nãúu
dëch traïi noï mäüt säú láön tæång æïng våïi vë trê cuía bit khaïc 0 âoï
trong säú nhán, ta taûo ra 1 thaình pháön cuía täøng têch luyî. Täøng
cuía caïc thaình pháön nhæ trãn laì kãút quaí cuía pheïp nhán.
Phán têch kyî quaï trçnh trãn ta tháúy pheïp nhán coï thãø thæûc
hiãûn theo thuáût toaïn cäüng vaì dëch (trãn cå såí caïc bäü cäüng vaì
dëch) nhæ sau:
• Thaình pháön âáöu tiãn cuía täøng têch luyî thu âæåüc laì
têch cuía säú LSB trong säú nhán våïi säú bë nhán. Nãúu LSB
= 0 thç thaình pháön naìy cuîng bàòng 0, coìn nãúu LSB = 1
thç thaình pháön naìy chênh bàòng säú bë nhán.
• Mäùi thaình pháön thæï i tiãúp theo cuía täøng têch luyî seî
tênh âæåüc bàòng caïch tæång tæû, nhæng phaíi dëch traïi i
bit (coï thãø boí qua caïc thaình pháön bàòng 0).
• Täøng cuía caïc täøng thaình pháön laì têch cáön tçm.
9

Âãø minh hoaû cho thuáût toaïn trãn, ta duìng luän noï âãø ruït
goün vê duû âaî laìm træåïc âáy nhæ sau:
1001 Säú bë nhán (9)
0110 Säú nhán (6)
1001 Säú bë nhán dëch traïi 1 láön
1001 Säú bë nhán dëch traïi 2 láön
0110110 Täøng têch luyî (54)

2.4 Pheïp chia

Pheïp chia laì pheïp tênh ngæåüc cuía pheïp nhán. Tæì âoï suy ra
pheïp chia coï thãø âæåüc thæûc hiãûn bàòng caïc pheïp træì vaì
pheïp dëch liãn tiãúp cho tåïi khi khäng thãø træì âæåüc næîa (do
khäng coìn gç âãø træì hoàûc säú bë træì nhoí hån säú chia). Sau âáy
laì thuáût toaïn cuía pheïp chia thäng qua vê duû cuû thãø.

Vê duû: 35/5 = 7
Ta haîy quan saït kyî caïc bæåïc phaíi laìm khi chia bàòng tay:
100011 101
000 0111
1000
101
111
101
101
101
0
Trong caïc bæåïc tênh åí trãn liãn tuûc cáön phaíi coï caïc dæû
âoaïn vaì kiãøm tra âãø tçm ra âæåüc kãút quaí âuïng. Cäng viãûc naìy
laì ráút khoï khàn âäúi våïi caïc maûch âiãûn tæí cuía khäúi tênh toaïn
säú hoüc (väún laì caïc pháön tæí âãø thæûc hiãûn pheïp cäüng vaì
dëch trong maïy tênh). Sau âáy laì mäüt thuáût toaïn khàõc phuûc
âæåüc caïc váún âãö nãu åí trãn:

1.Âäøi säú chia ra säú buì hai cuía noï (âãø bæåïc åí sau laìm
tênh træì bàòng tênh cäüng).
2.Láúy säú bë chia træì âi säú chia.
Nãúu kãút quaí naìy coï bit dáúu bàòng 0 (coï nghéa laì pháön
naìy cuía säú bë chia chia âæåüc cho säú chia) thç bit tæång æïng cuía
thæång bàòng 1.
Nãúu kãút quaí naìy coï bit dáúu bàòng 1 (coï nghéa laì pháön
naìy cuía säú bë chia khäng chia âæåüc cho säú chia) thç bit tæång
æïng cuía thæång bàòng 0 vaì ta buäüc phaíi khäi phuûc laûi giaï trë
ban âáöu cuía säú bë chia bàòng caïch cäüng kãút quaí naìy våïi säú
chia åí maî hãû hai.
10

3.Dëch traïi kãút quaí thu âæåüc åí trãn vaì laìm laûi bæåïc 2 cho
âãún khi nháûn âæåüc kãút quaí cuäúi cuìng laì 0 (chia hãút) hoàûc
nhoí hån säú chia (chia coìn dæ).

Vê duû: 36/5 = 7, dæ 1. Thæûc hiãûn pheïp chia naìy trong hãû


hai.

Âáöu tiãn ta coï 5 = 0101B vaì säú buì hai cuía noï laì 1011B.
Caïc bæåïc tênh toaïn tiãúp cuía pheïp chia theo thuáût toaïn âaî
nãu åí trãn âæåüc liãût kã ra nhæ sau:
Toaïìn haûng Thæång Tãn toaïn
haûng, thao taïc

0 100100 Säú bë chia


1 011000 Säú chia åí maî buì hai
âãø cäüng
1 111100 0 Täøng, kãút quaí 1
(kq1)
1 111100 kq1
0 101000 Säú chia åî maî hãû hai
âãø cäüng
0 100100 Säú bë chia
1 00100 Säú bë chia dëch traïi 1
láön
1 01100 Säú chia åí maî buì hai
âãø cäüng
0 10000 1 Täøng, kãút
quaí 2 (kq2)
1 0000 kq2 dëch traïi 2
láön
1 0110 Säú chia åí maî buì
hai âãø cäüng
0 0110 1 Täøng, kãút
quaí 3 (kq3)
0 110 kq3 dëch traïi 3 láön
1 011 Säú chia åí maî buì hai
âãø cäüng

0 001 1 Täøng, kãút


quaí 4 (kq4)

Bit dáúu
Tæì âáy ta ruït ra 36/5 = 7 vaì dæ 1.
11

3. Maî ASCII - maî tiãu chuáøn cho trao âäøi thäng tin

Baíng 1.5. Baíng maî ASCII tiãu chuáøn


Hexa-
decimal
0 1 2 3 4 5 6 7
0 <NUL> <DLE> <SP> 0 @ P ` P
1
0 16 32
48 64 80 96 12
1 <SOH> <DC1> ! 1 A Q a q
1
1
1 7 33 49 65 81 97 13
2 <STX> <DC2> “ 2 B R b r
1
2 18
34 50 66 82 98 14
3 <ETX> <DC3> # 3 C S c s
1
3 19
35 51 67 83 99 15
4 <EOT> <DC4> $ 4 D T d t
1 1
4 20
36 52 68 84 00 16
5 <ENQ> <NAK> % 5 E U e u
1 1
5 21
37 53 69 85 01 17
6 <ACK> <SYN> & 6 F V f v
1 1
6 22
38 54 70 86 02 18
7 <BEL> <ETB> ‘ 7 G W g w
1 1
7 23
39 55 71 87 03 19
8 <BS> <CAN> ( 8 H X h x
1 1
8 24
40 56 72 88 04 20
9 <HT> <EM> ) 9 I Y i y
1 1
9 25
41 57 73 89 05 21
A <LF> <SUB> * : J Z j z
1 1
10 26
42 58 74 90 06 22
B <VT> <ESC> + ; K [ k {
1 1
11 27
43 59 75 91 07 23
C <FF> <FS> , < L \ l |
1 1
12 28
44 60 76 92 08 24
D <CR> <GS> - = M ] m }
1 1
13 29
45 61 77 93 09 25
E <SO> <RSI> . > N ^ n ~
1 1
12

14 30 46 62 78 94 10 26
F <SI> <US> / ? O _ o <DEL>
1
1
15 31 27
47 63 79 95 11

Trong caïc pháön træåïc ta âaî noïi âãún caïch biãøu diãùn säú
trong caïc hãû âãúm. Báy giåì ta xem xeït viãûc biãøu diãùn thäng tin
noïi chung trong maïy tênh. Táút caí caïc thäng tin trong maïy tênh
âãöu âæåüc biãøu diãùn dæåïi daûng caïc säú 0 vaì 1. Mäùi täø håüp
cuía caïc säú 0 vaì 1 âæåüc gaïn mäüt kyï tæû chæî caïi, chæï säú
hoàûc mäüt kyï tæû khaïc theo mäüt caïch thæïc nháút âënh. Trogn
thæûc tãú thäng tin âæåüc truyãön âi, âæåüc læu giæî trong caïc bäü
nhåï hoàûc âãø hiãøn thë trãn maìn hçnh âãöu åí dæåïi daûng kyï tæû
vaì tuán theo 1 loaûi maî âæåüc duìng ráút räüng raîi goüi laì maî ASCII
(American Standard Code for Information Interchange, maî chuáøn cuía
Myî duìng cho trao âäøi thäng tin). Viãûc duìng caïc kyï tæû âãø maî
hoaï thäng tin theo baíng maî ASCII (baíng 1.5) cho ta khaí nàng trao
âäøi thäng tin våïi háöu hãút caïc maïy tênh khaïc.
Trong baíng maî ASCII tiãu chuáøn, ngæåìi ta duìng 7 bit âãø maî
hoïa caïc kyî tæû thäng duûng, nhæ váûy baíóng maî naìy seî coï 128
kyï tæû æïng våïi caïc maî säú tæì 0..127. Bit thæï 8 coï thãø cho liãn
tuûc bàòng 0, 1 hoàûc coï thãø duìng âãø chæïa bit parity (xem yï
nghéa cuía parity åí chæång 3, pháön noïi vãö caïc cåì) phuûc vuû cho
viãûc phaït hiãûn läùi khi truyãön.
Bãn caûnh baíng ASCII tiãu chuáøn ngæåìi ta coìn duìng baíng
ASCII måí räüng cho caïc kyï tæû âàûc biãût (khaïc caïc kyï tæû tiãu
chuáøn) våïi maî tæì 128.. 255.
Khi tra caïc baíng naìy ta âoüc maî cuía kyï tæû theo thæï tæû
cäüt – haìng.

Vê duû: Maî ASCII cuía mäüt säú kyï tæû thæåìng duìng trong
khi láûp trçnh:
<Bel> (Bell, chuäng): 7
<BS> (Back space, xoaï luìi): 8
<HT> (Horizont tab, giaîn caïch ngang): 9
<LF> (Line feed, thãm doìng måïi): OAH
<CR> (Carriage return, vãö âáöu doìng): ODH
<SP> (Space, dáúu caïch): 2OH;
‘$’: 24H; ‘0’: 30H; ‘9’: 39H; ‘A’:41H;
‘a’: 61H...

Khi xem xeït baíng 1.5 ta coï thãø ruït ra máúy nháûn xeït så bäü
nhæ sau:
1. 2 cäüt âáöu cuía baíng maî âæåüc duìng cho caïc kyï tæû
âiãöu khiãøn.
2. Cäüt 2 daình riãng cho caïc kyï tæû ngàn caïch
13

3. Caïc kyï tæû säú nàòm åí cäüt 3. Maî cuía kyï tæû ‘0’ laì 30H.
‘9’ laì 39H. Giæîa giaï trë säú vaì maî ASCII
cuía säú âoï coï khoaíng caïch laì 30H.
4. Caïc chæî caïi hoa nàòm åí caïc cäüt 4,5, caïc chæî caïi
thæåìng åí cäüt 6,7. Khoaíng caïch giæîa chæî
thæåìng vaì chæî hoa cuìng tãn laì 20H.

4. Quan hãû giæîa maî ASCII våïi säú BCD

Trong khi laìm toaïn våïi caïc säú BCD ta thæåìng kãút håüp 2
säú BCD thaình 1 byte. Daûng säú BCD viãút theo kiãøu naìy goüi laì
daûng BCD chuáøn hay coìn âæåüc goüi laì daûng BCD goïi (packed
BCD). Khi læu træî, khi hiãûn thë hoàûc khi truyãön giæîa caïc thiãút
bë caïc giaï trë säú 0 .. 9, thæûc cháút ta laìm viãûc våïi maî ASCII cuía
caïc säú âoï, tæïc laì caïc säú 30H .. 39H. Nhæ váûy ta tháúy trong 1
byte maî ASCII biãøu diãùn caïc säú 0 ..9 coï 4 bit tháúp æïng våïi maî
BCD cuía chênh caïc säú âoï, 4 bit cao bao giåì cuîng æïng våïi maî
BCD cuía säú 3 (tæïc laì 0011B). Nãúu trong byte maî ASCII naìy ta
thay 4 bit cao bàòng OH thç ta thu âæåüc säú BCD khäng goïi. Noïi
caïch khaïc säú BCD khäng goïi laì säú daìi 1 byte, trong âoï 4 bit cao
bàòng khäng, 4 bit tháúp laì säú BCD chuáøn maî hoïa säú cáön biãøu
diãùn.
Vê duû sau minh hoüa quan hãû giæîa säú BCD goïi, BCD khäng
goïi vaì maî ASCII.
Maî ASCII cuía 5 laì 0011 0101B = 35H
Maî ASCII cuía 9 laì 0011 1001B = 39H
Maî ASCII khäng goïi cuía 5 laì 0000 0101B = 05H
Maî ASCII khäng goïi cuía 9 laì 0000 1001B = 09H
Maî ASCII goïi (chuáøn) cuía 59 laì 0101 1001B = 59H

Tæì âáy ta coï thãø ruït ra caïc bæåïc phaíi laìm âãø âäøi 2 säú åí
daûng maî ASCII sang daûng säú BCD chuáøn:
• Âäøi säú âáöu tiãn tæì maî ASCII ra säú BCD khäng goïi
• Âäøi säú thæï 2 tæì maî ASCII ra säú BCD khäng goïi
• Láúy 4 bit tháúp cuía säú âáöu gheïp våïi 4 bit tháúp cuía säú
sau taûo thaình 1 byte biãøu diãùn säú BCD goïi.
Âáy laì caïc cäng viãûc hay gàûp khi thao taïc våïi caïc säú trong
caïc hãû vi xæí lyï.

You might also like