CÁC KIỂU DỮ LIỆU THAO TÁC CBGD: TS Hồ Phạm Huy Ánh

22
1 Chương II CÁC KIU DLIU THAO TÁC CBGD: TS HPhm Huy Ánh

Transcript of CÁC KIỂU DỮ LIỆU THAO TÁC CBGD: TS Hồ Phạm Huy Ánh

1

Chương II

CÁC KIỂU DỮ LIỆU THAO TÁC

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

KIỂU DỮ LIỆU SỐ NGUYÊN

1. Số nguyên không dấu2. Số nguyên có dấu

2

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

3

KIỂU DỮ LIỆU SỐ NGUYÊN

1. Số nguyên không dấu

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

4

KIỂU DỮ LIỆU SỐ NGUYÊN

2. Số nguyên có dấuỞ dạng biểu diễn số âm dùng bit dấu và trị tuyệt đối, bit cótrọng số cao nhất sẽ quy định dấu cho số có trị tuyệt đối ngay sau, nếu bằng 0 số dương, 1 âm.Dạng bù 1 sẽ biểu diễn số âm bằng việc đảo các trạng thái bit của số dương tương ứng, đảo từ 1 qua 0, và ngược lại.Dạng bù 2 (sẽ được xét cụ thể ở mục dưới) sẽ biểu diễn số âm bằng dạng bù 1 của nó công thêm 1.

Trong ba cách, 2 cách đầu đơn giản về tư duy, nhưng không có lợi cho việc thực hiện phép toán hoặc mất trị trong tầm (2 trị 0, và -0, thực ra là 1 trị).

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

5

SỐ NGUYÊN BÙ 2C

BG

D: TS H

ồPhạm

Huy

Ánh

6

SỐ NGUYÊN BÙ 2C

BG

D: TS H

ồPhạm

Huy

Ánh

7

SỐ NGUYÊN BÙ 2C

BG

D: TS H

ồPhạm

Huy

Ánh

8

PHÉP TOÁN TRÊN BIT – PHÉP TOÁN SỐHỌC

1. Cộng và trừ:Các phép toán số học trên các số bù 2 hoàn toàn tương tự như trên các số thập phân mà độc giả đã biết.Phép cộng sẽ thực hiện từ phải qua trái, từng ký số, mỗi lần như vậy ta có một ký số tổng và một ký số nhớ.

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

9

PHÉP TOÁN TRÊN BIT – PHÉP TOÁN SỐHỌC

1. Cộng và trừ:

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

10

PHÉP TOÁN TRÊN BIT – PHÉP TOÁN SỐHỌC

1. Cộng và trừ:

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

11

PHÉP TOÁN TRÊN BIT – PHÉP TOÁN SỐHỌC

2. Mở rộng dấu:Số 5 (số dương) dạng bù 2 000101 (6 bit)

Thanh ghi dài 16 bit mở rộng chiều dài bit bằng cáchthêm vào các bit 0 trước 0000 0000 0000 0101Do vậy với số dương thêm bit 0 phía trước

Số 2 (số âm) dạng bù 2 11110 (5 bit)Nếu thêm số 0 trước sai kết quả. VD: 00011110 số30Do vậy với số âm thêm bit dấu 1 phía trước

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

12

PHÉP TOÁN TRÊN BIT – PHÉP TOÁN SỐHỌC

3. Tràn số:Chiếu dài bit có giới hạn, ví dụ với 5 bit, khoảng số là -16

15. Do vậy 2 phép tính sau dẫn đến kết quả sai:9 (bù 2: 01001) + 11 (bù 2: 01011) = -12 (10100)-12 (bù 2: 10100) – 6 (bù 2: 11010) = 14 (01110)Để tránh tràn số phải đổi sang kiểu dữ liệu lớn hơn (có

chiều dài chuỗi bit lớn hơn).

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

13

PHÉP TOÁN TRÊN BIT – PHÉP TOÁN LUẬN LÝ

1 trạng thái đúng.0 trạng thái sai. C

BG

D: TS H

ồPhạm

Huy

Ánh

14

PHÉP TOÁN TRÊN BIT – PHÉP TOÁN LUẬN LÝ

1. Phép toán AND:

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

15

PHÉP TOÁN TRÊN BIT – PHÉP TOÁN LUẬN LÝ

2. Phép toán OR:

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

16

PHÉP TOÁN TRÊN BIT – PHÉP TOÁN LUẬN LÝ

3. Phép toán NOT:

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

17

PHÉP TOÁN TRÊN BIT – PHÉP TOÁN LUẬN LÝ

4. Phép toán EX-OR:

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

18

KiỂU DỮ LiỆU DẤU CHẤM ĐỘNG (FLOATING POINT DATA TYPE)

Số rất nhỏ hoặc rất lớn: Khi biểu diễn số thực dấuchấm tĩnh

Biểu diễn số tốn rất nhiều bộ nhớ

Không biểu diễn được

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

19

KiỂU DỮ LiỆU DẤU CHẤM ĐỘNG (FLOATING POINT DATA TYPE)

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

20

KiỂU DỮ LiỆU DẤU CHẤM ĐỘNG (FLOATING POINT DATA TYPE)

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

21

KiỂU DỮ LiỆU DẤU CHẤM ĐỘNG (FLOATING POINT DATA TYPE)

Trường hợp đặc biệt:

Bit mũ: 00000000 số mũ là -126 (tức là 2-126)

Bit mũ: 11111111

•Phần trị bằng 0 số là dương vô cực hay âm vô cực tùyvào bit dấu

•Phần trị khác 0 không phải là số: NaN (Not a Number) không quan tâm tới dấu

CB

GD

: TS Hồ

PhạmH

uyÁ

nh

22

KiỂU DỮ LiỆU DẤU CHẤM ĐỘNG (FLOATING POINT DATA TYPE)

CB

GD

: TS Hồ

PhạmH

uyÁ

nh