ạ ươ

IT1110 Tin h c đ i c

ng

ầ ươ

Ph n I: Tin h c căn b n ể Ch

ả ữ ệ ng 2: Bi u di n d  li u trong máy tính

ọ Nguy n Bá Ng c

1

ươ

N i dung ch

ng này

ơ

ớ ố

ớ ố

ự ố ự

ễ ễ

 2.1. Các h  đ mệ ế ữ ệ ễ ể  2.2. Bi u di n d  li u và đ n v  đo ố ễ ể  2.3. Bi u di n s  nguyên ố ọ  2.4. Phép toán s  h c v i s  nguyên  2.5. Tính toán logic v i s  nh  phân ể  2.6. Bi u di n ký t ể  2.7. Bi u di n s  th c

2

ữ ệ

2.2. Bi u di n d  li u trong máy  ơ tính và đ n v  đo

 Nguyên t c chung

ọ ữ ệ

ượ

 Trong máy tính m i d  li u đ u đ

ễ c bi u di n b ng

ị ố s  nh  phân. ả ằ

ả ượ ể ư

 Văn b n, âm thanh, hình  nh ph i đ ị

ố ữ

ễ ằ

ả c s  hóa (bi u  ể di n  b ng  s   nh   phân)  đ   có  th   l u  tr   và  x   lý  b ng máy vi tính. ề

ể ả ử

ệ ố ậ

ể ầ  Ph n m m đóng vai trò trung gian đ  chúng ta có th   ữ ệ ở ử ụ s  d ng máy tính m t cách hi u qu , x  lý d  li u    ữ ế ộ ữ nh ng bi u di n quen thu c (s  th p phân, ch  vi t,  hình  nh, âm thanh, v.v.).

3

photo.jpg

Quá trình s  hóa tín hi u v t lý

ộ ả

ộ ươ t

ế B  c m bi n  tín hi uệ (Sensor)

ổ ể B  chuy n đ i  ự ố  s ng t (AD Converter)

Tín hi uệ

Tín hi u sệ

ệ Tín hi u đi n  liên t cụ

v t lýậ

Máy tính

ị ữ ệ

ơ

Đ n v  d  li u

 Đ n v  d  li u nh  nh t là

ỏ ấ ươ ứ ng  ng

ị ữ ệ ộ ự ệ ạ ộ ạ

ắ ắ

ạ ạ

6

ụ ắ ở ộ ơ bit. M t bit t ớ v i m t s  ki n có 1 trong 2 tr ng thái.   Ví d : M t m ch đèn có 2 tr ng thái là:  ở ệ  T t (Off) khi m ch đi n qua công t c là h   ệ  M  (On) khi m ch đi n qua công t c là đóng

ế

ơ

ị ữ ệ Đ n v  d  li u (ti p)

Ký hi uệ

Giá trị

Tên g iọ

Byte

B

8 bit

Kilobyte

KB

210B

Megabyte

MB

210KB = 220B

Gigabyte

GB

210MB = 230B

Terabyte

TB

210GB = 240B

Petabyte

PB

210TB = 250B

Exabyte

EB

210PB = 260B

Zettabyte

ZB

210EB = 270B

Yottabyte

YB

210ZB = 280B

7

ễ 2.3. Bi u di n s  nguyên

ố  Có  hai  bi u  di n  nh   phân  c a  s

ỉ ể ượ ễ c

ấ s  nguyên không âm)

nguyên ố  S  nguyên không d u (ch  bi u di n đ ố ố ể

ử ụ ấ ể  S   nguyên  có  d u,  s   d ng  mã  bù  2  đ

8

ố ễ bi u di n s  âm

ễ ể 2.3.1. Bi u di n s  nguyên  không d uấ

ạ ả ử ể ể ễ s  dùng n bit đ  bi u di n

ổ  D ng t ng quát: gi ộ ố ấ cho m t s  nguyên không d u A:

 Giá tr  c a A đ

ị ủ an­1an­2...a3a2a1a0 ượ ư c tính nh  sau:

 D i bi u di n c a A: t

n ­ 1

9

ủ ể ễ ả ừ ế  0 đ n 2

Ví d :ụ

 Bi u di n các s  nguyên không d u sau đây

ễ ấ ố

ể ằ b ng 8 bit:

A = 45 B = 156

i:ả

Gi A = 45 = 32 + 8 + 4 + 1 = 25 + 23 + 22 + 20

(cid:0) A = 0010 1101

B = 156 = 128 + 16 + 8 + 4 = 27 + 24 + 23 + 22

10

(cid:0) B = 1001 1100

ụ ế Ví d  (ti p)

 Cho các s  nguyên không d u X, Y đ

ố ượ c

ư ễ ể ằ ấ bi u di n b ng 8 bit nh  sau:

ị ủ Xác đ nh giá tr  c a X,Y

X = 0010 1011 Y = 1001 0110 ị i:ả

11

Gi X = 0010 1011 = 25 + 23 + 21 + 20                                     = 32 + 8 + 2 + 1 = 43 Y = 1001 0110 = 27 + 24 + 22 + 21

= 128 + 16 + 4 + 2 = 150

V i n = 8 bit

ố ọ

Tr c s  h c máy tính

ể ả ễ  D i bi u di n là [0, 255]

0000 0000    =  0

0000 0001    =  1 0000 0010    =  2 0000 0011    =  3

.....

12

1111 1111    =  255

Bi u di n s  nguyên không d u

 V i n = 16 bit:

 V i n = 32 bit:

ả ể

ớ ễ  d i bi u di n: [0, 65 535] ớ  d i bi u di n: [0, 4 294 967 295]

13

ễ ể ả

S  bù 1 và s  bù 2

ượ

 V i    1  s   nh   phân  A  đ

c  bi u  di n

ớ ố ằ b ng n bit: ị  L y ngh ch đ o các bit c a A: thu đ

ủ ấ ượ ố c s

n ­ 1) – A ượ

ủ bù 1 c a A b ng (2

 C ng 1 vào s  bù 1: thu đ

ộ ủ ố ả ằ ố c s  bù 2 c a

14

A: 2n – A

ế

S  bù 1 và bù 2 (ti p)

 Ví d :  n = 4 bit,  A = 0110

= s  bù 1 +1

1111 10000

­ ­ A     0110 0110

S  bù 1:

1001

S  bù 2:

1010

ố ậ

ỏ ậ Nh n xét: s  bù 1  là đ o các bit

15

ằ ả 0 (cid:0) 1 ố ổ Nh n xét: T ng A + s   ủ bù 2 c a nó, b  bit ngoài  cùng, b ng 0

Bi u di n s  nguyên có d u

ạ ố

ạ ổ

2

ố  Bi u di n s  không âm: ể ễ  an­1 = 0, các bit còn l i bi u di n s  đó ủ ố  D ng t ng quát c a s  không âm:  N(2) = 0an­2...a2a1a0 n ố (2):

i

n

1

20

(cid:0) ị ủ  Giá tr  c a s  N (cid:0) (cid:0) (cid:0) (cid:0) (cid:0)

2

ia

0

 Mi n giá tr : [0, 2

n­1­1]

16

ề ị

Bi u di n s  nguyên có d u (1)

ệ ố ủ ủ

ế

ị  Bi u di n giá tr  tuy t đ i c a nó  Ngh ch đ o các bít c a k t qu  (mã bù 1)  C ng 1 vào mã bù 1 (mã bù 2) – đây cũng là bi u

ộ ễ

ể ố ễ  Bi u di n s  âm:

 D ng t ng quát c a s  âm:

ủ di n c a s  âm ổ ạ  an­1 = 1

ủ ố

n

2

i

n

1

ị ủ  Giá tr  c a s  âm:

A

2

2

a i

0

17

ể  D i bi u di n: [­2

n­1, ­1]

(cid:0) (cid:0) A(2) = 1an­2...a2a1a0 ố (cid:0) (cid:0) (cid:0) (cid:0) (cid:0)

Bi u di n s  nguyên có d u (2)

ử ụ

ế ố

ế ợ ạ ể

ể i, n u s  d ng n bit ta có th   trong

 K t h p l ễ bi u  di n  s   nguyên  có  d u  ả kho ng:   [­2n­1, 2n­1 ­ 1] ổ

 T ng quát:

A(2) = an­1an­2...a1a0

n

2

(cid:0)

i

n

1

(cid:0)

A

a

2

n

)2(

1

(cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0)

2

a i

18

0

ụ ể

Ví d  bi u di n s  nguyên có  d uấ

 Xác đ nh giá tr  c a các s  nguyên có d u 8 bit

ị ủ ấ ố ị

sau đây:

A = 0101 0110 B = 1101 0010

i:ả

19

Gi A = 26 + 24 + 22 + 21 = 64 + 16 + 4 + 2 = +86 B = ­27 + 26 + 24 + 21 = ­128 + 64 + 16 + 2 = ­46

Bài t pậ

 Bi u di n các s  nguyên sau v i n = 8

ể bit:   X=+58  Y=­80

 Xác đ nh giá tr  c a s  nguyên có d u 8

ị ủ bit: Z = 1100 1001

20

ườ

ụ ể

Tr

ng h p c  th

ể ể

 N u s  d ng 8 bit có th  bi u di n các

ử ụ ị ừ

ế giá tr  t

ế  ­128 đ n +127

1000 0000 = ­128

1000 0001 = ­127

...............................

0000 0000 = 0

0000 0001 = 1

..........................

0111 1111 = 127

21

ở ộ

ả M  r ng d i bi u di n

ớ ố

ổ ừ ạ d ng 8 bit (byte) thành 16 bit

22

ể  Chuy n đ i t (word): ớ ố  V i s  không âm thêm 8 bit 0 vào bên trái +19 =                 0001 0011 (8 bit) +19 = 0000 0000 0001 0011 (16 bit)  V i s  âm thêm 8 bit 1 vào bên trái ­19 =                 1110 1101 (8 bit) ­19 = 1111 1111 1110 1101 (16 bit)

Binary Code Decimal Code

ữ ố ậ

 Dùng 4 bit đ  mã hóa t ng ch  s  th p

ể ế  0 đ n 9

phân t

0(cid:0) 0000    .......... 1(cid:0) 0001    8(cid:0) 1000 ............    9(cid:0) 1001

ổ ợ

 Có 6 t

h p không dùng: 1010, 1011,

1100, 1101, 1110, 1111

23

Binary Code Decimal Code

ữ ố ậ

ơ ẻ ượ

 35(cid:0) 0011 0101BCD  61(cid:0) 0110 0001BCD  1087(cid:0) 0001 0000 1000 0111BCD  đ  C  1 ch  s  th p phân đ n l

c mã

ằ hóa b ng 4 bit

24

Binary Code Decimal Code

ế

 Phép c ng s  BCD:

ộ      35  (cid:0)

ả K t qu   đúng, không  ệ ả ph i hi u  ch nhỉ

0011 0101BCD

+ 61 (cid:0) +0110 0001BCD

87  (cid:0)

96 (cid:0) 1001 0110BCD

1000 0111BCD

ả ế K t qu  sai,   ệ ả ph i hi u  ch nhỉ

25

+ 96 (cid:0) +1001 0110BCD

183     1 0001 1101BCD

Binary Code Decimal Code

 Nh n xét: 7 + 6 hay 8 + 9 đ u v

ề ượ t 9 nên có

 Hi u ch nh: ậ nh .ớ ệ

 Hi u ch nh b ng cách c ng thêm 6

ộ ở ằ ữ  nh ng

ớ ị ỉ v  trí có nh  (>9)

hi u ch nh

ế

ả  k t qu  đúng

1 0001 1101          + 0110 0110 (cid:0)    0001 1000 0011BCD (cid:0)

26

ể ư

ữ ố

Các ki u l u tr  s  BCD

ỗ ố  BCD  không  gói  (Unpacked  BCD):  m i  s   ủ ượ ư c l u tr  trong 4 bit th p c a  ụ ố

ượ ư

BCD 4 bit đ m i byte. Ví d : S  35 đ

ữ c l u tr :

0011

0101

ượ ượ

c  c

 BCD  gói  (packed  BCD):  hai  s   BCD  đ ữ ư l u  tr   trong  m t  byte.  Ví  d :  S   35  đ ữ ư l u tr :

0011

0101

27

ươ

N i dung ch

ng này

ơ

ớ ố

ớ ố

ự ố ự

ễ ễ

 2.1. Các h  đ mệ ế ữ ệ ễ ể  2.2. Bi u di n d  li u và đ n v  đo ố ễ ể  2.3. Bi u di n s  nguyên ố ọ  2.4. Phép toán s  h c v i s  nguyên  2.5. Tính toán logic v i s  nh  phân ể  2.6. Bi u di n ký t ể  2.7. Bi u di n s  th c

28

ố ọ

ớ ố 2.4. Các phép toán s  h c v i s   nguyên

ấ  Phép c ng s  nguyên không d u ả ừ t t ng bít t ệ ơ ố ư

ố ộ ệ ươ

ph i qua trái.

ầ ượ ừ ự ế ự nh  trong h  c  s  10 ng t

 Tr

ơ ng h p t ng c a hai s  l n h n 2

29

 Ti n hành c ng l n l  Th c hi n t  0 + 0 = 0  0 + 1 = 1  1 + 0 = 1 ớ  1 + 1 = 10 (nh  1 sang bên trái) ợ ổ ườ ố ra tràn s  (ngoài d i bi u di n, C ẽ s  là sai.

ố ớ ễ ủ ả ể ẽ n­1 s  gây  ả ế out = 1), k t qu

ộ ụ Ví d  phép c ng s  nguyên  không d uấ

ế ổ ỏ ơ ng h p 8 bit, n u t ng nh  h n 255 thì

57        0011 1001 + 34        0010 0010 ­­­­­­­­­­­­­­­­­­­­­­­   91        0101 1011

209        1101 0001 + 73        0100 1001 ­­­­­­­­­­­­­­­­­­­­­­­­  282      1 0001 1010

ợ ớ ườ  V i tr ả ế k t qu  đúng

Bit tràn ra  ngoài (Cout)

30

ế ả K t qu  sai

ả Phép đ o d u

ự  Phép đ o d u th c ch t là l y bù 2

+37 = 0010 0101

­37 = 1101 1011

bù 1:   1101 1010

bù 1:  0010 0100

+1

+1

bù 2:  1101 1011 = ­37

bù 2:  0010 0101 = +37

31

C ng hai s  nguyên có d u

ộ ố ỏ Khi  c ng  2  s   nguyên  có  d u  n  bit,  b   qua  bit

ế

ượ ế ả ậ

ố khác d uấ  k t qu   ố cùng d uấ : ấ

ố ạ

ế

ế

ộ ộ  n u  d u  k t  qu   cùng  d u  v i  các  s   h ng  thì

k t  qu   là

ấ c k t qu  n bit: ả luôn đúng

ả ị

ế

ế

k t qu  b  sai ẽ ẫ

do đã tràn số ế

i thì  ể

Cout, chúng ta nh n đ  C ng 2 s    C ng 2 s   ế đúng. ế

ượ ạ c l ả  Khi t ng n m ngoài d i bi u di n s  d n đ n

ả  n u k t qu  có d u ng ổ tràn số

ễ ằ

32

[­2n­1, 2n­1 ­ 1]

ụ C ng hai s  nguyên có d u­ ví d :

(+70) = 0100 0110

+(+42)= 0010 1010

+112  = 0111 0000 = +112

(+97) =   0110 0001

+(­52) =   1100 1100      (vì +52 = 0011 0100)

+45  = 1 0010 1101 = +45

33

ụ C ng hai s  nguyên có d u­ ví d :

(+75) = 0100 1011

+(+82)= 0101 0010

+157  = 1001 1101 = ­99

(cid:0)

ượ

t ng v

t +127

tràn số

(­104) =   1001 1000    (vì +104 = 0110 1000)

+ (­43) =   1101 0101    (vì +43 = 0010 1011)     ­147  = 1 0110 1101 = +109 (cid:0)

sai

âm + âm (cid:0)

d

ngươ

không quan  tâm

34

ự Nguyên t c th c hi n phép tr

ố ấ

ố ừ ớ ố ị ừ

ượ

 Phép tr  hai s  nguyên: X­Y = X + (­Y) ể  Nguyên t c: l y bù 2 c a s  tr  Y đ   ộ c –Y, sau đó c ng v i s  b  tr  X

đ

35

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

36

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

ư ệ ơ ố ệ ươ ự nh  trong h  c  s  10

ự ng t 0 x 1 = 0 1 x 1 = 0 0 + 1 = 1 ớ 1 + 1 = 10 (nh  1 sang bên trái)

 K t qu  nhân 2 s  n bit không v

 Th c hi n t  0 x 0 = 0  1 x 0 = 0  0 + 0 = 0  1 + 0 = 0 ế bit

37

ả ố ượ t quá 2n

Nhân hai s  nguyên có d u

ậ ị ố ố ị

ấ ấ ả i nhân hai s  nguyên không d u  S  d ng thu t gi ệ ố ủ  B c 1: l y tr  tuy t đ i c a s  b  nhân và s  nhân ữ

nguyên, ng ệ ố

 B c 2: nhân 2 giá tr  tuy t đ i nh  các s  không

ố ượ ạ ấ i l y bù 2 c l ố ư ị

ủ ỉ

nguyên k t qu ấ

ấ ấ

ế ủ

ả ế

ư ữ

ử ụ ướ ế  N u bit d u b ng 0 thì gi ướ d uấ ướ ế  n u 2 th a s  ban đ u cùng d u thì gi ế  n u 2 th a s  ban đ u khác d u thì ta l y bù 2 c a k t

b

38

ấ  B c 3: hi u ch nh d u c a tích nh  sau: ầ ầ c 2 ệ ố ừ ừ ố ượ ở ướ c  qu  thu đ

Chia s  nguyên không d u

39

Chia s  nguyên có d u

ố ị

ượ

ế

ấ i chia s  nguyên không d u  ố c  là

ng Q và ph n d  R

ư

ế

ướ ệ ố ủ ị ấ  B c 1: L y tr  tuy t đ i c a s  b  chia và s  chía ướ ả ậ ử ụ  B c 2: S  d ng thu t gi ệ ể đ   chia  các  giá  tr   tuy t  đ i,  k t  qu   nh n  đ ươ th ướ ư

ủ ấ

ầ ỉ ấ

ư ấ  B c 3: Hi u ch nh d u c a k t qu  nh  sau: ự (L u ý: phép đ o d u th c ch t là phép l y bù hai)

ố ị

Th ữ

d

d

gi

gi

S  dố ư ữ  nguyên

ngươ  nguyên ấ ả

d

đ o d u

gi

nguyên ấ ả

S  b  chia ngươ ngươ âm

d

đ o d u

40

đ o d u ữ

âm

ố S  chia ngươ âm ngươ âm

nguyên

gi

đ o d u

ươ

N i dung ch

ng này

ơ

ớ ố

ớ ố

ự ố ự

ễ ễ

 2.1. Các h  đ mệ ế ữ ệ ễ ể  2.2. Bi u di n d  li u và đ n v  đo ố ễ ể  2.3. Bi u di n s  nguyên ố ọ  2.4. Phép toán s  h c v i s  nguyên  2.5. Tính toán logic v i s  nh  phân ể  2.6. Bi u di n ký t ể  2.7. Bi u di n s  th c

41

ớ ố

2.5. Tính toán logic v i s  nh  phân

AND OR XOR

0

0

0

0

0

0

1

0

1

1

1

0

0

1

1

1

1

1

1

0

42

ớ ố

2.5. Tính toán logic v i s  nh  phân

NOT

1

0

0

1

43

ớ ố

2.5. Tính toán logic v i s  nh  phân

 Th c hi n các phép toán logic v i 2

ế

ớ ừ

ị ố s  nh  phân: ị  K t qu  là 1 s  nh  phân khi th c hi n  các  phép  toán  logic  v i  t ng  c p  bit  c a 2 s  nh  phân đó

ỉ ả

ế

ộ  Các  phép  toán  này  ch   tác  đ ng  lên  ưở ng đ n

ừ t ng c p bit mà không  nh h bit khác.

44

ớ ố

2.5. Tính toán logic v i s  nh  phân

 VD: A = 1010 1010 và B = 0000 1111  XOR

AND OR NOT

01010101 1010 1010

11110000 0000 1111

00001010 10101111 10100101

ậ ậ

45

ế ậ ế ậ ữ ữ   Nh n xét: +Phép AND dùng đ  xoá m t s  bit và gi   Nh n xét: +Phép AND dùng đ  xoá m t s  bit và gi ạ ạ i. i. ữ ố ữ   t l p 1 s  bit và gi ố t l p 1 s  bit và gi +Phép OR dùng đ  thi      +Phép OR dùng đ  thi

ộ ố ể ộ ố ể ố ố nguyên 1 s  bit còn l nguyên 1 s  bit còn l ể ể ố nguyên 1 s  bit khác.  ố nguyên 1 s  bit khác.

H i ­ đáp

46