Tải bản đầy đủ (.ppt) (35 trang)

HỆ THỐNG số đếm, số NHỊ PHÂN (kỹ THUẬT số SLIDE) (chữ biến dạng do slide dùng font VNI times, tải về xem bình thường)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (242.57 KB, 35 trang )

KỸ THUẬT SỐ


Nội Dung Chương Trình
Chương 1: Hệ Thống Số Đếm
Chương 2: Đại Số Boole
Chương 3: Hệ Tổ Hợp
Chương 4: Hệ Tuần Tự
Chương 5: Các Thiết Bị Logic Lập Trình Được (PLD)
Chương 6: Ngôn Ngữ Mô Tả Phần Cứng (VHDL)


Chương 1: HỆ THỐNG SỐ ĐẾM –
SỐ NHỊ PHÂN
I. Các hệ thống số đếm:
1. Các khái niệm:
- Cơ số (r radix):
là số lượng ký tự chữ số (ký
số - digit)
để biểu diễn trong hệ
- Trọngsử
sốdụng
(weight):
thống số đếm
đại lượng biểu diễn cho vị trí
của 1 con số trong chuỗi số.
Trọng số = Cơ
Vị trí
số
- Giá trị (value):
tính bằng tổng theo trọng số


Giá trị =  (Ký số x
3
Trọng số)


a. Số thập phân (Decimal):
= 10

Cơ số r

4

0

7

.

6

2

5

102
4x102
400

101
0x101

0

100
7x100
7

.
.
.

10-1
6x10-1
0.6

10-2
2x10-2
0.02

10-3
5x10-3
0.005

400 + 0 + 7 + 0.6 + 0.02 + 0.005 = 407.625
b. Số nhị phân (Binary):
2

Cơ số r =

1


0

1

.

0

1

1

22
1x22
4

21
0x21
0

20
1x20
1

.
.
.

2-1
0x2-1

0

2-2
1x2-2
0.25

2-3
1x2-3
0.125

4 + 0 + 1 + 0 + 0.25 + 0.125 = 5.375

4


c. Số thập lục phân (Hexadecimal):
số r = 16
Hexadeci
mal

Decim Binary
al

0
1
2
3
4
5
6

7

0
1
2
3
4
5
6
7

Hexadeci
mal

0000
0001
0010
0011
0100
0101
0110
0111



Decim Binary
al

8
9

A
B
C
D
E
F

8
9
10
11
12
13
14
15

1000
1001
1010
1011
1100
1101
1110
1111

5

A

0


.

4

D

1

162
5x162
1280

161
10x161
160

160
0x160
0

.
.
.

16-1
4x16-1
0.25

16-2

13x16-2
0.0508

16-3
1x16-3
0.0002

5
1280 + 160 + 0 + 0.25 + 0.0508 + 0.0002 = 1440.301


2. Chuyển đổi cơ số:
a. Từ thập phân sang nhị phân

8 . 625
8
4
2
1

:
:
:
:

2
2
2
2


=
=
=
=

4
2
1
0






0 (LSB)
0
0
1
1 0 0 .0 1 0 1
.
B

0.625 x 2 = 1.25 phần nguyên
(MSB)
0.25 x 2 = 0.5
phần nguyên
0.5
x 2 = 1.0
phần nguyên


1
0
1

6


b. Từ thập phân sang thập lục phân:

1480.4296
875

1480 : 16 = 92 dö
92 : 16 = 5 dö
5 : 16 = 0 dö

8 (LSD)
12
5
5 C 8. . 6 E
H

0.4296875 x 16 = 6.875 phần nguyên
6 (MSD)
0.875
x 16 = 14.0
phần nguyên
14


7


c. Từ nhị phân sang thập lục phân:

0 0 1 1 1 0 1 1 0 1 0 1 1 1 0 1 . 001
10101
B
.
6
3
B
5
A
H
D .
d. Từ thập lục phân sang nhị phân:

2

C
9
.
E
8
H
0 01011001001.11101
000 B
8



II. Số nhị phân (Binary):
1.Các tính chất của số nhị phân
- Số nhị phân n bit có 2n giá trị từ 0
đến 2n - 1
- Số nhị phân có giá trị 2n-1:
1……
… 1 (n bit 1)
- Số nhị phân

giá
trị lẻ

giá
trị
2n: là
1 số
0…

1; bit 0)
… LSB
... 0 =(n
ngược lại giá trị
chẵn là số có LSB = 0
- Các bội số của bit:
1 B (Byte) = 8 bit
1 KB
= 210 B
=
1024

1 MB B
= 210 KB =
220
B
1 GB

=

210 MB

9


2. Các phép toán số học trên số nhị phân:

a. Phép cộng:
0
0
1
1

+ 0
+ 1
+ 0
+ 1
nhớ

=
=
=

=
1

0
1
1
0

1

1 1

1

0 1 1
11 0
1 1 1 10 0

b. Phép trừ:
0
0
1
1

- 0 =
- 1 =
mượn 1
- 0 =
- 1 =


0
1
1
0

-

1

- 1 1 1

1 0 1
01 1
1 0 0 11 1

10


1 0 1
1 01 0
1
1 0 1
0 0 01
0 0 00
1 0 10
1 1 010 0 1
1

c. Phép
nhân:


d. Phép
chia:

1

0 0 1 0 0 0 11 0 1
1
1 0 1
1 1 0 1
1 11 0
1 1
0 1
11
0 1
11 0 1
1 01

11


3. Mã nhị phân:

Từ mã:
là các tổ hợp nhị phân được sử dụng
trong loại mã nhị phân
a. Mã nhị phân cho số thập phân (BCD –
Binary Coded Decimal)
Số
BCD

BCD
BCD
Mã 1 trong
thập
(8 4 2 (2 4 2 quá 3
10
phâ
1)
1)
0011
n
000 000 0100 0000000
0
1
2
3
4
5
6
7
8

0
00
1
00
0
00
1
01

0

0
1
1
0

0
00
1
00
0
00
1
01
0

0
1
1
0

0
0
0
1
1
1
1
1


1
1
1
0
0
0
0
1

0
1
1
0
0
1
1
0

1
0
1
0
1
0
1
0

0
0

0
0

001
0000
010
0000
100
0000
000
0000
000

00
00
01
1 120


b. Mã
là Gray:
mã nhị phân mà 2 giá trị liên tiếp
nhau
có tổ hợp bit biểu diễn chỉ khác nhau
bit
Giá Binary 1Gray
trị
0
1
2

3
4

0
0
0
0
1

0
0
1
1
0

Đổi từ Binary sang
Gray

Gray
:

1 0 1 1
1 0 1 1
0
1 1 1 0 1

0
1
0
1

0

0
0
0
0
1

0
0
1
1
1

0
1
1
0
0

Đổi từ Gray sang
Binary
Gray
:

1 0 0 0
1 1 0 0
1
1 0 0 0 1 13



c. Mã LED 7
đoạn:

0
1
2
3
4
5
6
7
8
9

a

b

c

d

e

f

g

1 1 1 1 1 1

0
0 1 1 0 0 0
f
b
g
0
1 1 0 1 1 0
e
c
1
1 1 1 1 0 0
d
1
0 1 1 0 0 1
1
Maõ 1 trong n:
1 0 1 1 0 1
là mã nhị phân n bit1có mỗi từ mã
chỉ có 1 bit là 1 (hoặc
1 0)
0 và
1 1n-1
1 bit
1
còn lại là 0 (hoặc 1) 1
1 0 0
1 1 1 0 0 10 1
0
0
0

1
0 1 0
1 0 1
1 1 1 1 1 1
Mã 1 trong
hoặ
0 0 1
1 1 0
1
4:
c
1 1 1 11 1
0 1
0 0 0
1 14
1
a

d.

Giá
trị


d. Mã ký tự
ASCII:
(Hà
ng)

(Cột) b6 b5 b4


00
0

00
1

01
0

01
1

10
0

10
1

11
0

111

b 3 b 2b
b
1 0

He
x


0

1

2

3

4

5

6

7

000
0
000
1
001
0
001
1
010
0
010
1
011

0
011

0
1
2
3
4
5
6
7
8
9
A
B
C
D
E

NUL
SO
H
STX
ETX
EOT
EN
Q
ACK
BEL
BS

HT
LF
VT
FF

DLE
DC1
DC2
DC3
DC4
NA
K
SYN
ETB
CAN
EM
SUB
ESC
FS
GS

SP
!

#
$
%
&

(

)
*
+
,
.

0
1
2
3
4
5
6
7
8
9
:
;
<
=
>

@
A
B
C
D
E
F
G

H
I
J
K
L
M
N

P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^

`
a
b
c
d
e

f
g
h
i
j
k
l
m
n

p
q
r
s
t
u
v
w
x
y
z
{
|
}
~

15


III. Số nhị phân có dấu :

1. Biểu diễn số có dấu:
a. Số có dấu theo biên độ
(Signed_Magnitude):
- Bit MSB là bit dấu: 0 là số dương
và 1 là số âm,
các bit còn lại biểu diễn giá
+ lớn
trị độ

13 :
13 :

01101
11101

- Phạm vi biểu diễn:

- (2n-1 – 1)
– 1)

÷

+ (2n-1
16


b. Số bù_1 (1’s Complement):
- Số bù_1 của 1 số nhị phân N có
chiều dài n bit


Bù_1 (N) = 2n – 1 – N

Buø_1 (1 0 =

24 - 1 - 1

0 1)

0
= 0111 1 1 - 1
001
= 0110
- Có thể lấy Bù_1 của 1 số nhị
phân bằng cách lấy đảo từng bit
của nó (0 thành 1 và 1 thành 0)
- Biểu diễn số có dấu bù_1:
* Số có giá trị dương:
bit dấu = 0, các bit còn lại
* Số diễn
có giá
âm:
biểu
độtrị
lớn
lấy bù_1 của số dương
có cùng độ lớn
- Phạm vi biểu diễn

- (2


n-1

– 1) ÷ + (2

n-1

– 1)

17


c. -Số
Complement):
Sốbù_2
bù_2(2’s
của
1 số nhị phân N có chiều
dài n bit cũng có n bit

Bù_2 (N) = 2n – N = Bù_1 (N) +
1
Bù_2 (1 0 =
0 1)

hoặc

Bù_2

(1 0 0 1)


24

- 1

0
= 0110 0 0 0 - 1
0
=0 1
01
11
=

Buø_1 (1 0 0

1)
= +1
0
= +1

011
01

11
18


- Biểu diễn số có dấu bù_2:
* Số có giá trị dương:
bit dấu = 0, các bit còn lại
biểu

độtrị
lớn
* Số diễn
có giá
âm:
lấy bù_2 của số dương
có cùng độ lớn
- Phạm vi biểu diễn số nhị phân có
dấu n bit

- (2n-1 )

÷

Giá trị
dương
000 = 0
001 = + 1
010 = + 2
011 = + 3

+ (2n-1 - 1)

Giá trị âm
100
101
110
111

=

=
=
=

-

4
3
2
1
19


- Để tìm được giá trị của số âm:
ta lấy bù_2 của nó; sẽ nhận được
số dương có cùng biên độ
- giá
Số âm 1 1 0 0 0 1 có
trị : ………
15
Buø_2 (1 1 0 0 0 1) = 0 0 1 1 1 1

: + 15

- Mở rộng chiều dài bit số có dấu:
số dương thêm các bit 0 và số âm
thêm các bit 1 vào trước
-3
: 101 = 11101
- Lấy bù_2 hai lần một số thì bằng

chính số đó
- Giá trị -1 được biểu diễn là 1 ….
11 (n bit 1)
- Giá trị -2n được biểu diễn là 1 0
0 .... 0 0 (n bit 0)
20
- 32 = - 25 : 1 0 0 0 0 0


2. Các phép toán cộng trừ số
có- dấu:
Thực hiện giống như số không
dấu.
- Thực hiện trên toán hạng có cùng
chiều dài bit,
và kết
quả
- Kết quả đúng nếu nằm trong
phạm
vi
cũng
có cùng
sốdấu.
bit
biểu diễn
số có
(nếu kết quả sai thì cần
:
1
0 1 dài bit)

:
111
mở rộng
chiều

+- 6 0
001
+3 :
-3 1 110
:
+ 4 : 10 1 0
+
0
: 0101
+5
-7
1 0 0(Kq
1
sai)
:

+- 2 0
101
-5 :
-7 1 100
0: 0 1 1
0
00010
1 0 1 0 0: + 9(Kq
21

đúng)
1

Tràn (overflow) xảy ra khi số nhớ Cin và Cout tại vị trí dấu là khác nhau.


:
--6 0
-2 :
-4 0
:
0

101
111
110

-7 : 100
1
: 0101
+5
+4
0 1 0(Kq
0
sai)
:

2
-5
+7

:
+

:
0
:
1
1

1100
10010
1 1 0 1 0: 12
0

001
101
011

(Kq
đúng)

22


Trừ với số
bù_2:

A – B = A + Bù_2
(B)


* Trừ với số có dấu

101
-6 :
:
110
-3 0
1
-3 :

bù_
2:

+

1010
0011
110

1

23


Một số khái niệm tổng quát về số bù:
1. Bù cơ số trừ 1
Cho trước 1 số N gồm n ký số trong hệ cơ số r, bù cơ số trừ 1 của N
được định nghĩa là rn – 1 – N.
Số N và bù cơ số trừ 1 của N phải có cùng ký số.
Ví dụ:

Xét số 123D
- N = 123, n = 3, r = 10.
- Bù 9 (bù cơ số trừ 1) của 123D là:

rn

-1

-N

103

-1

- 123

= 999 – 123 = 876D


-Tương tự, bù 1 của 1100B là:

= 1111B – 1100B

24 – 1 – 1100B
15
-

1
1


1
1

1
0

1
0

0

0

1

1


×