Professional Documents
Culture Documents
Kien Truc May Tinh Chuong 2a
Kien Truc May Tinh Chuong 2a
Ch−¬ng 2
BiÓu diÔn d÷ liÖu
& sè häc m¸y tÝnh
3
C¸c hÖ ®Õm c¬ b¶n
4
HÖ thËp ph©n (Decimal System)
C¬ sè 10
Dïng 10 ch÷ sè: 0, 1, 2, ..., 9
Dïng n ch÷ sè thËp ph©n cã thÓ biÓu diÔn
®−îc 10n gi¸ trÞ kh¸c nhau:
• 00...0 = 0
• 99...9 = 10n – 1
5
VÝ dô
C¬ sè 2
Dïng 2 ch÷ sè: 0, 1
Ch÷ sè nhÞ ph©n gäi lµ bit (binary digit)
Bit lµ ®¬n vÞ th«ng tin nhá nhÊt
Dïng n ch÷ sè nhÞ ph©n cã thÓ biÓu diÔn ®−îc
2n gi¸ trÞ kh¸c nhau:
• 00...0 = 0
• 11...1 = 2n - 1
7
HÖ nhÞ ph©n (Binary System)
8
VÝ dô
9
ChuyÓn ®æi sè thËp ph©n → nhÞ ph©n
10
VÝ dô chuyÓn ®æi
11
HÖ thËp lôc ph©n (Hexadecimal System)
C¬ sè 16
Dïng 16 ch÷ sè: 0,1,..., 9, A, B, ..., F
Dïng ®Ó viÕt gän cho sè nhÞ ph©n: cø mét
nhãm 4 bit sÏ ®−îc thay b»ng mét ch÷ sè
Hexa
Dïng n ch÷ sè Hexa cã thÓ biÓu diÔn ®−îc
16n gi¸ trÞ kh¸c nhau:
• 00...0 = 0
• FF...F = 16n - 1
12
M· ho¸ & l−u tr÷ d÷ liÖu trong m¸y tÝnh
M· ho¸ d÷ liÖu
L−u tr÷ d÷ liÖu
13
M· ho¸ d÷ liÖu
TH Ltôc
TH V.lý Bé t¹o TH sè
tÝn hiÖu ADC
MT
TH V.lý TH Ltôc TH sè
Bé t¸i t¹o DAC
tÝn hiÖu
15
L−u tr÷ d÷ liÖu
16
VÝ dô l−u tr÷ d÷ liÖu 32 bit
12 34 56 78
18
Sè nguyªn kh«ng dÊu
19
C¸c vÝ dô
§Æc ®iÓm:
• Thùc hiÖn c¸c phÐp to¸n sè häc dÔ dµng
• ChØ cã mét sù biÓu diÔn duy nhÊt cho sè 0
24
C¸c vÝ dô
Gi¶i:
• C = 0110 1010 = + (64 + 32 + 8 + 2) = 106
• D = 1100 0011 = - 128+ 64 + 2 + 1 = - 61
26
C¸c vÝ dô
Gi¶i:
• E = 0101 1110 = 64 + 16 + 8 + 4 + 2 = 94
• F = 1101 1010 = -128 + 64 + 16 + 8 + 2 = -38
27
ChuyÓn ®æi ®é dµi
28
Biểu diễn số nguyên theo mã BCD
Ví dụ số BCD:
35 0011 0101 BCD
61 0110 0001BCD
1087 0001 0000 1000 0111BCD
9640 1001 0110 0100 0000BCD
30
Biểu diễn số nguyên theo mã BCD
32
C¸c phÐp to¸n sè häc
PhÐp céng
PhÐp trõ
PhÐp nh©n
PhÐp chia
Bµi tËp
33
PhÐp céng (addition)
34
Nguyªn t¾c
Tæng Nhí
A B
(Sum) (Carry)
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
35
Nguyªn t¾c
36
VÝ dô
VÝ dô 1:
71 = 0100 0111
+ +
25 = 0001 1001
96 0110 0000 = 64 + 32 = 96 → ®óng
VÝ dô 2:
251 = 1111 1011
+ +
16 = 0001 0000
267 1 0000 1011 = 8 + 2 + 1 = 11 → sai
37
Nguyªn t¾c
41
PhÐp trõ (subtraction)
M¹ch bï 2
Bé céng n - bit OF
42
PhÐp nh©n (Multiplication)
43
VÝ dô
44
Nguyªn t¾c thùc hiÖn phÐp nh©n
C An-1 . . . A0 Qn-1 . . . Q0
Sè nh©n
46
S¬ ®å khèi thùc hiÖn phÐp nh©n
Start
§óng
Q0 = 1?
Sai
C,A:=A+M
DÞch ph¶i C, A, Q
Dec(Bé ®Õm)
49
ThuËt to¸n Booth
Start
= 10 = 01
Q0, Q-1
= 11
A := A - M = 00 A := A + M
Sai §óng
Bé ®Õm = 0? End TÝch chøa
trong A,Q
50
VÝ dô 1: (-7) x 3 = -21
A Q (SN) Q-1 M (SBN)
0000 0011 0 1001 Gi¸ trÞ khëi t¹o n=4
138 : 12 = 11, d− 6
(138) (12)
Sè bÞ chia 10001010 1100 Sè chia
1100 1011 Th−¬ng
010101 (11)
C¸c sè d− 1100
thµnh phÇn
10010
1100
0110 Sè d−
(6) 53
ThuËt to¸n thùc hiÖn phÐp chia
Bé ®Õm := n
Start M chøa sè chia (n bit)
A,Q chøa sè bÞ chia (2n bit)
§óng Sai
M, A cïng dÊu?
A := A - M A := A + M
Q0 = 1 Q0 = 0; A := B
Dec(Bé ®Õm)
A chøa sè d−
Sai §óng Q chøa th−¬ng sè (M, (A,Q) cïng dÊu)
Bé ®Õm = 0? End Q chøa bï 2 cña th−¬ng sè
(M, (A,Q) kh¸c dÊu) 54
VÝ dô 1: 12 : 4 = 3, d− 0
A Q M = 0100 (sè chia)
0000 1100 Khëi t¹o gi¸ trÞ (sè chia vµ bÞ chia cïng dÊu)
0001 1000 DÞch tr¸i 1 bit A, Q
1101 M cïng dÊu A → A := A - M
0001 1000 A kh¸c dÊu sau khi trõ → Q0 = 0 vµ phôc håi A
0011 0000 DÞch tr¸i 1 bit A, Q
1111 M cïng dÊu A → A := A - M
0011 0000 A kh¸c dÊu sau khi trõ → Q0 = 0 vµ phôc håi A
0110 0000 DÞch tr¸i 1 bit A, Q
0010 M cïng dÊu A → A := A - M
0010 0001 A cïng dÊu sau khi trõ → Q0 = 1
0100 0010 DÞch tr¸i 1 bit A, Q
0000 M cïng dÊu A → A := A – M
0000 0011 A cïng dÊu sau khi trõ → Q0 = 1. A chøa d−, Q chøa th−¬ng
55
8. Chia số nguyên có dấu
56
VÝ dô 2: 13 : (-4) = -3, d− 1
A Q M = 1100 (sè chia)
0000 1101 Khëi t¹o gi¸ trÞ (sè chia vµ bÞ chia kh¸c dÊu)
0001 1010 DÞch tr¸i 1 bit A, Q
1101 M kh¸c dÊu A → A := A + M
0001 1010 A kh¸c dÊu sau khi céng → Q0 = 0 vµ phôc håi A
0011 0100 DÞch tr¸i 1 bit A, Q
1111 M kh¸c dÊu A → A := A + M
0011 0100 A kh¸c dÊu sau khi céng → Q0 = 0 vµ phôc håi A
0110 1000 DÞch tr¸i 1 bit A, Q
0010 M kh¸c dÊu A → A := A + M
0010 1001 A cïng dÊu sau khi céng → Q0 = 1
0101 0010 DÞch tr¸i 1 bit A, Q
0001 M kh¸c dÊu A → A := A + M
0001 0011 A cïng dÊu sau khi céng → Q0=1. A chøa d−, Q chøa bï 2 cña th−¬ng
57
VÝ dô 3: (-11) : 3 = (-3), d− (-2)
A Q M = 0011 (sè chia)
1111 0101 Khëi t¹o gi¸ trÞ (sè chia vµ bÞ chia kh¸c dÊu)
1110 1010 DÞch tr¸i 1 bit A, Q
0001 M kh¸c dÊu A → A := A + M
1110 1010 A kh¸c dÊu sau khi céng → Q0 = 0 vµ phôc håi A
1101 0100 DÞch tr¸i 1 bit A, Q
0000 M kh¸c dÊu A → A := A + M
1101 0100 A kh¸c dÊu sau khi céng → Q0 = 0 vµ phôc håi A
1010 1000 DÞch tr¸i 1 bit A, Q
1101 M kh¸c dÊu A → A := A + M
1101 1001 A cïng dÊu sau khi céng → Q0 = 1
1011 0010 DÞch tr¸i 1 bit A, Q
1110 M kh¸c dÊu A → A := A + M
1110 0011 A cïng dÊu sau khi céng → Q0=1. A chøa d−, Q chøa bï 2 cña th−¬ng
58
VÝ dô 4: (-14) : (-6) = 2, d− (-2)
A Q M = 1010 (sè chia)
1111 0010 Khëi t¹o gi¸ trÞ (sè chia vµ bÞ chia cïng dÊu)
1110 0100 DÞch tr¸i 1 bit A, Q
0100 M cïng dÊu A → A := A - M
1110 0100 A kh¸c dÊu sau khi trõ → Q0 = 0 vµ phôc håi A
1100 1000 DÞch tr¸i 1 bit A, Q
0010 M cïng dÊu A → A := A - M
1100 1000 A kh¸c dÊu sau khi trõ → Q0 = 0 vµ phôc håi A
1001 0000 DÞch tr¸i 1 bit A, Q
1111 M cïng dÊu A → A := A + M
1111 0001 A cïng dÊu sau khi céng → Q0 = 1
1110 0010 DÞch tr¸i 1 bit A, Q
0100 M cïng dÊu A → A := A - M
1110 0010 A kh¸c dÊu sau khi céng → Q0= 0. A chøa d−, Q chøa cña th−¬ng
59
BiÓu diÔn sè thùc
60
Nguyªn t¾c chung
61
Số dấu chấm động
63
C¸c phÐp to¸n sè häc
X1 = (-1)S1 * M1 * RE1
X2 = (-1)S2 * M2 * RE2
PhÐp nh©n:
X1 * X2 = (-1)S1⊕S2 * (M1*M2) * RE1 + E2
PhÐp chia:
X1 / X2 = (-1)S1⊕S2 * (M1/M2) * RE1 - E2
PhÐp céng / trõ:
X1 ± X2 = RE1*[(-1)S1*M1 ± (-1)S2 * M2*RE2 - E1]
64
ChuÈn IEEE 754/85
Cã 3 d¹ng:
• D¹ng ®¬n (single precision): 32 bit
• D¹ng kÐp (double precision): 64 bit
• D¹ng kÐp më réng (double-extended precision):
80 bit
C¶ 3 d¹ng ®Òu cã ®iÓm chung: R = 2
65
66
D¹ng ®¬n: 32 bit
31 30 23 22 0
E = 0, M = 0 → X = 0
x000 0000 0000 0000 0000 0000 0000 0000 = ±0
E = 11...1, M = 0 → X = ±∞
x111 1111 1000 0000 0000 0000 0000 0000 = ±∞
75
Các quy ước đặc biệt
X1 = M1 * RE1
X2 = M2 * RE2
Ta có
X1 * X2 = (M1* M2) * RE1+E2
X1 / X2 = (M1 / M2) * RE1-E2
X1 ± X2 = (M1*RE1-E2 ± M2) * RE2
, với E2 ≥ E1
78
Phép cộng và phép trừ
79
Thuật toán cộng/trừ số dấu phẩy động
80
Thuật toán nhân số dấu phẩy động
81
Thuật toán chia số dấu phẩy động
82
BiÓu diÔn ký tù
83
Bé m· ASCII
85
Các ký tự chuẩn
Các ký tự hiển thị chuẩn:
Các chữ cái Latin
Các chữ số thập phân
Các dấu câu: . , : ; ...
các dấu phép toán: + - * / % ...
một số ký hiệu thông dụng: &, $,@, #
dấu cách
Các mã điều khiển
Các mã điều khiển định dạng văn bản
Các mã điều khiển truyền số liệu
Các mã điều khiển phân tách thông tin
Các mã điều khiển khác
86
87
Các ký tự hiển thị chuẩn
88
Các ký tự hiển thị chuẩn (tiếp)
89
Các ký tự hiển thị chuẩn (tiếp)
90
Các mã điều khiển: có mã 0016 ÷ 1F16 và 7F16
91
Các mã điều khiển (tiếp)
92
Các mã điều khiển (tiếp)
93
Các mã điều khiển (tiếp)
94
Các ký tự mở rộng
96
KiÕn tróc m¸y tÝnh
HÕt ch−¬ng 2
99
Bµi tËp (biÓu diÔn sè nguyªn)
102
Bµi tËp (biÓu diÔn sè nguyªn)
103
Bµi tËp (c¸c phÐp to¸n víi sè nguyªn)
Bµi 1: Cho biÕt kÕt qu¶ khi thùc hiÖn trªn m¸y
tÝnh c¸c phÐp céng sau (8 bit) vµ gi¶i thÝch:
• a) 56 + 78 (kh«ng dÊu); b) 121 + 40 (kh«ng dÊu)
• c) 68 + 40 (cã dÊu) ; d) 67 + (-100) (cã dÊu)
• e) 102 + 88 (cã dÊu); f) (-80) + (-62) (cã dÊu)
Bµi 2: M« t¶ qu¸ tr×nh nh©n trªn m¸y tÝnh c¸c
sè 4 bit sau ®©y:
• a) 13 * 7; b) 6 * 14; c) 15 * 14
• d) (-5) * 3; e) 6 * (-2); f) (-7) * (-4) 104
Bµi tËp (c¸c phÐp to¸n víi sè nguyªn)
105
Bµi tËp (biÓu diÔn sè thùc)
107