Bài giảng kĩ thuật số ứng dụng

64 221 0
Bài giảng kĩ thuật số ứng dụng

Đ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

TRNG I HC BÁCH KHOA À NNG KHOA N T VIN THÔNG oOo BÀI GING  THUT SNG DNG à Nng, 08 / 2006 Chng 1. i s Boole Trang 1 Chng 1 I S BOOLE 1.1. HM NH PHÂN VÀ MÃ 1.1.1. H thng sm 1. Khái nim và phân loi hm m là tp hp các phng pháp gi và biu din các con s bng các kí hiu có giá tr s ng xác nh gi là các ch s. Có th chia các hm làm hai loi: hm theo v trí và hm không theo v trí. a. Hm theo v trí: m theo v trí là hm mà trong ó giá tr s lng ca ch s còn ph thuc vào v trí ca nó ng trong con s c th. Ví d: H thp phân là mt hm theo v trí. S 1991 trong h thp phân c biu din bng 2 ch s “1” và “9”, nhng do v trí ng ca các ch s này trong con s là khác nhau nên s mang các giá tr s lng khác nhau, chng hn ch s “1”  v trí hàng n v biu din cho giá tr s ng là 1 song ch s “1”  v trí hàng nghìn li biu din cho giá tr s lng là 1000, hay ch s “9” khi  hàng chc biu din giá tr là 90 còn khi  hàng trm li biu din cho giá tr là 900. b. Hm không theo v trí: m không theo v trí là hm mà trong ó giá tr s lng ca ch s không ph thuc vào  trí ca nó ng trong con s. m La Mã là mt hm không theo v trí. Hm này s dng các ký t “I”, “V”, “X”  biu din các con s, trong ó “I” biu din cho giá tr s lng 1, “V” biu din cho giá tr s ng 5, “X” biu din cho giá tr s lng 10 mà không ph thuc vào v trí các ch s này ng trong con s c th. Các hm không theo v trí s không c  cp n trong giáo trình này. 2. C s ca hm t s A bt k có th biu din bng dãy sau: A= a m-1 a m-2 a 0 a -1 a -n Trong ó a i là các ch s, ( 1 m n i − ÷ − = ); i là các hàng s, i nh: hàng tr, i ln: hàng già. Giá tr s lng ca các ch s a i s nhn mt giá tr nào ó sao cho tha mãn bt ng thc sau: 1Na0 i −≤≤ (a i nguyên) N c gi là c s ca hm.  s ca mt hm là s lng ký t phân bit c s ng trong mt hm. Các h thng sm c phân bit vi nhau bng mt c s N ca h m ó. Mi ký t biu din mt ch s. Khoa TVT – HBKN – Tháng 08.2006 Trang 2 Trong i sng hng ngày chúng ta quen s dng hm thp phân (decimal) vi N=10. Trong  thng s còn s dng nhng hm khác là hm nh phân (binary) vi N=2, hm bát phân (octal) vi N=8 và hm thp lc phân (hexadecimal) vi N=16. - H nh phân : N =2 ⇒ a i = 0, 1. - H thp phân : N =10 ⇒ a i = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. - H bát phân : N =8 ⇒ a i = 0, 1, 2, 3, 4, 5, 6, 7. - H thp lc phân : N =16 ⇒ a i = 0, 1, 2, …8, 9, A, B, C,D, E, F. Khi ã xut hin c s N, ta có th biu din s A di dng mt a thc theo c s N, c ký hiu là A (N) : A (N) = a m-1 .N m-1 + a m-2 .N m-2 + + a 0 .N 0 + a -1 .N -1 + + a -n .N -n Hay: ∑ − −= = 1m ni i i(N) NaA (1.1) i N=10 (h thp phân): A (10) = a m-1 .10 m-1 + a m-2 .10 m-2 + + a 0 .10 0 + + a -n .10 -n 1999,959 (10) =1.10 3 + 9.10 2 + 9.10 1 + 9.10 0 + 9.10 -1 + 5.10 -2 + 9.10 -3 i N=2 (h nh phân): A (2) = a m-1 .2 m-1 + a m-2 .2 m-2 + + a 0 .2 0 +a -n 2 -n 1101 (2) = 1.2 3 +1.2 2 + 0.2 1 + 1.2 0 = 13 (10) i N=16 (h thp lc phân): A (16) = a m-1 .16 m-1 + a m-2 .16 m-2 + + a 0 .16 0 + a -1 16 -1 + + a -n 16 -n 3FF (16) = 3.16 2 + 15.16 1 + 15.16 0 = 1023 (10) i N=8 (h bát phân): A (8) = a m-1 .8 m-1 + a m-2 .8 m-2 + + a 0 .8 0 + a -1 .8 -1 + + a -n .8 -n 376 (8) = 3.8 2 + 7.8 1 + 6.8 0 = 254 (10) Nh vy, biu thc (1.1) cho phép i các s bt k h nào sang h thp phân (h 10). 3. i c s a. i t c s d sang c s 10  chuyn i mt s hm c s d sang hm c s 10 ngi ta khai trin con s trong c  d di dng a thc theo c s ca nó (theo biu thc 1.1). Ví d 1.1 i s 1101 (2)  h nh phân sang h thp phân nh sau: 1011 (2) = 1.2 3 + 0.2 2 + 1.2 1 + 1.2 0 = 11 (10) b. i t c s 10 sang c s d  chuyn i mt s t c s 10 sang c s d (d = 2, 8, 16) ngi ta ly con s trong c s 10 chia liên tip cho d n khi thng s bng không thì dng li. Kt qu chuyn i có c trong m c s d là tp hp các s d ca phép chia c vit theo th t ngc li, ngha là s d u tiên có trng s nh nht. (xem ví d 1.2) Chng 1. i s Boole Trang 3 Ví d 1.2: t lun: Gi d 1 , d 2 , ,d n ln lt là d s ca phép chia s thp phân cho c s d  ln th 1, 2, 3, 4, , n thì kt qu chuyn i mt s t hm c s 10 (thp phân) sang hm c s d s là: d n d n-1 d n-2 d 1 , ngha là d s sau cùng ca phép chia là bít có trng s cao nht (MSB), còn d su tiên là bít có trng s nh nht (LSB). Trong các ví d trên, c s ca hm c ghi  dng ch s bên di. Ngoài ra cng có th ký  ch phân bit nh sau: B - H nh phân (Binary) O - H bát phân (Octal) D - H thp phân (Decmal) H - H thp lc phân (Hexadecimal) Ví d: 1010B có ngha là 1010 (2) 37FH có ngha là 37F (16) & Quy tc chuyn i gia các hm c s 2, 8, 16 ? 1.1.2. Hm nh phân 1. Khái nim m nh phân, còn gi là hm c s 2, là hm trong ó ngi ta ch s dng hai kí hiu 0 và 1  biu din tt c các s. Hai ký hiu ó gi chung là bit hoc digit, nó c trng cho mch n t có hai trng thái n nh hay còn gi là 2 trng thái bn ca FLIP- FLOP (ký hiu là FF). Trong hm nh phân ngi ta quy c nh sau: - Mt nhóm 4 bít gi là 1 nibble. - Mt nhóm 8 bít gi là 1 byte. - Nhóm nhiu bytes gi là t (word), có th có t 2 bytes (16 bít), t 4 bytes (32 bít), Xét s nh phân 4 bít: a 3 a 2 a 1 a 0 . Biu din di dng a thc theo c s ca nó là: a 3 a 2 a 1 a 0 (2) = a 3 .2 3 + a 2 .2 2 + a 1 .2 1 + a 0 .2 0 Trong ó: - 2 3 , 2 2 , 2 1 , 2 0 (hay 8, 4, 2, 1) c gi là các trng s. - a 0  c gi là bit có trng s nh nht, hay còn gi bit có ý ngha nh nht (LSB - Least Significant Bit), còn gi là bít tr nht. - a 3  c gi là bit có trng s ln nht, hay còn gi là bít có ý ngha ln nht (MSB - Most Significant Bit), còn gi là bít già nht. 1023 16 63 16 3 16 0 15 15 3 A (10) =1023 → A (16) =3FFH 13 2 6 2 3 2 1 1 0 1 2 0 1 A (10) =13 → A (2) =1101 Khoa TVT – HBKN – Tháng 08.2006 Trang 4 Nh vy, vi s nh phân 4 bit a 3 a 2 a 1 a 0 trong ó mi ch s a i (i t 0 n 3) ch nhn c hai giá tr {0,1} ta có 2 4 = 16 t hp nh phân phân bit. ng sau ây lit kê các t hp mã nh phân 4 bít cùng các giá tr s thp phân, s bát phân và s thp lc phân tng ng.  thp phân a 3 a 2 a 1 a 0 S bát phân S thp lc phân 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 00 01 02 03 04 05 06 07 10 11 12 13 14 15 16 17 0 1 2 3 4 5 6 7 8 9 A B C D E F ng 1.1. Các t hp mã nh phân 4 bít  chuyn i gia các h thng s m khác nhau gi vai trò quan trng trong máy tính s. Chúng ta bit rng 2 3 = 8 và 2 4 = 16, t bng mã trên có th nhn thy mi ch s trong h bát phân ng ng vi mt nhóm ba ch s (3 bít) trong h nh phân, mi ch s trong h thp lc phân ng ng vi mt nhóm bn ch s (4 bít) trong h nh phân. Do ó, khi biu din s nh phân nhiu bit trên máy tính  tránh sai sót ngi ta thng biu din thông qua s thp phân hoc thp c phân hoc bát phân. Ví d 1.3 : Xét vic biu din s nh phân 1011111011111110 (2) . 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 0 y, có th biu din : 137376 (8) theo h bát phân hoc : BEFE (H) theo h thp lc phân. & Vi s nh phân n bít có bao nhiêu t hp nh phân khác nhau? Xét trng hp s nh phân 8 bít (n=8) a 7 a 6 a 5 a 4 a 3 a 2 a 1 a 0 có bao nhiêu t hp nh phân (t mã nh phân) khác nhau? 2. Các phép tính trên s nh phân a. Phép cng 67 3 7 3 1 EFEB Chng 1. i s Boole Trang 5  cng hai s nh phân, ngi ta da trên qui tc cng nh sau: 0 + 0 = 0 nh 0 0 + 1 = 1 nh 0 1 + 0 = 1 nh 0 1 + 1 = 0 nh 1 Ví d 1.4 : 3 → 0011 2 → 0010 5 → 0101 = 1.2 2 + 1.2 0 = 5 (10) b. Phép tr 0 - 0 = 0 mn 0 0 - 1 = 1 mn 1 1 - 0 = 1 mn 0 1 - 1 = 0 mn 0 Ví d 1.5 : 7 → 0111 5 → 0101 2 → 0010 = 0.2 3 + 0.2 2 + 1.2 1 + 0.2 0 = 2 (10) c. Phép nhân 0 . 0 = 0 0 . 1 = 0 1 . 0 = 0 1 . 1 = 1 Ví d 1.6 : 7 → 0111 5 → 0101 35 0111 0000 0111 0000 0100011 = 1.2 5 + 1.2 1 + 1.2 0 = 35 (10) d. Phép chia 0 : 1 = 0 1 : 1 = 1 u ý: Khi chia s chia phi khác 0 Ví d 1.7 : 10 5 → 1010 101 2 101 10 (2) = 2 (10) 00 0 + + - - x x Khoa TVT – HBKN – Tháng 08.2006 Trang 6 1.1.3. Khái nim v mã 1. i cng Trong i sng hàng ngày, con ngi giao tip vi nhau thông qua mt h thng ngôn ng qui c, nhng trong máy tính và các h thng s ch x lý các d liu nh phân. Do ó, mt vn t ra là làm th nào to ra mt giao din d dàng gia ngi và máy tính, ngha là máy tính thc hin c nhng bài toán do con ngi t ra. Vì các máy tính s hin nay ch hiu các s 0 và s 1, nên bt k thông tin nào di dng các ch , ch cái hoc các ký t phi c bin i thành dng s nh phân trc khi nó có thc x lý bng các mch s.  thc hin u ó, ngi ta t ra vn  v mã hóa d liu. Nh vy, mã hóa là quá trình bin i nhng ký hiu quen thuc ca con ngi sang nhng ký hiu quen thuc vi máy tính. Nhng s liu ã mã hóa này c nhp vào máy tính, máy tính tính toán x lý và sau ó máy tính thc hin quá trình ngc li là gii mã  chuyn i các bít thông tin nh phân thành các ký hiu quen thuc vi con ngi mà con ngi có th hiu c. Các lnh vc mã hóa bao gm: - Mã hóa s thp phân - Mã hóa ký t - Mã hóa tp lnh - Mã hóa ting nói - Mã hóa hình nh v v Phn tip theo chúng ta kho sát lnh vc mã hóa n gin nht là mã hóa s thp phân bng cách s dng các t mã nh phân. Vic mã hóa ký t, tp lnh, ting nói, hình nh u da trên c  mã hóa s thp phân. 2. Mã hóa s thp phân a. Khái nim  mã hóa s thp phân ngi ta s dng các s nh phân 4 bit (a 3 a 2 a 1 a 0 ) theo quy tc sau: 0→ 0000 ; 5 → 0101 1→ 0001 ; 6 → 0110 2→ 0010 ; 7 → 0101 3→ 0011 ; 8 → 1000 4→ 0100 ; 9 → 1001 Các s nh phân dùng  mã hóa các s thp phân c gi là các s BCD (Binary Coded Decimal: S thp phân c mã hóa bng s nh phân). b. Phân loi Khi s dng s nh phân 4 bit  mã hóa các s thp phân tng ng vi 2 4 = 16 t hp mã nh phân phân bit. Do vic chn 10 t hp trong 16 t hp  mã hóa các ký hiu thp phân t 0 n 9 mà trong thc t xut hin nhiu loi mã BCD khác nhau. c dù tn ti nhiu loi mã BCD khác nhau, nhng có th chia làm hai loi chính: Mã BCD có trng s và Mã BCD không có trng s. Chng 1. i s Boole Trang 7 b1. Mã BCD có trng s là loi mã cho phép phân tích thành a thc theo trng s ca nó. Mã BCD có trng sc chia làm 2 loi là: mã BCD t nhiên và mã BCD s hc. Mã BCD t nhiên là loi mã mà trong ó các trng s thng c sp xp theo th t tng n. Ví d: Mã BCD 8421, BCD 5421. Mã BCD s hc là loi mã mà trong ó có tng các trng s luôn luôn bng 9.Ví d: BCD 2421, BCD 5121, BCD 8 4-2-1 c trng ca mã BCD s hc là có tính cht i xng qua mt ng trung gian. Do y,  tìm t mã BCD ca mt s thp phân nào ó ta ly bù (o) t mã BCD ca s bù 9 ng ng. Ví d xét mã BCD 2421. ây là mã BCD s hc (tng các trng s bng 9), trong ó s 3 (thp phân) có t mã là 0011, s 6 (thp phân) là bù 9 ca 3. Do vy, có th suy ra t mã ca 6 ng cách ly bù t mã ca 3, ngha là ly bù 0011, ta s có t mã ca 6 là 1100. b2. Mã BCD không có trng s là loi mã không cho phép phân tích thành a thc theo trng  ca nó. Các mã BCD không có trng s là: Mã Gray, Mã Gray tha 3. c trng ca mã Gray là b mã trong ó hai t mã nh phân ng k tip nhau bao gi cng ch khác nhau 1 bit. Ví d: Các bng di ây trình bày mt s loi mã thông dng. ng 1.2: Các mã BCD t nhiên. BCD 8421 BCD 5421 BCD quá 3 a 3 a 2 a 1 a 0 b 3 b 2 b 1 b 0 c 3 c 2 c 1 c 0  thp phân 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 1 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 1 2 0 0 1 1 0 0 1 1 0 1 1 0 3 0 1 0 0 0 1 0 0 0 1 1 1 4 0 1 0 1 1 0 0 0 1 0 0 0 5 0 1 1 0 1 0 0 1 1 0 0 1 6 0 1 1 1 1 0 1 0 1 0 1 0 7 1 0 0 0 1 0 1 1 1 0 1 1 8 1 0 0 1 1 1 0 0 1 1 0 0 9 Mã Gray: 2 → 0011 3 → 0010 4 → 0110 Còn vi mã BCD 8421: 3 → 0011 4 → 0100 Khoa TVT – HBKN – Tháng 08.2006 Trang 8 ng 1.3: Các mã BCD s hc BCD 2421 BCD 5121 BCD 84-2-1 a 3 a 2 a 1 a 0 b 3 b 2 b 1 b 0 c 3 c 2 c 1 c 0  thp phân 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1 1 1 0 0 1 0 0 0 1 0 0 1 1 0 2 0 0 1 1 0 0 1 1 0 1 0 1 3 0 1 0 0 0 1 1 1 0 1 0 0 4 1 0 1 1 1 0 0 0 1 0 1 1 5 1 1 0 0 1 1 0 0 1 0 1 0 6 1 1 0 1 1 1 0 1 1 0 0 1 7 1 1 1 0 1 1 1 0 1 0 0 0 8 1 1 1 1 1 1 1 1 1 1 1 1 9 ng 1.4: BCD t nhiên và mã Gray. BCD 8421 BCD quá 3 Mã Gray Gray quá 3 a 3 a 2 a 1 A 0 c 3 c 2 c 1 c 0 G 3 G 2 G 1 G 0 g 3 g 2 g 1 g 0  thp phân 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1 1 0 1 0 0 1 0 0 1 0 1 0 0 1 1 0 1 1 1 2 0 0 1 1 0 1 1 0 0 0 1 0 0 1 0 1 3 0 1 0 0 0 1 1 1 0 1 1 0 0 1 0 0 4 0 1 0 1 1 0 0 0 0 1 1 1 1 1 0 0 5 0 1 1 0 1 0 0 1 0 1 0 1 1 1 0 1 6 0 1 1 1 1 0 1 0 0 1 0 0 1 1 1 1 7 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 0 8 1 0 0 1 1 1 0 0 1 1 0 1 1 0 1 0 9 Chú ý: Mã Gray c suy ra t mã BCD 8421 bng cách: các bit 0,1 ng sau bit 0 ( mã BCD 8421) khi chuyn sang mã Gray c gi nguyên, còn các bit 0,1 ng sau bit 1 ( mã BCD 8421) khi chuyn sang mã Gray thì o bít, ngha là t bit 1 thành bit 0 và bit 0 thành bit 1. 1.2. CÁC TIÊN  VÀ NH LÝ I S BOOLE Trong các mch s, các tín hiu thng c cho  2 mc n áp, ví d: 0V và 5V. Nhng linh kin n t dùng trong mch s làm vic  mt trong hai trng thái, ví d Transistor lng cc (BJT) làm vic  hai ch là tt hoc dn bão hoà… Do vy,  mô t các mch s ngi ta dùng  nh phân (binary), hai trng thái ca các linh kin trong mch s c mã hoá tng ng là 0 hoc 1. t b môn i s phát trin t cui th k 19 mang tên ngi sáng lp ra nó: i s Boole, còn c gi là i s logic, thích hp cho vic mô t mch s. i s Boole là công c toán hc quan Chng 1. i s Boole Trang 9 trng  phân tích và thit k các mch s, c dùng làm chìa khoá i sâu vào mi lnh vc liên quan n k thut s. 1.2.1. Các tiên  ca i s Boole Cho mt tp hp B hu hn trong ó ta trang b các phép toán + (cng logic), x (nhân logic), - (bù logic/nghch o logic) và hai phn t 0 và 1 lp thành mt cu trúc i s Boole (c là Bun). ∀ x,y ∈ B thì: x+y ∈ B, x*y ∈ B và tha mãn 5 tiên  sau: 1. Tiên  giao hoán ∀x,y ∈ B: x + y = y + x 2. Tiên  phi hp ∀x,y,z ∈ B: (x+y)+z = x+(y+z) = x+y+z (x.y).z = x.(y.z) = x.y.z 3. Tiên  phân phi ∀x,y, z ∈ B: x.(y + z ) = x.y + x.z x + (y.z) = (x + y).(x + z) 4. Tiên  v phn t trung hòa Trong tp B tn ti hai phn t trung hòa là phn t n v và phn t không. Phn tn v ký hiu là 1, phn t không ký hiu là 0. ∀x ∈ B: x + 1 = 1 x . 1 = x x + 0 = x x . 0 = 0 5. Tiên  v phn t bù ∀x ∈ B, bao gi cng tn ti phn t bù tng ng, ký hiu x , sao cho luôn tha mãn: x + x = 1 và x. x = 0 u B = B* = {0,1} (B* ch gm 2 phn t 0 và 1) và tha mãn 5 tiên  trên thì cng lp thành u trúc i s Boole nhng là cu trúc i s Boole nh nht. 1.2.2. Các nh lý c bn ca i s Boole 1. Vn i ngu trong i s Boole Hai mnh  (hai biu thc, hai nh lý) c gi là i ngu vi nhau nu trong mnh  này ngi ta thay phép toán cng thành phép toán nhân và ngc li, thay 0 bng 1 và ngc li, thì s suy ra c mnh  kia. Khi hai mnh  i ngu vi nhau, nu 1 trong 2 mnh c chng minh là úng thì mnh  còn li là úng. Di ây là ví d v các cp mnh i ngu vi nhau. Ví d 1.8 : x.(y+z) = (x.y) + (x.z) x + (y.z) = (x+y).(x+z) Ví d 1.9 : x + x = 1 x. x = 0 Hai m nh  này là i ngu Hai m nh  này là i ngu [...]... f(x1,x2) th y r ng có th th c hi n m ch b ng ph n logic HO C có 2 ngõ vào (c ng OR 2 ngõ vào) Bài t p áp d ng: M t h i ng giám kh o g m 3 thành viên M i thành viên có th l a ch n NG Ý ho c KHÔNG NG Ý K t qu g i là T khi a s các thành viên trong h i ng giám kh o NG Ý, ng c l i là KHÔNG T Hãy thi t k m ch gi i quy t bài toán trên 3 Bi u di n hàm b ng b ng Karnaugh (bìa Karnaugh) ây là cách bi u di n l i c... logic s gi m tr t ng c ng c a m ch vì tín hi u qua ít c ng h n Tuy nhiên n u chú tr ng n v n gi m tr s ph i tr giá s l ng c ng t ng lên i v y trong th c t không ph i lúc nào c ng t c l i gi i t i u cho bài toán t i thi u hóa Ch ng 1 Các b • • i s Boole Trang 19 c ti n hành t i thi u hóa: Dùng các phép t i thi u t i thi u hóa các hàm s logic Rút ra nh ng th a s chung nh m m c ích t i thi u hóa thêm m . TRNG I HC BÁCH KHOA À NNG KHOA N T VIN THÔNG oOo BÀI GING  THUT SNG DNG à Nng, 08 / 2006 Chng 1. i s Boole Trang 1 Chng 1 I S. nào to ra mt giao din d dàng gia ngi và máy tính, ngha là máy tính thc hin c nhng bài toán do con ngi t ra. Vì các máy tính s hin nay ch hiu các s 0 và s 1, nên bt k. f(x 1 ,x 2 ) thy rng có th thc hin mch bng phn  logic HOC có 2 ngõ vào (cng OR 2 ngõ vào). Bài tp áp dng : Mt hi ng giám kho gm 3 thành viên. Mi thành viên có th la chn NG Ý

Ngày đăng: 05/08/2015, 18:36

Từ khóa liên quan

Mục lục

  • Ch1

  • Ch3

  • Ch4

Tài liệu cùng người dùng

Tài liệu liên quan