- Trang Chủ
- Phần cứng
- Bài giảng Kiến trúc máy tính (Computer Architecture): Chương 2 - Nguyễn Kim Khánh
Xem mẫu
- NKK-HUST
Kiến trúc máy tính
om
.c
Chương 2
ng
co
CƠ BẢN VỀ LOGIC SỐ
an
th
o ng
du
u
cu
Nguyễn Kim Khánh
Trường Đại học Bách khoa Hà Nội
2017 Kiến trúc máy tính 42
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Nội dung học phần
Chương 1. Giới thiệu chung
om
.c
Chương 2. Cơ bản về logic số
ng
Chương 3. Hệ thống máy tính
co
Chương 4. Số học máy tính
an
Chương 5. Kiến trúc tập lệnh
th
Chương 6. Bộ xử lý
o ng
du
Chương 7. Bộ nhớ máy tính
u
Chương 8. Hệ thống vào-ra
cu
Chương 9. Các kiến trúc song song
2017 Kiến trúc máy tính 43
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Nội dung của chương 2
om
2.1. Các hệ đếm cơ bản
.c
ng
2.2. Đại số Boole
co
2.3. Các cổng logic
an
2.4. Mạch tổ hợp
th
2.5. Mạch dãy
o ng
du
u
cu
2017 Kiến trúc máy tính 44
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
2.1. Các hệ đếm cơ bản
om
n Hệ thập phân (Decimal System)
.c
à con người sử dụng
ng
Hệ nhị phân (Binary System)
co
n
an
à máy tính sử dụng
th
n Hệ mười sáu (Hexadecimal System)
o ng
du
à dùng để viết gọn cho số nhị phân
u
cu
2017 Kiến trúc máy tính 45
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
1. Hệ thập phân
om
n Cơ số 10
.c
n 10 chữ số: 0,1,2,3,4,5,6,7,8,9
ng
Dùng n chữ số thập phân có thể biểu diễn
co
n
được 10n giá trị khác nhau:
an
th
n 00...000 = 0
n 99...999
o ng
= 10n - 1
du
u
cu
2017 Kiến trúc máy tính 46
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Dạng tổng quát của số thập phân
A = an an-1 ... a1a0 , a-1 ... a-m
om
.c
Giá trị của A được hiểu như sau:
ng
co
an
A = an10 n + an−110 n−1 +... + a1101 + a010 0 + a−110 −1 +... + a−m10 −m
th
o ng n
du
A= ∑ a 10 i
i
u
cu
i=−m
2017 Kiến trúc máy tính 47
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Ví dụ số thập phân
472.38 = 4x102 + 7x101 + 2x100 + 3x10-1 + 8x10-2
om
Các chữ số của phần nguyên:
.c
n
ng
n 472 : 10 = 47 dư 2
co
n 47 : 10 = 4 dư 7
an
4 : 10 = 0 dư 4
th
n
o ng
Các chữ số của phần lẻ:
du
n
u
n 0.38 x 10 = 3.8 phần nguyên = 3
cu
n 0.8 x 10 = 8.0 phần nguyên = 8
2017 Kiến trúc máy tính 48
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
2. Hệ nhị phân
n Cơ số 2
om
n 2 chữ số nhị phân: 0 và 1
.c
n Chữ số nhị phân được gọi là bit (binary digit)
ng
bit là đơn vị thông tin nhỏ nhất
co
n
Dùng n bit có thể biểu diễn được 2n giá trị khác
an
n
th
nhau:
n 00...000 = 0
o ng
du
n 11...111 = 2n - 1
u
Các lệnh của chương trình và dữ liệu trong
cu
n
máy tính đều được mã hóa bằng số nhị phân
2017 Kiến trúc máy tính 49
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Số nhị phân Số
1-bit 2-bit 3-bit 4-bit thập phân
0 00 000 0000 0
1 01 001 0001 1
Biểu diễn
om
10 010 0010 2
số nhị phân
.c
11 011 0011 3
ng
100 0100 4
co
101 0101 5
110 0110 6
an
th
111 0111 7
o ng 1000 8
1001 9
du
1010 10
u
1011 11
cu
1100 12
1101 13
1110 14
2017 Kiến trúc máy tính 1111 15 50
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Đơn vị dữ liệu và thông tin trong máy tính
n bit – chữ số nhị phân (binary digit): là đơn vị thông
om
tin nhỏ nhất, cho phép nhận một trong hai giá trị: 0
hoặc 1.
.c
ng
n byte là một tổ hợp 8 bit: có thể biểu diễn được 256
co
giá trị (28)
an
n Qui ước các đơn vị dữ liệu:
th
n KB (Kilobyte) = 210 bytes = 1024 bytes
n MB (Megabyte)
o ng
= 210 KB = 220bytes (~106)
GB (Gigabyte) = 210 MB = 230bytes (~109)
du
n
n TB (Terabyte) = 210 GB = 240bytes (~1012)
u
cu
n PB (Petabyte) = 210 TB = 250bytes
n EB (Exabyte) = 210 PB = 260bytes
2017 Kiến trúc máy tính 51
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Qui ước mới về ký hiệu đơn vị dữ liệu
om
Theo thập phân Theo nhị phân
.c
ng
Đơn vị Viết tắt Giá trị Đơn vị Viết tắt Giá trị
co
kilobyte KB 103 kibibyte KiB 210 = 1024
an
megabyte MB 106 mebibyte MiB 220
th
gigabyte GB 109 gibibyte GiB 230
terabyte TB
o ng
1012 tebibyte TiB 240
du
petabyte PB 1015 pebibyte PiB 250
u
exabyte EB 1018 exbibyte EiB 260
cu
2017 Kiến trúc máy tính 52
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Dạng tổng quát của số nhị phân
A = an an−1 ... a1a0 , a−1 ... a−m
om
với ai=0 hoặc 1
.c
ng
Giá trị của A được tính như sau:
co
an
n n−1 1 0
th
−1 −m
A = an 2 + an−1 2 +... + a1 2 + a0 2 + a−1 2 +... + a−m 2
o ng
du
n
A= ∑a2 i
u
cu
i
i=−m
2017 Kiến trúc máy tính 53
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Ví dụ số nhị phân
1101001.1011(2) =
om
6 5 4 3 2 1 0 -1 -2 -3 -4
.c
= 26 + 25 + 23 + 20 + 2-1 + 2-3 + 2-4
ng
co
an
= 64 + 32 + 8 + 1 + 0.5 + 0.125 + 0.0625
th
ng
= 105.6875(10)
o
du
u
cu
2017 Kiến trúc máy tính 54
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Chuyển đổi số nguyên thập phân sang nhị phân
om
.c
n Phương pháp 1: chia dần cho 2 rồi lấy
ng
phần dư
co
Phương pháp 2: Phân tích thành tổng
an
n
th
của các số 2i à nhanh hơn
o ng
du
u
cu
2017 Kiến trúc máy tính 55
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Phương pháp chia dần cho 2
Ví dụ: chuyển đổi 105(10)
om
n
105 : 2 = 52 dư 1
.c
n
52 : 2 = 26 dư 0
ng
n
co
n 26 : 2 = 13 dư 0 biểu diễn
số dư
an
n 13 : 2 = 6 dư 1 theo chiều
th
mũi tên
n 6:2 = o 3
ng dư 0
n 3:2 = 1 dư 1
du
1:2 = 0 dư 1
u
n
cu
n Kết quả: 105(10) = 1101001(2)
2017 Kiến trúc máy tính 56
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Phương pháp phân tích thành tổng của các 2i
n Ví dụ 1: chuyển đổi 105(10)
om
n 105 = 64 + 32 + 8 +1 = 2 + 2 + 2 + 2
6 5 3 0
.c
27 26 25 24 23 22 21 20
ng
128 64 32 16 8 4 2 1
co
an
0 1 1 0 1 0 0 1
th
n Kết quả: o ng
105(10) = 0110 1001(2)
du
n Ví dụ 2: 17000(10) = 16384 + 512 + 64 + 32 + 8
u
cu
= 214 + 29 + 26 + 25 + 23
17000(10) = 0100 0010 0110 1000(2)
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
2017 Kiến trúc máy tính 57
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Chuyển đổi số lẻ thập phân sang nhị phân
Ví dụ 1: chuyển đổi 0.6875(10)
om
n
.c
n 0.6875 x 2 = 1.375 phần nguyên = 1
ng
biểu diễn
n 0.375 x 2 = 0.75 phần nguyên = 0 theo
co
chiều
0.75 x 2 = 1.5 phần nguyên = 1
an
n mũi tên
th
n 0.5 x 2 = 1.0 phần nguyên = 1
o ng
du
Kết quả : 0.6875(10)= 0.1011(2)
u
n
cu
2017 Kiến trúc máy tính 58
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Chuyển đổi số lẻ thập phân sang nhị phân (tiếp)
Ví dụ 2: chuyển đổi 0.81(10)
om
n
0.81 x 2 = 1.62 phần nguyên = 1
.c
n
0.62 x 2 = 1.24 phần nguyên = 1
ng
n
co
n 0.24 x 2 = 0.48 phần nguyên = 0
an
n 0.48 x 2 = 0.96 phần nguyên = 0
th
n 0.96 x 2 = o 1.92
ng phần nguyên = 1
n 0.92 x 2 = 1.84 phần nguyên = 1
du
0.84 x 2 = 1.68 phần nguyên = 1
u
n
cu
n 0.81(10) » 0.1100111(2)
2017 Kiến trúc máy tính 59
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
3. Hệ mười sáu (Hexa)
om
n Cơ số 16
.c
n 16 chữ số: 0,1,2,3,4,5,6,7,8,9, A,B,C,D,E,F
ng
Dùng để viết gọn cho số nhị phân: cứ một
co
n
nhóm 4-bit sẽ được thay bằng một chữ số
an
Hexa
th
o ng
du
u
cu
2017 Kiến trúc máy tính 60
CuuDuongThanCong.com https://fb.com/tailieudientucntt
- NKK-HUST
Quan hệ giữa số nhị phân và số Hexa
4-bit Số Hexa Thập phân
Ví dụ: 0000 0 0
om
0001 1 1
n 1011 0011(2) = B3(16)
.c
0010 2 2
0000 0000(2) = 00(16)
ng
n 0011 3 3
co
0100 4 4
0101 5 5
an
n 0010 1101 1001 1010(2) = 2D9A(16) 0110 6 6
th
n 1111 1111 1111 1111(2) = FFFF(16) 0111 7 7
o ng 1000 8 8
du
1001 9 9
1010 A 10
u
cu
1011 B 11
1100 C 12
1101 D 13
1110 E 14
2017 Kiến trúc máy tính 1111 F 15 61
CuuDuongThanCong.com https://fb.com/tailieudientucntt
nguon tai.lieu . vn