Tải bản đầy đủ

Bài giảng Kiến trúc máy tính - Chương 7: Biểu diễn và tính toán số học trong máy tính

10

add

0001

1100

restore

0011

1000

shif

0000

add

0000


1001

set Q0=1

0001

0010

shift

1110
0001

add
0010

restore

Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

31

Biểu diễn dấu chấm động
(floating point)
Nguyên lý: Dùng dạng ký hiệu khoa học để biểu diễn số
rất lớn hay rất nhỏ.
ví dụ: 168 000 000 000 000 = 1.68 x 1014
0.000000000000168 = 1.68 x 10-14
Linh động chuyển dấu chấm thập phân đến vị trí thuận tiện
và dùng số mũ để theo dõi vị trí dấu chấm=> giúp biểu
diễn dễ dàng một số rất lớn hay rất nhỏ chỉ bằng vài ký số!
Dùng cách tương tự để biểu diễn số nhị phân, dạng:

±S x B±E
Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

32

16




Ví dụ

• Số âm sign=1. Số dương sign = 0
• Số mũ thực = Biased Exponent - Bias
• Bias = 2k-1-1= 2(8-1)-1=27-1 = 127
• Significand (mantissa): định trị, là giá trị sau dấu chấm
• Ví dụ:
0 11000100 11100000000000000000000
Dấu +
Định trị = 1/2 + 1/4 + 1/8 = 0.875
Số mũ = 69
Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

33

Chuẩn hóa
Số được viết dưới dạng chuẩn:
± 1.bbb…b × 2±E
Tại sao? – dễ tính toán, dễ so sánh (không âm)
Cơ sở nào?
Dùng bit dấu (sign bit)
Không cần lưu bit 1 bên trái dấu chấm (mặc định)
bbb…b được lưu nguyên dạng
E được lưu ở dạng mã thừa (bias)
Không cần lưu cơ số
Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

34

17


Ví dụ

1.1010001 x 210100 = 0 10010011 10100010000000000000000 = 1.6328125 x 220

-1.1010001 x 210100 = 1 10010011 10100010000000000000000 = -1.6328125 x 220
1.1010001 x 2-10100 = 0 01101011 10100010000000000000000 = 1.6328125 x 2-20
-1.1010001 x 2-10100 = 1 01101011 10100010000000000000000 = -1.6328125 x 2-20

Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

35

Dải số ứng với 32-bit word

(2-2-23) x 2128

-2-127

2-127

(2-2-23) x 2128

Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

36

18


Mật độ số
Các số không trải đều trên trục số, càng gần zero mật độ càng cao.

Cần áp dụng phương pháp làm tròn.
Cân đối và giải pháp
Tăng số mũ --> mở rộng dải, số lượng số không đổi--> độ chính
xác giảm.
Chỉ có cách duy nhất là tăng số bit (single precision (32 bit) và
double-precision (64bit))
Dùng cơ số lớn, ví dụ thay 210100 = 16101
Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

37

Chuẩn IEEE 754

Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

38

19


Tham khảo về chuẩn IEE 754
[1]http://www.eecs.berkeley.edu/~wkahan/ieee754status/IEEE754.PDF
[2] http://babbage.cs.qc.edu/courses/cs341/IEEE-754references.html

Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

39

Tính toán trên số dấu chấm động
Cộng và trừ
Kiểm tra số có bằng zero hay không
Điều chỉnh hai số cho bằng số mũ
Cộng hay trừ phần định trị
Chuẩn hóa kết quả (làm tròn nếu cần)
(123 x 100) - (456 x 10-2) = (123 x 100) + (4.56 x 100) = 127.56 x 100

Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

40

20


Lưu đồ cộng và trừ
Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

41

Tính toán trên số dấu chấm động
(tt)
Nhân và chia
Kiểm tra số có bằng zero hay không
Cộng hay trừ phần mũ
Kiểm tra tràn trên và tràn dưới
Nhân hay chia phần định trị
Chuẩn hóa
Làm tròn

Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

42

21


Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

43

Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

44

22


Ví dụ
X = 0.3 × 102 = 30
Y = 0.2 × 103 = 200
Tính
X + Y=(0.3 x 102-3 + 0.2) x 103 = 0,23 x 103
X – Y=(0.3 x 102-3 - 0.2) x 103 = - 0,17 x 103
X × Y= (0.3 x 0.2) x 102+3 = 0.006 x 105
X ÷ Y = (0.3÷ 0.2) x 10 2-3 = 1.5 x 10-1
Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

45

Chuẩn IEEE cho số học dấu chấm
động nhị phân
Vô cực
- ∞ < mỗi số hữu hạn < +∞
Các phép toán số học liên quan đến vô cực

Quiet and signaling NaNs (NaN = Not a Number)
Các số không chuẩn – để kiểm soát tràn số mũ (số rất nhỏ, ví
dụ mũ quá nhỏ)
Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

46

23


Bài tập
1.Lấy vài ví dụ nhân hai số bù 2 bất kỳ và thực hiện phép nhân theo giải thuật
Booth.
2. Lấy vài ví dụ chia hai số bù 2 bất kỳ và thực hiện phép chia theo giải thuật chia
hai số bù 2.
3. Cho định dạng 8-bit phần mũ và 23-bit phần định trị, hãy cho biết chuỗi bit biểu
diễn của:
a. -720
b. 0,645
4. Mô tả hoạt động cộng số dấu chấm động, cho phần định trị bị xén còn 4 ký số
thập phân:
a. 0.5566 x 103 + 0.7777 x 103
b. 0.3344 x 102 - 0.8877 x 10-1
Biểu diễn và tính toán số học _Nguyễn Hồng Sơn_PTITHCM

47

24



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×