number systems lmt 20152 student
TRANSCRIPT
-
8/19/2019 Number Systems LMT 20152 Student
1/42
1
2. Hệ số
Lê Minh Thùy – 3I
Chương 1: Các kiến thức cơ sở
-
8/19/2019 Number Systems LMT 20152 Student
2/42
2
Tài liệu tham khảo
• Digital Design: Principles & Practices – John FWakerly – Printice Hall
• Thomas L. Floyd, Digital Fundamentals,
Prentice-Hall, 7th – 1997
http://www.amazon.com/exec/obidos/search-handle-url?%5Fencoding=UTF8&search-type=ss&index=books&field-author=Thomas%20L.%20Floydhttp://www.amazon.com/exec/obidos/search-handle-url?%5Fencoding=UTF8&search-type=ss&index=books&field-author=Thomas%20L.%20Floyd
-
8/19/2019 Number Systems LMT 20152 Student
3/42
Mục lục
2.1 Giới thiệu chung
2.2 Cơ số
2.3 Hệ nhị phân
2.4 Hệ octave và hexa2.4.1 Nhị phân octave , hexa
2.4.2 Octave , hexa nhị phân
2.5 Biến đổi các hệ số
2.5.1 Đổi một số qua hệ 102.5.2 Đổi số nguyên từ hệ 10
3
2.6 Cộng và trừ các số nhị phân
2.7 Biểu diễn các số âm2.7.1 Dấu và giá trị tuyệt đối
2.7.2 Bù 2
2.8 Nhân số nhị phân không dấu
2.9 Chia hai số nhị phân
2.10 Nhân chia số thực
2.11 Mã BCD2.12 Mã các ký tự
-
8/19/2019 Number Systems LMT 20152 Student
4/42
4
2.1 Giới thiệu
• 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
-
8/19/2019 Number Systems LMT 20152 Student
5/42
5
2.2 Cơ số
• Ví dụ hệ đếm thập phân 1234 = 1 x 1000 + 2 x 100 + 3 x 10 + 4 x 1
Trong dãy số mỗi chữ số của dãy số được đánh trọngsố tương ứng là lũy thừa của 10
135.68 = 1 x 100 + 2 x 10 + 5 x 1 + 6 x 0.1 + 8 x 0.01
Bằng việc sử dụng dấu phẩy cho phép sử dụng cáctrọng số là lũy thừa âm hoặc dương của 10
Tổng quát: một số D có dạng d1 d0 d-1 d-2
biểu diễn D = d1 x 101 + d1 x 100 + d-1 x 10-1 + d-2 x 10-2
10 được gọi là cơ số với các chữ số {0, 1, 2, 3, 4, 5, 6,7, 8, 9}
-
8/19/2019 Number Systems LMT 20152 Student
6/42
6
• 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)
-
8/19/2019 Number Systems LMT 20152 Student
7/42
7
2.3 Hệ nhị phân
• Trong các hệ thống số, thường sử dụng chỉ haisố 0 và 1 để biểu diễn hệ nhị phân, các sốđược gọi là số nhị phân
Dấu phẩy trong hệ nhị phân được gọi là dấu phẩy nhị phân
-
8/19/2019 Number Systems LMT 20152 Student
8/42
8
• Các số trong hệ nhị phân được gọi là bit – Số bên trái ngoài cùng trong hệ nhị phân được gọi là
bit có trọng số lớn nhất (MSB: most significant bit)
– Số bên phải ngoài cùng trong hệ nhị phân được gọi làbit có trọng số nhỏ nhất (LSB: least significant bit)
-
8/19/2019 Number Systems LMT 20152 Student
9/42
9
-
8/19/2019 Number Systems LMT 20152 Student
10/42
10
2.4 Hệ octave và hexa
• Hệ thập phân quan trọng vì được sử dụng trongcuộc sống hàng ngày
• Hệ nhị phân quan trọng vì sử dụng trong các hệ
thống số • Tuy nhiên để thuận tiện cho việc viết văn bản,
hệ octave và hệ hexa thường được sử dụng đểbiểu diễn các số trong hệ nhị phân: – octave sử dụng cơ số 8
– hexa sử dụng cơ số 16
-
8/19/2019 Number Systems LMT 20152 Student
11/42
11
-
8/19/2019 Number Systems LMT 20152 Student
12/42
12
2.4.1 nhị phân octave , hexa
-
8/19/2019 Number Systems LMT 20152 Student
13/42
13
2.4.2 octave , hexa nhị phân
-
8/19/2019 Number Systems LMT 20152 Student
14/42
14
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
-
8/19/2019 Number Systems LMT 20152 Student
15/42
15
2.5.1 Đổi một số qua hệ 10
Tổng quát chúng ta có:
sai
-
8/19/2019 Number Systems LMT 20152 Student
16/42
16
2.5.2 Đổi số nguyên từ hệ 10
Nếu chia cho r ta được:
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, ...
-
8/19/2019 Number Systems LMT 20152 Student
17/42
17
-
8/19/2019 Number Systems LMT 20152 Student
18/42
Ví dụ: 2.1
• Trình bày một ví dụ đơn giản về ứng dụng củabộ đếm số trong thực tế
18
Hình 2-1: Ứng dụng của bộ đếm nhị phân-đếm bóng
-
8/19/2019 Number Systems LMT 20152 Student
19/42
19
2.6 Cộng và trừ các số nhị phân
-
8/19/2019 Number Systems LMT 20152 Student
20/42
20
-
8/19/2019 Number Systems LMT 20152 Student
21/42
21
2.7 Biểu diễn các số âm
• Dấu và giá trị tuyệt đối
• Bù 2
-
8/19/2019 Number Systems LMT 20152 Student
22/42
22
2.7.1 Dấu và giá trị tuyệt đối
• Sử dụng bit MSB là bit dấu: – “1” là âm
– “0” là dương
-
8/19/2019 Number Systems LMT 20152 Student
23/42
23
• 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à bitcủ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
-
8/19/2019 Number Systems LMT 20152 Student
24/42
24
2.7.2 Bù 2
• Với số B = bn-1...b0 trong mã bù 2: – MSB có trọng số là -(2n-1) thay vì là (2n-1)
– Biểu diễn số trong khoảng -(2n-1) đến (2n-1-1)
-
8/19/2019 Number Systems LMT 20152 Student
25/42
25
-
8/19/2019 Number Systems LMT 20152 Student
26/42
26
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
-
8/19/2019 Number Systems LMT 20152 Student
27/42
27
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
Ví dụ: với hệ số 4-bit
-
8/19/2019 Number Systems LMT 20152 Student
28/42
28
Trừ nhị phân
• Sử dụng mã bù 2
lấy đảo bit của số trừ và cộng thêm 1
-
8/19/2019 Number Systems LMT 20152 Student
29/42
29
10 + -3 = 7:
-103 + -69 = -172:
-
8/19/2019 Number Systems LMT 20152 Student
30/42
30
2.8 Nhân số nhị phân không dấu
• Số nhị phân chỉ bao gồm số 0 và 1 do đó có thểsử dụng phép dịch số nhân
• Các luật cơ bản cho phép nhân:
-
8/19/2019 Number Systems LMT 20152 Student
31/42
31
Để thuận tiện sửdụng tích thànhphần cộng lầnlượt với các sônhân đã đượcdịch
Theo thói quen
dịch số bị nhânqua trái, tuy nhiên
thực tế thuật toánnhân thường dịch
tích thành phầnqua phải rồi cộngvới số bị nhân,các bit dịch quaphải là các bit cótrọng số thấp.
-
8/19/2019 Number Systems LMT 20152 Student
32/42
32
• 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
-
8/19/2019 Number Systems LMT 20152 Student
33/42
33
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
-
8/19/2019 Number Systems LMT 20152 Student
34/42
34
Lấy bù 2 vì bitMSB 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ừ kbit thành (k+1) bit rồi mới cộng để tránh overflow, nếu có carry out thì bỏ
qua
-
8/19/2019 Number Systems LMT 20152 Student
35/42
35
2.9 Chia hai số nhị phân
• Sử dụng thuật toán chia shift-and-subtract
-
8/19/2019 Number Systems LMT 20152 Student
36/42
36
Chia hai số nhị phân mã bù 2
• Tham khảo…
-
8/19/2019 Number Systems LMT 20152 Student
37/42
37
2.10 Nhân chia số thực
• Tham khảo
-
8/19/2019 Number Systems LMT 20152 Student
38/42
38
2.11 Mã BCD
• BCD: Binary Coded Decimal
• Sử dụng tổ hợp 4 bits để mô tả số trong hệ thậpphân
• Có nhiều kiểu mã: – BCD 8421 (hay BCD): trọng số của 4 bit là 8, 4, 2, 1
– BCD 2421: trọng số của 4 bit là 2, 4, 2, 1
-
8/19/2019 Number Systems LMT 20152 Student
39/42
39
-
8/19/2019 Number Systems LMT 20152 Student
40/42
40
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
-
8/19/2019 Number Systems LMT 20152 Student
41/42
41
2.12 Mã các ký tự
• Có thể sử dụng tổ hợp các bit để mã hóa “data”
• Mã các ký tự thường được sử dụng trong cácchương trình máy tính
• Thường sử dụng mã ASCII (American StandardCode for Information Interchange) 0XXXYYYY:
– Tổ hợp mã các ký tự thông thường
– Tổ hợp một số ký tự điều khiển
-
8/19/2019 Number Systems LMT 20152 Student
42/42
42