Mô tả:
Môn Học:
KỸ THUẬT VI XỬ LÝ
Giảng Viên : ThS Nguyễn Thanh Tuấn
Chương I : CÁC HỆ THỐNG SỐ VÀ MÃ HÓA
13/06/2017
KTVXL _ N.T.Tuấn
1
NỘI DUNG CHƯƠNG 1
• 1.1 Các hệ thống số
– Hệ thập phân
– Hệ nhị phân
– Hệ thập lục phân
• 1.2 Các hệ thống mã hoá
– ASCII
– BCD
13/06/2017
KTVXL _ N.T.Tuấn
2
1.1 CÁC HỆ THỐNG SỐ
• Hệ đếm thập phân (Decimal): Còn gọi là hệ đếm
cơ số mười.
• Dùng mười ký hiệu hiệu:
– 1,2,3,4,5,6,7,8,9,0
– Ví dụ: Ba nghìn Chín trăm Bảy mươi Tám
– 3978 = 3x103 + 9x102 + 7x101 + 8x100
= 3000 + 900 + 70 + 8
13/06/2017
KTVXL _ N.T.Tuấn
3
CÁC HỆ THỐNG SỐ
Hệ đếm nhị phân (Binary)
Còn gọi là Hệ đếm cơ số hai
Sử dụng hai ký hiệu (bit): 0 và 1
(Các hệ thống điện tử số chỉ sử dụng hai mức điện áp?)
Kích cỡ cỡ, LSB, MSB của số nhị phân
Số nhị phân không dấu (Unsigned)
Số nhị phân có dấu (Số bù hai hai)
13/06/2017
KTVXL _ N.T.Tuấn
4
SỐNHỊPHÂN
• Kích cỡ của một số nhị phân là số bit của nó.
• MSB (Most Significant Bit): Bit sát trái.
• LSB (Least Significant Bit): Bit sát phải.
• Ví dụ:1010101010101010
MSB
LSB
là một số nhị phân 16-bit
13/06/2017
KTVXL _ N.T.Tuấn
5
SỐ NHỊ PHÂN KHÔNG DẤU
Chỉ biểu diễn được các giá trị không âm (>= 0)
Với n-bit có thể biểu diễn các giá trị từ 0 đến 2n – 1
Ví dụ: Giá trị V của số nhị phân không dấu 1101 được
tính:
(1101)2 = 1x23 + 1x22 + 0x21 + 1x20
=8 + 4 + 0 +1
= 13
13/06/2017
KTVXL _ N.T.Tuấn
6
SỐ NHỊ PHÂN KHÔNG DẤU
• Tổng quát: Nếu số nhị phân N n-bit:
N = b( n-1) b( n-2) …. b1b0
thì giá trị V của nó là:
V = b(n -1)x2(n-1)+b(n-2) x2(n-2)+…+b1x21 + b0x20
• Các số nhị phân không dấu 4-bit biểu diễn được
các giá trị từ ? đến ?
13/06/2017
KTVXL _ N.T.Tuấn
7
16 GIÁ TRỊ TỪ 0 ĐẾN 15
Nhị phân không dấu
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
13/06/2017
Giá trị thập phân
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
KTVXL _ N.T.Tuấn
8
SỐ NHỊ PHÂN KHÔNG DẤU
• Dải giá tri của các số không dấu 8-bit là [0,255]
(unsigned char trong C)
•
Dải giá tri của các số không dấu 16-bit là [0,65535]
(unsigned int trong C)
13/06/2017
KTVXL _ N.T.Tuấn
9
CHUYỂ
N ĐỔ
I SỐTHẬ
P PHÂN SANG NHỊPHÂN
• Chuyển 25 sang nhị phân không dấu. Dùng
phương pháp chia 2 liên tiếp
Chia 2
•
•
•
•
•
•
Thương số
25/2
=
„12/2
=
„6/2
=
„3/2
=
„1/2
=
Kết quả là: 11001
13/06/2017
12
6
3
1
0
KTVXL _ N.T.Tuấn
Dư số
1
0
0
1
1
LSB
MSB
10
SỐ THẬP LỤC PHÂN
Quen gọi là số Hexa (Hexadecimal)
Còn gọi là hệ đếm cơ số mười sáu. Sử dụng 16 ký hiệu để
biểu diễn: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
„Mỗi ký hiệu tương ứng với 4-bit
„Mục đích: Biểu diễn số nhị phân ở dạng ngắn gọn.
11110000
=
F0
10101010
=
AA
01010101
=
55
Nhị phân
13/06/2017
Thập lục phân
KTVXL _ N.T.Tuấn
11
MỖI KÝ HIỆU TƯƠNG ỨNG VỚI 4-BIT
Hexa
0
1
2
3
4
5
6
7
13/06/2017
Binary
0000
0001
0010
0011
0100
0101
0110
0111
Hexa
8
9
A
B
C
D
E
F
KTVXL _ N.T.Tuấn
Binary
1000
1001
1010
1011
1100
1101
1110
1111
12
CHUYỂN ĐỔI HEXA & NHỊ PHÂN
Ví dụ:Chuyển số hexa 2F8 và ABBA sang nhị phân
Thay thế mỗi ký hiệu hexa bằng 4-bit tương ứng:
2
F
8
0010
1111
1000
A
B
B
A
1010
1011
1011
1010
„ Kết quả:
2F8h
= 001011111000b
ABBAh
= 1010101110111010b
13/06/2017
KTVXL _ N.T.Tuấn
13
CHUYỂN ĐỔI HEXA & NHỊ PHÂN
Ví dụ: Chuyển số nhị phân 1100101011111110 sang hexa
Trước hết theo hướng từ LSB về MSB chia số nhị phân đó
thành các nhóm 4-bit.
Sau đó thay thế mỗi nhóm 4-bit bằng ký hiệu hexa tương
ứng với nó.
1100
1010
1111
1110
C
A
F
E
„Kết quả: 1100101011111110b =
13/06/2017
KTVXL _ N.T.Tuấn
CAFEh
14
SỐ NHỊ PHÂN CÓ DẤU
• Biểu diễn được cả các giá trị âm.
• Còn gọi là Số bù hai
•
Với n-bit có thể biểu diễn các giá trị từ –2(n-1) đến
2(n-1) – 1
• „Ví dụ: Giá trị V của số nhị phân có dấu 1101 được
tính:
• V = – 1x23 + 1x22 + 0x21 + 1x20
=–8
+ 4 + 0 +1
=–3
13/06/2017
KTVXL _ N.T.Tuấn
15
SỐ NHỊ PHÂN CÓ DẤU
• Tổng quát: Nếu số nhị phân N n-bit:
N = b( n-1) b( n-2) …. b1 b0
• thì giá trị V của nó là:
V = –b(n -1)x 2(n-1)+b(n-2) x2(n-2)+ …+ b1x21+b0x20
* Các số nhị phân có dấu 4-bit biểu diễn được các giá
trị từ ? đến ?
13/06/2017
KTVXL _ N.T.Tuấn
16
16 GIÁ TRỊ TỪ - 8 ĐẾN 7
13/06/2017
KTVXL _ N.T.Tuấn
17
SỐ NHỊ PHÂN CÓ DẤU
• Dải giá tri của các số có dấu 8-bit là:
• [-128,+127] (char trong C)
• Dải giá tri của các số có dấu 16-bit là:
• [-32768,+32767] (int trong C)
13/06/2017
KTVXL _ N.T.Tuấn
18
TÌM ĐỐI SỐ (LẤY BÙ 2)
• Tổng của một số với đối số của nó bằng 0.
• Ví dụ: Đối số của số nhị phân có dấu 10011101?
10011101
Số có dấu (-99)
01100010
Lấy bù 1
+
„
Cộng 1
1
01100011
13/06/2017
Kết quả
(+99)
KTVXL _ N.T.Tuấn
19
CHUYỂN SỐ THẬP PHÂN SANG NHỊ PHÂN
CÓ DẤU
• Vơí số dương: Giống như chuyển thập phân sang
nhị phân không dấu rồi thêm bit 0 vào sát bên trái
– Ví dụ: Chuyển 25 sang nhị phân có dấu:
– Kết quả: 011011
•
Với số âm: Chuyển đối số sang nhị phân có dấu rồi
lấy bù 2
13/06/2017
KTVXL _ N.T.Tuấn
20
- Xem thêm -