1. Trang chủ
  2. » Công Nghệ Thông Tin

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

120 17 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 120
Dung lượng 1,73 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Kiến trúc máy tính (Computer Architecture) - Chương 3: Biểu diễn số học trong máy tính cung cấp cho học viên những kiến thức về mã hóa và lưu trữ dữ liệu trong máy tính, các hệ đếm liên quan đến máy tính, biểu diễn số nguyên, biểu diễn số dấu phẩy động, biểu diễn ký tự,... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!

Trang 1

Chương 3

Biểu diễn số học trong

máy tính

Trang 2

Nội dung

 Mã hóa và lưu trữ dữ liệu trong máy tính

 Các hệ đếm liên quan đến máy tính

 Biểu diễn số nguyên

 Biểu diễn số dấu phẩy động

 Biểu diễn ký tự

Trang 3

3.1 Mã hoá và lưu trữ dữ liệu trong máy tính

1 Nguyên tắc chung về mã hoá dữ liệu:

 Mọi thông tin đưa vào máy tính đều được mã hoá

thành dữ liệu nhị phân

 Độ dài từ dữ liệu (word)

 Độ dài từ dữ liệu là số bit được sử dụng để mã hoá

loại dữ liệu tương ứng

 Thường là bội của 8 bit

Trang 4

1 Nguyên tắc chung về mã hoá dữ liệu (tiếp)

 Mã hóa theo các chuẩn quy ước

 Dữ liệu số:

 Số nguyên: mã hóa theo một số chuẩn

 Số thực: mã hóa bằng số dấu phẩy động

 Dữ liệu ký tự:

 Mã hóa theo bộ mã ký tự

 Ví dụ: bộ mã ASCII (American Stadards Code for

Information) và bộ mã Unicode

Trang 5

2 Thứ tự lưu trữ các byte trong bộ nhớ chính

 Bộ nhớ chính thường được tổ chức theo byte:

 Độ dài từ dữ liệu có thể chiếm từ một đến nhiều byte

 Phải biết thứ tự lưu trữ các byte trong bộ nhớ chính đối với các dữ liệu nhiều byte

 Có 2 cách lưu trữ:

 Lưu trữ đầu nhỏ (Little-endian): Byte có ý nghĩa thấp được lưu trữ ở ngăn nhớ có địa chỉ nhỏ hơn, byte có ý nghĩa cao được lưu trữ ở ngăn nhớ có địa chỉ lớn hơn

 Lưu trữ đầu to (Big-endian): Byte có ý nghĩa cao được lưu trữ ở ngăn nhớ có địa chỉ nhỏ hơn, byte có ý nghĩa thấp được lưu trữ ở ngăn nhớ có địa chỉ lớn hơn.

Trang 6

Ví dụ lưu trữ dữ liệu 32-bit

Trang 7

3.2 Các hệ đếm liên quan đến máy tính

 Hệ thập phân

 Hệ nhị phân

 Hệ thập lục phân

Trang 8

1 Biểu diễn số tổng quát

 Nguyên tắc chung của biểu diễn số:

 Dùng một số hữu hạn các ký hiệu

 Số ký hiệu được dùng gọi là cơ số của hệ, ký hiệu

là r

 Ghép với nhau theo qui ước về vị trí

Trọng số của hệ là r i, với i là số nguyên dương

hoặc âm

Trang 9

1 Biểu diễn số tổng quát (tiếp)

 Biểu diễn số A trong hệ đếm cơ số r:

Trang 13

472,38 = 4.102 + 7.101 + 2.100 + 3.10-1 + 8.10-2

Trang 14

3 Hệ nhị phân (Binary)

Cơ số r = 2

2 chữ số: 0, 1

 Chữ số nhị phân gọi là bit

 Bit là đơn vị thông tin nhỏ nhất

Dùng n bit có thể biểu diễn được 2 n giá trị khác

nhau:

 00 000 = 0

 11 111 = 2n – 1

Ví dụ: Dùng 2 bit  4 giá trị khác nhau: 00, 01, 10, 11

Dùng 8 bit biểu diễn được bao nhiêu giá trị khác nhau?

Trang 16

101, 112 = (1.22 + 0.21 + 1.20 + 1.2-1 + 1.2-2)10 = 5,7510

Trang 17

Nhận xét

− Quen dùng, dễ nhận biết

− Cách biểu diễn gọn

− Khả năng biểu diễn của hệ lớn

− Mất ít thời gian đọc và viết

− Không quen dùng, khó nhận biết

− Cách biểu diễn cồng kềnh

− Khả năng biểu diễn của hệ nhỏ

− Tốn nhiều thời gian đọc và viết

− Thể hiện bằng thiết bị kỹ thuật

khó khăn và phức tạp −rất dễThể hiện bằng thiết bị kỹ thuật

Trang 19

4 Hệ thập lục phân (tiếp)

 Biểu diễn số nhị phân trong hệ Hexa:

 Cứ một nhóm 4 bit sẽ được thay thế bằng 1 chữ số Hexa

Ví dụ chuyển đổi số nhị phân  số Hexa

Trang 20

5 Chuyển đổi giữa các hệ đếm

a Chuyển đổi từ hệ cơ số bất kỳ sang hệ cơ số 10

b Chuyển đổi từ hệ cơ số 10 sang các hệ khác

c Chuyển đổi giữa hệ nhị phân và hệ Hexa

Trang 21

a Chuyển đổi từ hệ cơ số bất kỳ sang hệ

Trang 22

b Chuyển đổi từ hệ cơ số 10 sang các hệ khác

 Chuyển đổi phần nguyên

 Chuyển đổi phần lẻ

Trang 23

Chuyển đổi phần nguyên

 Lấy phần nguyên chia lặp cho cơ số mới

 Thực hiện cho tới khi kết quả của phép chia bằng 0 thì dừng

Lấy số dư sau mỗi lần chia, viết đảo trật tự là kết quả cần tìm

Trang 24

Ví dụ

5910 = ( ? )2

5910 = ( ? )16

Trang 26

Chuyển đổi phần lẻ

 Lấy phần lẻ nhân lặp lại cho cơ số mới

 Phép nhân dừng lại khi phần lẻ của tích tạo thành bằng không hoặc số nhị phân tạo thành đạt đến một

độ chính xác nhất định thì thôi

Lấy phần nguyên thu được sau mỗi lần nhân, viết

tuần tự là kết quả cần tìm

Trang 27

Ví dụ

 0,37510 = ( ? )2

0,210 = ( ? )2

Trang 28

Ví dụ (tiếp)

0,375 x 2 = 0,75 phần nguyên là 0 0,75 x 2 = 1,5 phần nguyên là 1 0,5 x 2 = 1,0 phần nguyên là 1

Kết quả: 0,37510 = 0,0112

Trang 31

3 Giá trị thập phân lớn nhất của số nhị phân 8

bit, 16 bit là bao nhiêu?

4 Đổi các số nhị phân trong bài 2 sang số

Hexa

5 Đổi các số Hexa sau sang số thập phân: 1A,

7FF

(Lưu ý: Số nhị phân biểu diễn cho một số thập phân tương ứng

được gọi là mã nhị phân trực tiếp (straight binary code))

Trang 32

6 Các phép tính số học và logic trong hệ nhị phân

 Các phép tính số học : Cộng, trừ, nhân, chia

 Các phép tính logic: NOT, AND, OR, XOR, NOR

Trang 38

00000110110

Trang 39

Phép chia

 Được thực hiện thông qua phép trừ,

phép cộng và phép dịch bit

Trang 40

Ví dụ

40

Trang 41

Các phép toán logic cơ bản

Trang 42

Phép Phủ định (NOT)

 Phép phủ định đối với một biến logic A, còn gọi là

phép đảo (NOT), là khi tác động tới A, A sẽ nhận giá trị đảo của giá trị có trước khi tác động

 Ký hiệu phép đảo:

Trang 43

Phép Phủ định của số nhị

phân nhiều bit

Trang 44

Kết quả được gọi là một tích

Khi tất cả các biến thừa số bằng 1

Trang 46

3.3 Biểu diễn số nguyên

 Số nguyên không dấu (Unsigned Interger)

 Số nguyên có dấu (Signed Interger)

Trang 47

1 Biểu diễn số nguyên không dấu

 Dùng n bit để biểu diễn số nguyên không

a A

Trang 48

Với n = 8 bit

Trang 49

Với n = 16 bit, 32 bit, 64 bit

Trang 50

A = 41 = 32 + 8 + 1 = 25 + 23 + 20

41 = 0010 1001

B = 150 = 128 + 16 + 4 + 2 = 27 + 24 + 22 + 21

150 = 1001 0110

Trang 51

Các ví dụ (tiếp)

Trang 52

Bài tập áp dụng

1 Biểu diễn các số nguyên không dấu sau đây

sang số nhị phân 8 bit:

132, 129, 234, 261

2 Cho các số nguyên không dấu được biểu

diễn bằng số nhị phân 8 bit, hãy xác định giá trị của chúng:

1101 1010

1011 1011

Trang 53

2 Biểu diễn số nguyên có dấu

 Quy tắc dấu và trị tuyệt đối

 Mã bù một

 Mã bù hai

Trang 54

a Quy tắc dấu và trị tuyệt đối

n bit:

A   2

0

2

1 (n-1)

Trang 55

a Quy tắc dấu và trị tuyệt đối (tiếp)

 Có hai cách biểu diễn số 0 là:

Trang 57

b Mã bù một

Số bù một và số bù hai:

Trang 58

Số bù một và số bù hai (tiếp)

Trang 59

Quy tắc tìm số bù một và số bù hai

=> Phép đảo dấu cả số nhị phân A được thực hiện bằng lấy

bù hai của số A

Trang 60

Biểu diễn số nguyên có dấu theo mã bù một

 Với A là số âm: Mã bù một của A được biểu diễn

bằng số bù một của số dương tương ứng

Trang 61

Biểu diễn số nguyên có dấu theo mã bù một

 Có hai cách biểu diễn số 0 là:

 0000 0000 (+0)

 1111 1111 (-0)

 Giá trị của A được xác định như sau:

 Dải giá trị biểu diễn: - (2n-1 – 1) đến + (2n-1 – 1)

n

a

Trang 63

Các ví dụ (tiếp)

 Ví dụ 2: Hãy xác định giá trị của các số nguyên

có dấu được biểu diễn theo mã bù một dưới đây:

P = 0110 0010

Q = 1101 1011Giải:

P = 0110 0010 = 26 + 25 + 21 = 64+32+2 = +98

Q = 1101 1011 = -(27 – 1) + 26 + 24 + 23 +21 + 20

= -127+64+16+8+2+1 = -36

Trang 64

c Biểu diễn số nguyên có dấu theo mã bù hai

Trang 65

 Chỉ có một cách biểu diễn số 0 là:

0000 …0000

Biểu diễn số nguyên có dấu theo mã bù hai

Trang 66

Với n = 8 bit

Trang 67

Với n = 16 bit, 32 bit, 64 bit

Trang 68

Các ví dụ

 Ví dụ 1: Biểu diễn các số nguyên có dấu sau

đây theo qui tắc mã bù hai:

A = + 58; B = -80Giải:

Trang 69

Các ví dụ (tiếp)

 Ví dụ 2: Hãy xác định giá trị của các số nguyên

có dấu được biểu diễn theo mã bù hai dưới đây:

P = 0110 0010

Q = 1101 1011Giải:

P = 0110 0010 = 26 + 25 + 21 = 64+32+2 = +98

Q = 1101 1011 = -27 + 26 + 24 + 23 +21 + 20

= -128+64+16+8+2+1 = -37

Trang 71

Chuyển đổi giữa các thanh ghi

có độ dài khác nhau

Trang 72

Bài tập áp dụng

1 Biểu diễn các số nguyên sau đây theo các quy tắc: dấu và trị tuyệt đối, mã bù một, mã bù hai

sử dụng thanh ghi 8 bit: + 55, -76

2 Xác định giá trị của các số nguyên có dấu được biểu diễn theo mã nhị phân:

A = 0110 1011

B = 1101 1001

Trang 73

3 Biểu diễn số thập phân theo mã

BCD

 Binary Coded Decimal

 Dùng 4 bit để mã hóa cho các chữ số thập phân từ 0 đến 9:

Trang 77

4 Thực hiện các phép toán số học đối với số nguyên

 Arithmetic and Logic Unit (ALU)

Trang 78

4 Thực hiện các phép toán số học

đối với số nguyên

a Phép cộng số nguyên không dấu

Trang 79

4 Thực hiện các phép toán số học

đối với số nguyên

a Phép cộng số nguyên không dấu

Trang 80

Nguyên tắc cộng số nguyên không dấu

Trang 81

Ví dụ cộng số nguyên không dấu

Trang 82

b Cộng số nguyên có dấu

 Thường thực hiện phép cộng theo mã bù hai:

 Các số hạng biểu diễn ở dạng mã bù hai

 Cộng cả bit dấu

Trang 83

Nguyên tắc cộng số nguyên có dấu

Trang 84

Ví dụ cộng số nguyên có dấu không tràn

Trang 85

Ví dụ cộng số nguyên có dấu bị tràn

Trang 86

d Nhân số nguyên không dấu

Trang 87

Nhân số nguyên không dấu (tiếp)

Trang 88

Bộ nhân số nguyên không dấu

Trang 89

Lưu đồ nhân số nguyên không dấu

Trang 90

Ví dụ nhân số nguyên không dấu

Trang 91

e Nhân số nguyên có dấu

 Bước 1 Chuyển đổi số bị nhân và số nhân thành số

dương tương ứng

 Bước 2 Nhân hai số dương bằng giải thuật nhân số

nguyên không dấu, được tích của hai số dương

 Bước 3 Hiệu chỉnh dấu của tích:

 Nếu hai thừa số ban đầu cùng dấu thì giữ nguyên kết quả ở bước 2.

 Nếu hai thừa số ban đầu là khác dấu thì đảo dấu kết quả

của bước 2.

Trang 92

f Chia số nguyên không dấu

Trang 93

Bộ chia số nguyên không dấu

Trang 94

Lưu đồ chia số nguyên không dấu

Trang 100

g Chia số nguyên có dấu

Trang 102

2 Số dấu phẩy động

Số dấu phẩy động (Floating Point Number)

 Tổng quát: một số thực X được biểu diễn

theo kiểu số dấu phẩy động như sau:

Trang 103

3 Chuẩn IEEE 754

 IEEE (Institute of Electrical and Electronics

Engineering): Viện công nghệ Điện và Điện Tử

Cơ số R = 2

 3 dạng số dấy phẩy động cơ bản:

Số có độ chính xác đơn (Single): 32 bit

Số có độ chính xác kép (Double): 64 bit

Số có độ chính xác mở rộng (Quarduple): 128 bit

Trang 104

 ne là độ dài bit của trường số mũ e

 ví dụ: độ dài của trường e là 8 bit  B = 2 8-1 -1 = 127

Trang 105

Định dạng của các dạng biểu diễn:

Trang 107

Các quy ước đặc biệt

Trang 108

Ví dụ 1

Trang 109

Ví dụ 2

Trang 110

Ví dụ 3

Giải:

Trang 111

Bài tập áp dụng

Biểu diễn các số thực sau đây về dạng số dấu

phẩy động IEEE 754 32 bit:

X = -27,0625

Y = 24,2

Trang 112

Bài tập về nhà

 Tìm hiểu về tính toán số học với số dấu

phẩy động.

 Tài liệu: Mục 9.5 trong giáo trình Stallings,

William Computer organization and

2010, 8th edition.

112

Trang 113

3.5 Biểu diễn ký tự

 Bộ mã ASCII (American Standard Code for Information Interchange)

 Bộ mã Unicode

Trang 118

Bài tập

1 Tìm hiểu bộ mã ASCII và Unicode

2 Biểu diễn các số sau bằng thanh ghi 8 bit theo: qui tắc dấu và trị tuyệt đối, mã bù 1, mã bù 2

3 Biểu diễn các số sau sang số dấu phẩy động

theo tiêu chuẩn IEEE 754 32 bit, 64 bit

Trang 119

Bài tập

4 Tính giá trị thập phân của các số nguyên có

dấu được biểu diễn theo mã nhị phân

a 0101 1001 c 1001 1100

b 1100 1111 d 1010 0100

5 Cho số dấu phẩy động biểu diễn theo tiêu

chuẩn IEEE 32 bit: C2828000H Hãy tính giá

trị thập phân của số đã cho?

Trang 120

Hết chương 3

Ngày đăng: 26/12/2021, 09:11

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm