Professional Documents
Culture Documents
01 - Number Systems - LMT - 2022 - To Student
01 - Number Systems - LMT - 2022 - To Student
Thiết kế hệ thống số
EE2130
2. Hệ số
Lê Minh Thùy– 3I
Khoa Tự động hóa
1
Chương 1: Các kiến thức cơ sở
2
Chương 1: Các kiến thức cơ sở
2.1 Giới thiệu chung 2.6 Cộng và trừ các số nhị phân
2.2 Cơ số 2.7 Biểu diễn các số âm
2.3 Hệ nhị phân 2.7.1 Dấu và giá trị tuyệt đối
2.7.2 Bù 2
2.4 Hệ octave và hexa
2.4.1 Nhị phân → octave , hexa 2.8 Nhân số nhị phân không dấu
2.4.2 Octave , hexa → nhị phân 2.9 Chia hai số nhị phân
2.5 Biến đổi các hệ số 2.10 Nhân chia số thực
2.5.1 Đổi một số qua hệ 10 2.11 Mã BCD
2.5.2 Đổi số nguyên từ hệ 10
2.12 Mã các ký tự
3
2.1 Giới thiệu chung về hệ số
• Hệ số làm việc với “0” và “1”
• Thực tế cuộc sống lại sử dụng hệ 10
• Cần hiểu cách biểu diễn số thông qua hệ nhị phân
4
2.2 Cơ số
5
2.2 Cơ số
• Tổng quát, với một số D có dạng
dp-1dp-2...d0.d-1...d-n
với cơ số r (r: nguyên, lớn hơn 1) có giá trị
Số bên trái ngoài cùng được gọi là số có trọng số lớn nhất (most significant digit)
Số bên phải ngoài cùng được gọi là số có trọng số nhỏ nhất (least significant digit)
6
2.3 Hệ nhị phân
Dấu phẩy trong hệ nhị phân được gọi là dấu phẩy nhị phân
7
2.3 Hệ nhị phân
8
2.3 Hệ nhị phân
9
2.4 Hệ octave và hexa
10
2.4 Hệ octave và hexa
11
2.4 Hệ octave và hexa
12
2.4.1 nhị phân → octave , hexa
13
2.4.2 octave , hexa → nhị phân
14
Chương 1: Các kiến thức cơ sở
2.1 Giới thiệu chung 2.6 Cộng và trừ các số nhị phân
2.2 Cơ số 2.7 Biểu diễn các số âm
2.3 Hệ nhị phân 2.7.1 Dấu và giá trị tuyệt đối
2.7.2 Bù 2
2.4 Hệ octave và hexa
2.4.1 Nhị phân → octave , hexa 2.8 Nhân số nhị phân không dấu
2.4.2 Octave , hexa → nhị phân 2.9 Chia hai số nhị phân
2.5 Biến đổi các hệ số 2.10 Nhân chia số thực
2.5.1 Đổi một số qua hệ 10 2.11 Mã BCD
2.5.2 Đổi số nguyên từ hệ 10
2.12 Mã các ký tự
15
2.5 Biến đổi các hệ số
• Với hệ đếm cơ số r, ta có
r: là cơ số
p: số chữ số trước dấu phẩy
n: số chữ số sau dấu phẩy
16
2.5.1 Đổi một số qua hệ 10
sai
17
2.5.2 Đổi số nguyên từ hệ 10
với số dư là d0
Nếu tiếp tục chia liên tiếp cho r ta sẽ được các số d1, d2, ...
18
19
Ví dụ minh họa: 2.1
20
Chương 1: Các kiến thức cơ sở
2.1 Giới thiệu chung 2.6 Cộng và trừ các số nhị phân
2.2 Cơ số 2.7 Biểu diễn các số âm
2.3 Hệ nhị phân 2.7.1 Dấu và giá trị tuyệt đối
2.7.2 Bù 2
2.4 Hệ octave và hexa
2.4.1 Nhị phân → octave , hexa 2.8 Nhân số nhị phân không dấu
2.4.2 Octave , hexa → nhị phân 2.9 Chia hai số nhị phân
2.5 Biến đổi các hệ số 2.10 Nhân chia số thực
2.5.1 Đổi một số qua hệ 10 2.11 Mã BCD
2.5.2 Đổi số nguyên từ hệ 10
2.12 Mã các ký tự
21
2.6 Cộng và trừ các số nhị phân
Phép cộng
22
2.6 Cộng và trừ các số nhị phân
Phép trừ
23
Chương 1: Các kiến thức cơ sở
2.1 Giới thiệu chung 2.6 Cộng và trừ các số nhị phân
2.2 Cơ số 2.7 Biểu diễn các số âm
2.3 Hệ nhị phân 2.7.1 Dấu và giá trị tuyệt đối
2.7.2 Bù 2
2.4 Hệ octave và hexa
2.4.1 Nhị phân → octave , hexa 2.8 Nhân số nhị phân không dấu
2.4.2 Octave , hexa → nhị phân 2.9 Chia hai số nhị phân
2.5 Biến đổi các hệ số 2.10 Nhân chia số thực
2.5.1 Đổi một số qua hệ 10 2.11 Mã BCD
2.5.2 Đổi số nguyên từ hệ 10
2.12 Mã các ký tự
24
2.7 Biểu diễn các số âm
25
2.7.1 Dấu và giá trị tuyệt đối
26
• Khi xây dựng các bộ cộng cần các thao tác
– kiểm tra dấu của hai số
– nếu cùng dấu thì cộng giá trị tuyệt đối, sau đó gán trả
lại bit dấu
– nếu hai số khác dấu, cần so sánh hai số, lấy giá trị
tuyệt đối lớn trừ đi giá trị tuyệt đối nhỏ, bit dấu là bit
của số có giá trị tuyệt đối lớn hơn.
• Cần các phép “ifs”, “add”, “sub” và “compare” →
mạch phức tạp
27
2.7.2 Bù 2
28
99 = 0110 0011
Dấu và gttd: 11100011 29
Mã bù 2: 01100011
99 = 01100011
-99 Dấu và gttd: 11100011
30
13 = 00001101
-13 Dấu và gttd: 10001101
: 00001101 (+13)
11110011
1 0000000
31
Cộng nhị phân trong mã bù 2
Phép tính luôn đúng nếu kết quả không vượt quá phạm vi biểu diễn số của hệ thống
32
Tràn số
tràn số chỉ xảy ra khi : hai toán hạng cùng dấu và dấu của kết quả
lại khác dấu với hai toán hạng
33
Trừ nhị phân
• Sử dụng mã bù 2
35
Chương 1: Các kiến thức cơ sở
2.1 Giới thiệu chung 2.6 Cộng và trừ các số nhị phân
2.2 Cơ số 2.7 Biểu diễn các số âm
2.3 Hệ nhị phân 2.7.1 Dấu và giá trị tuyệt đối
2.7.2 Bù 2
2.4 Hệ octave và hexa
2.4.1 Nhị phân → octave , hexa 2.8 Nhân số nhị phân không dấu
2.4.2 Octave , hexa → nhị phân 2.9 Chia hai số nhị phân
2.5 Biến đổi các hệ số 2.10 Nhân chia số thực
2.5.1 Đổi một số qua hệ 10 2.11 Mã BCD
2.5.2 Đổi số nguyên từ hệ 10
2.12 Mã các ký tự
36
2.8 Nhân số nhị phân không dấu
• Các luật cơ bản cho phép nhân:
37
Để thuận tiện sử
dụng tích thành
phần cộng lần
lượt với các sô
nhân đã được
dịch
Theo thói quen
dịch số bị nhân
qua trái, tuy nhiên
thực tế thuật toán
nhân thường dịch
tích thành phần
qua phải rồi cộng
với số bị nhân,
các bit dịch qua
phải là các bit có
trọng số thấp.
38
• Nhân một số n bits với một số m bits, kết quả tối
đa chứa trong (n+m) bits
• Cần m phép tính shift-and-add
• Có thể xây dựng bộ nhân bằng phần cứng sử
dụng:
– Bộ dịch
– Bộ cộng
– Bộ điều khiển logic
39
Nhân hai số nhị phân có dấu (mã bù 2)
• Nhắc lại mã bù 2:
– Các bit có trọng số như số nhị phân không dấu
– NGOẠI TRỪ bit MSB có trọng số âm
• Nhân hai số mã bù 2:
– Nếu số nhân có MSB = 0 thì thủ tục shift-and-add
được tiến hành như bình thường
– Nếu số nhân có MSB = 1 thì số bị nhân cần phải
được đảo dấu trước khi cộng với tích thành phần
40
Lấy bù 2 vì bit
MSB của số
nhân = 1
Tại mỗi bước tích thành phần và shifted multiplicant được mở rộng từ k
bit thành (k+1) bit rồi mới cộng để tránh overflow, nếu có carry out thì bỏ
qua 41
Chương 1: Các kiến thức cơ sở
2.1 Giới thiệu chung 2.6 Cộng và trừ các số nhị phân
2.2 Cơ số 2.7 Biểu diễn các số âm
2.3 Hệ nhị phân 2.7.1 Dấu và giá trị tuyệt đối
2.7.2 Bù 2
2.4 Hệ octave và hexa
2.4.1 Nhị phân → octave , hexa 2.8 Nhân số nhị phân không dấu
2.4.2 Octave , hexa → nhị phân 2.9 Chia hai số nhị phân
2.5 Biến đổi các hệ số 2.10 Nhân chia số thực
2.5.1 Đổi một số qua hệ 10 2.11 Mã BCD
2.5.2 Đổi số nguyên từ hệ 10
2.12 Mã các ký tự
42
2.9 Chia hai số nhị phân
43
Chia hai số nhị phân mã bù 2
• Tham khảo…
• Hãy trình bày quy tắc thực hiện:
a) Nhân hai số mã bù 2 với TH số nhân là số âm
(MSB=1)
b) Chia hai số nhị phân không dấu
c) Chia hai số nhị phân mã bù 2 với trường hợp số bị
chia hoặc số chia là số âm (MSB=1)
44
2.10 Nhân chia số thực
• Tham khảo
45
2.11 Mã BCD
46
47
Cộng hai số BCD
Nếu có carry out của bit 3 cần cộng thêm 0110 vào để hiệu chỉnh
48
2.12 Mã các ký tự
49
50