Hàm Bool trong ngôn ngữ CC++

19 706 0
Hàm Bool trong ngôn ngữ CC++

Đ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

Hàm bool là hàm dùng trong toán rời rạc và đa phần sử dụng trong các chương trình kiểm chứng đúng sai. Công dụng của nó cũng là kiểm chứng sự đúng sai của chương trình. Hoặc dùng nó làm cờ hiệu cho quá trình lập trình. Hàm bool được sử dụng như một cách an toàn trong lập trình. Các bạn muốn tìm hiểu sâu hơn về hàm này thì tải tài liệu này về nhé. Chúc may mắn

Bài giảng Tóan rời rạc Course 4: Hàm Bool Created by LeTrungSan - 1 - HÀM BOOL 1. Biến bool & các phép toán 2 1.1. Biến bool 2 1.2. Các phép toán 2 1.3. Các tính chất quan trọng 3 1.4. Biểu thức Bool 3 2. Hàm bool 4 2.1. Định nghĩa hàm bool 4 2.2. Các phép toán trên hàm bool 6 2.3. Dạng nối rời chính tắc 6 3. Mạng các cổng logic 8 4. Quan hệ đơn giản hơn & công thức đa thức tối tiểu 11 5. Phương pháp bản đồ Karnaugh cực tiểu hóa hàm bool 12 5.1. Bản đồ Karnaugh 12 5.2. Tế bào 14 5.3. Thuật tóan 16 Bài Tập 19 Bài giảng Tóan rời rạc Course 4: Hàm Bool Created by LeTrungSan - 2 - Các phép tóan trên hai con số 0 và 1 được nhà tóan học người Anh George Boole đề xướng vào giữa thế kỷ XIX. Lý thuyết về hàm bool ngày nay phát triển rực rỡ về ứng dụng của nó và được giảng dạy cho sinh viên các ngành Điện, Điện tử và Tin học. 1. Biến bool & các phép toán 1.1. Biến bool Xét tập hợp B ={0, 1}. Các biến chỉ nhận giá trị trong tập B được gọi là biến Bool (còn gọi là biến logic). Như vậy gọi x là biến Bool thì x chỉ có thể nhận giá trị là 0 hoặc 1. 1.2. Các phép toán Trên tập B{0,1} ta trang bị (định nghiã ) ba phép toán gọi là tổng bool, tích bool và phần bù của biến bool như sau: • Tổng của hai biến bool a và b là một biến bool kí hiệu là a ⊕ b (còn kí hiệu khác là: a ∨ b, nếu không sợ nhầm lẫn ta cũng viết a + b). • Tích của hai biến bool a và b là một biến bool kí hiệu là a ∗ b (còn kí hiệu khác là: a ∧ b, nếu không sợ nhầm lẫn ta cũng viết ab). • Phần bù của biến bool a là một biến bool kí hiệu là a . Giá trị của tổng bool, tích bool và phần bù được thể hiện trong bảng sau: Tổng Tích Phần bù a b a ⊕ b a b a ∗ b 0 0 0 0 0 0 a a 0 1 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 1 1 1 1 1 Theo bảng trên ta có: 0 ⊕ 0 = 0; 0 ⊕ 1 = 1; 1 ⊕ 0=1; 1⊕1=1. 0∗0=0; 0∗1=0; 1∗0=0; 1∗1=1. 01 = ; 10 = . Từ nay trở đi ta sẽ viết a+b, ab thay cho a ⊕ b và a ∗ b. Như vậy ta sẽ được 1+1=1 và 1.1 = 1 Bài giảng Tóan rời rạc Course 4: Hàm Bool Created by LeTrungSan - 3 - Nếu không sử dụng các dấu ngoặc thì thứ tự ưu tiên các phép toán sẽ là: trước hết, thực hiện tất cả các phép lấy phần bù, sau đó lấy tích bool rồi mới đến tổng bool. Điều này được thể hiện qua ví dụ sau: Ví dụ 1: 0.1+ ( ) 10 + = (0.1) + ( ) 10 + = 0+ 1 = 0 + 0 = 0 1.3. Các tính chất quan trọng Tính chất Biểu thức [1]. Bù kép aa = a+b = b+a [2]. Giao hoán a.b = b.a a + (b+c) = (a+b) + c [3]. Kết hợp a(bc) = (ab)c a(b+c) = ab + ac [4]. Phân phối a + (bc) = (a+b)(a+c) baba .)( =+ [5]. De Morgan = ab ba + a + 0 = a [6]. Trung hòa (đồng nhất) a.1 = a a + 1 = 1 [7]. Thống trị (nuốt) a.0 = 0 a + a = a [8]. Lũy đẳng a.a = a Ngoài ra ta còn có: [9]. ;1 =+ aa ;0. = aa [10]. ;aaba = + babaa +=+ [11]. baabbbaaa +=+== )(1. 1.4. Biểu thức Bool Tương tự như trong đại số thông thường, ta gọi biểu thức xây dựng từ các con số mà ta gọi là hằng số bool: 0, 1; các biến bool và các phép toán được gọi là biểu thức bool. Ví dụ 2: với a, b ∈B{0,1}, F(a,b) = a + (a b ). ab + ab + 1 là biểu thức bool của hai biến a và b. Bài giảng Tóan rời rạc Course 4: Hàm Bool Created by LeTrungSan - 4 - Ví dụ 3: với x, y, z ∈B{0,1}, F(x,y,z) =xy + xz + xyz là biểu thức bool của ba biến x,y và z. Khi thay tất cả các biến trong biểu thức bằng giá trị nhận trong B{0,1} thì biểu thức có giá trị duy nhất. Ví dụ 4: Cho biểu thức bool: F(x,y) = x+y + xy. Khi đó F(0,0) = 0 + 0 + 0.0 = 0 F(0,1) = 0 + 1 + 0.1 = 1 F(1,0) = 1 + 0 + 1.0 = 1 F(1,1) = 1 + 1 + 1.1 = 1 2. Hàm bool Các biến bool chủ yếu dùng để biểu thị hai trạng thái logic khác nhau ( đối lập) như: đúng và sai, thật và giả, cao và thấp, có và không, mở và đóng,…. Trong phần này ta xem xét mối quan hệ về sự phụ thuộc của một biến bool vào các biến bool khác. Ta gọi quan hệ như vậy là hàm bool theo dưới đây: 2.1. Định nghĩa hàm bool • B = {0,1}; B n = {(x 1 , x 2 , …, x n )/ x i ∈B với 1≤ i ≤ n}. Một hàm bool f (n biến) từ B n vào B là quy tắc gán mỗi bộ (x 1 , x 2 , …, x n ) trong B n một giá trị 0 hoặc 1 trong B. x 1 , x 2 , …, x n gọi là biến, f gọi là hàm. Đó là ánh xạ: ), ,,(), ,,( : 2121 nn n xxxfxxx BBf a → • Do với n hữu hạn thì |B n | hữu hạn nên giá trị của hàm bool thường được cho dạng bảng. Ví dụ 1: bảng dưới đây là bảng giá trị của hàm bool f(x,y): Với bảng bên ta được: f(0,0) = 0; f(0,1) = 1; f(1,0) = 0 và f(1,1) = 1. • Có )2( 2 2 n n B = hàm bool khác nhau của n biến. Hai hàm bool gọi là bằng nhau nếu nó có bảng giá trị như nhau. x y f(x,y) 0 0 0 0 1 1 1 0 0 1 1 1 Bài giảng Tóan rời rạc Course 4: Hàm Bool Created by LeTrungSan - 5 - Ví dụ 2: dưới đây cho thấy hai hàm bool f(x,y) và g(x,y) là bằng nhau. Ta viết f(x,y) = g(x,y). x y f(x,y) g(x,y) 0 0 0 0 0 1 1 1 1 0 0 0 1 1 1 1 • Hàm bool còn được cho bằng biểu thức của các biến. Bằng cách thay các biến bởi giá trị và thực hiện các phép toán ta cũng tìm được bảng giá trị của hàm bool tương ứng. Ví dụ 3: Bảng sau cho biết giá trị của các hàm bool: f(x,y,z) = x + yz và g(x,y,z) = xy + x y + yz x y z f(x,y,z)=x+yz g(x,y,z)=xy+x y +yz 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 Mặc dù có biểu thức khác nhau nhưng rõ ràng hai hàm f và g là bằng nhau. Như vậy, ta có: f(x,y,z)= x + yz = g(x,y,z) = xy + x y + yz. Ví dụ 4: (Hàm bỏ phiếu) Một ủy ban gồm 3 thành viên phải quyết định các vấn đề của một tổ chức. Mỗi thành viên bỏ phiếu tán thành hay không tán thành cho mỗi đề nghị được đưa ra. Một đề nghị được thông qua nếu nó nhận được ít nhất hai phiếu tán thành. Thiết lập hàm mô tả sự phụ thuộc của việc được thông qua một đề nghị vào các thành viên của ủy ban. Giải: Đặt biến x đại diện cho đại biểu thứ nhất. x = 1 nếu đại biểu thứ nhất tán thành, x = 0 nếu đại biểu này không tán thành. y là biến đại diện cho đại biểu thứ hai. y = 1 nếu đại biểu thứ hai tán thành và y = 0 nếu đại biểu này không tán tnành. Tương tự z đại diện cho đại biểu thứ ba, z =1 nếu đại biểu thứ ba Bài giảng Tóan rời rạc Course 4: Hàm Bool Created by LeTrungSan - 6 - tán thành thông qua và z = 0 nếu đại biểu thứ ba không tán thành. f(x,y,z) là biến đại diện cho biết đề nghị có được thông qua; f(x,y,z) = 1 nếu đề nghị được thông qua và f(x,y,z) = 0 nếu đề nghị này không được thông qua. Theo đề bài ta có bảng giá trị của f là: x y z f(x,y,z) 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 2.2. Các phép toán trên hàm bool Cho f, g là các hàm bool của n biến; với a ∈B n ta định nghĩa các phép tóan trên hàm bool: Tổng: (f+g)(a) = f(a) + g(a) Tích: (fg)(a) = f(a).g(a) Phần bù: )()( afaf = 2.3. Dạng nối rời chính tắc Xét hàm bool f của n biến x 1 , x 2 , …, x n . Ta định nghĩa: • nn xxxxxx ,, ,,,, 2211 là các từ đơn. Có 2n từ đơn cho hàm bool n biến. • Tích khác 0 của các từ đơn gọi là đơn thức. • Đơn thức có đủ n từ đơn được gọi là từ tối tiểu. • Tổng các đơn thức gọi là đa thức. • Nếu biểu thức hàm bool f được viết dạng tổng của các từ tối tiểu đôi một khác thì gọi là dạng nối rời chính tắc (tổng các tích). Chú ý rằng mỗi hàm bool có một biểu diễn dạng nối rời chính tắc duy nhất. Ví dụ 5: Xét hàm bool f của 3 biến x, y và z. Khi đó: - zzyyxx ,,,,, là các từ đơn. - x, y , xy, xz, xyz, … là các đơn thức. - xyz, yzx , zyx , zyx , … là các từ tối tiểu. Bài giảng Tóan rời rạc Course 4: Hàm Bool Created by LeTrungSan - 7 - - F(x,y,z) = xyz + yzx + zyx + zyx , E(x,y,z) = yz + zyx + zyx E, F là hai công thức đa thức của f nhưng chỉ F là công thức dạng nối chính tắc của f. Bây giờ ta đi xem xét cách tìm dạng nối rời chính tắc của một hàm bool. Ngay từ đầu khi định nghĩa hàm bool ta đã nói có hai cách cho hàm. Vì vậy ta xem xét cách xác định dạng nối rời chính tắc từ hai cách cho đó. TH 1: Hàm cho bởi bảng chân trị Xét hàm bỏ phiếu trong ví dụ 4. Bảng giá trị của hàm là: x y z f(x,y,z) 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 Tập các thể hiện làm cho giá trị của f(x,y,z) bằng 1 là: {011, 101, 110, 111}. Từ tập các thể hiện này ta lập các từ tối tiểu tương ứng : xyz,z xyz,y xyz,x . Đến đây ta có được dạng nối rời chính tắc của f là: f(x,y,z) = xyz xyz xyz xyz + + + . TH 2: Hàm cho bởi biểu thức Khi hàm cho bởi biểu thức ta có thể lập bảng giá trị rồi áp dụng TH1. Cách khác để tìm biểu thức dạng nối rời chính tắc là sử dụng các tính chất của phép toán: Chẳng hạn, cho f(x,y) = x + y . Tìm biểu thức dạng nối rời chính tắc của f: Cách 1: lập bảng chân trị của f ta được: x y f(x,y) = x + y 0 0 1 0 1 0 1 0 1 1 1 1 Các th ể hi ệ n làm cho f bàng 1 là: 00, 10 và 11. L ậ p đượ c các t ừ t ố i ti ể u t ươ ng ứ ng là: xy,xy,xy . Vậy dạng nối rời chính tắc của f là: f(x,y) = xy xy xy + + Cách 2: bi ế n đổ i d ự a vào các tính ch ấ t c ủ a phép tóan: f(x,y) = x + y = x.1 + 1. y tính trung hòa: x = x.1 Bài giảng Tóan rời rạc Course 4: Hàm Bool Created by LeTrungSan - 8 - = x ( y + y ) + (x + x ) y phần tử bù: 1 = x + x = xy + x y + x y + x y phân phối x(y+z) = xy+xz = xy + x y + x y l ũ y đẳ ng x + x = x Ta c ũ ng thu đượ c d ạ ng n ố i r ờ i chính t ắ c c ủ a f. 3. Mạng các cổng logic Theo truy ề n th ố ng, để bi ế t m ộ t đề ngh ị có đượ c thông qua không ng ườ i ta ti ế n hành l ấ y ý ki ế n c ủ a các ủ y viên b ằ ng đề ngh ị gi ơ tay bi ể u quy ế t. N ế u đ a s ố (> 50%) đồ ng tình thì đề ngh ị đượ c thông qua. Cách làm này xem ra không khách quan và nh ư v ậ y s ự công b ằ ng không đượ c đả m b ả o. Để kh ắ c ph ụ c ngày nay đ ã s ử d ụ ng nhi ề u ph ươ ng pháp t ự độ ng hóa trong đ ó vi ệ c l ậ p m ộ t m ạ ch đ i ệ n t ử g ọ i là m ạ ch b ỏ phi ế u nh ư đ ã nói trong ví d ụ 4 ở trên. M ỗ i ủ y viên đượ c trang b ị m ộ t thi ế t b ị để th ự c thi vi ệ c b ỏ phi ế u c ủ a mình (có th ể là c ầ u dao, nút b ấ m, …); các thi ế t b ị này đượ c thi ế t k ế k ế t n ố i vào m ạ ch d ẫ n đế n m ộ t thi ế t b ị phát tín hi ệ u cho bi ế t đề ngh ị có đượ c thông qua không (có th ể là bóng đ èn, kèn, …). C ầ n có các thi ế t b ị v ậ t lý để t ổ ng h ợ p các tín hi ệ u đầ u vào t ừ các thi ế t b ị g ắ n cho m ỗ i ủ y viên c ủ a ủ y ban và cho tín hi ệ u đầ u ra t ạ i thi ế t b ị phát nh ư đ ã nói. Thi ế t b ị v ậ t lý t ổ ng h ợ p này g ọ i là các c ổ ng logic và m ạ ch k ế t n ố i các thi ế t b ị trên g ọ i là m ạ ch t ổ h ợ p. Ở đ ây ta không quan tâm đế n chi ti ế t các thi ế t b ị v ậ t lý ấ y mà ch ỉ xem xét nhi ệ m v ụ và cách th ứ c k ế t n ố i chúng để có tín hi ệ u đầ u ra d ạ ng hình th ứ c là m ộ t hàm bool. M ỗ i hàm bool đượ c t ổ ng h ợ p t ừ các bi ế n bool b ằ ng các phép toán: , , ∨ ∧ . Do đ ó tr ướ c h ế t ta c ầ n các thi ế t b ị th ự c hi ệ n các phép tóan trên, các thi ế t b ị này g ọ i là các c ổ ng logic c ơ b ả n và đượ c bi ể u di ễ n hình th ứ c nh ư sau: cổ ng AND c ổ ng OR c ổ ng NOT C ổ ng NOT có m ộ t đầ u vào, các c ổ ng AND và OR ở trên có 2 đầ u vào và t ấ t c ả đề u có 1 đầ u ra duy nh ấ t. Trong th ự c t ế , tùy theo m ụ c đ ích s ử d ụ ng mà ng ườ i ta thi ế t k ế các c ổ ng AND và c ổ ng OR có nhi ề u h ơ n 2 đầ u vào. D ướ i đ ây là hình ả nh các c ổ ng có n đầ u vào: c ổ ng AND c ổ ng OR x y xy x y x+y x x x 1 x 2 x n x 1 x 2 …x n x 1 x 2 x n x 1 + x 2 +…+x n Bài giảng Tóan rời rạc Course 4: Hàm Bool Created by LeTrungSan - 9 - Ngoài các c ổ ng c ơ b ả n trên, để thu ậ n ti ệ n ng ườ i ta còn thi ế t k ế các c ổ ng khác ch ẳ ng h ạ n m ắ c n ố i ti ế p c ổ ng AND v ớ i c ổ ng NOT đượ c c ổ ng NAND, m ắ c n ố i ti ế p c ổ ng OR và c ổ ng NOT đượ c c ổ ng NOR: c ổ ng NAND c ổ ng NOR Ví d ụ 1: M ạ ch đ i ề u khi ể n bóng đ èn hai công tác ( đ èn c ầ u thang). G ọ i x, y là tr ạ ng thái hai công tác, x =1 n ế u công tác th ứ nh ấ t đ óng còn x = 0 n ế u công tác này m ở ; y = 1 n ế u công tác th ứ hai đ óng, y = 0 n ế u công tác này m ở . g ọ i F(x,y) là tr ạ ng thái bóng đ èn; F = 1 khi bóng đ èn sáng, F =0 khi bóng đ èn t ắ t. Bóng đ èn s ẽ sáng khi c ả hai công tác cùng đ óng hay cùng m ở và bóng đ èn t ắ t khi m ộ t trong hai công tác đ óng trong khi công tác còn l ạ i là m ở . B ả ng giá tr ị : D ạ ng n ố i r ờ i chính t ắ c c ủ a hàm là: F(x,y) = xy+xy M ạ ch t ổ ng h ợ p: Ví d ụ 2: m ạ ch t ổ ng h ợ p hàm bool: f(x,y,z) = xy + xz + yz x y F(x,y) 0 0 1 0 1 0 1 0 0 1 1 1 y x y x y xy x x y XY + x y X y xy X y x+y z y x xy yz xz xy + xz + yz Bài giảng Tóan rời rạc Course 4: Hàm Bool Created by LeTrungSan - 10 - L ư u ý r ằ ng m ộ t k ế t qu ả đ ã đượ c t ổ ng h ợ p thì có th ể s ử d ụ ng nhi ề u l ầ n mà không ph ả i t ổ ng h ợ p l ạ i. M ạ ch trong ví d ụ 2 đ ã dùng 3 c ổ ng AND và 1 c ổ ng OR. Trong tr ườ ng h ợ p ch ỉ dùng các c ổ ng có 2 chân vào ta đượ c s ơ đồ m ạ ch nh ư sau: Khi thi ế t k ế m ạ ch t ổ h ợ p nh ấ t thi ế t chúng ta ph ả i tính toán đế n tính hi ệ u qu ả c ủ a m ạ ch. Có 2 y ế u t ố quan tâm chính: (i). S ố l ượ ng các c ổ ng đượ c s ử d ụ ng; đ i ề u này đả m b ả o hi ệ u qu ả kinh t ế . (ii). Th ờ i gian th ự c thi. M ặ c dù th ờ i gian t ổ ng h ợ p qua m ỗ i c ổ ng là r ấ t bé ( ph ầ n nghìn giây), xong s ố l ượ ng c ổ ng trong m ỗ i m ạ ch th ườ ng r ấ t l ớ n nên th ờ i gian t ổ ng c ộ ng s ẽ l ớ n. C ả hai đ òi h ỏ i trên s ẽ đượ c đ áp ứ ng khi mà s ố c ổ ng s ử d ụ ng là t ố i ư u. Vì lí do c ổ ng NOT d ễ s ả n xu ấ t nên có giá thành không đ áng k ể và th ờ i gian th ự thi c ũ ng r ấ t nh ỏ (so v ớ i các c ổ ng khác) nên ta không quan tâm đế n c ổ ng NOT. Nh ư v ậ y ta s ẽ đ i xem xét v ấ n đề t ố i ư u s ố c ổ ng AND và c ổ ng OR. Đ ã bi ế t m ộ t hàm bool thì có nhi ề u công th ứ c bi ể u di ễ n. Ta đ i tìm công th ứ c d ạ ng đ a th ứ c (t ổ ng các tích) giúp t ố i ư u hai y ế u t ố đượ c nêu ở trên. Để đạ t đượ c yêu c ầ u t ố i ư u ta c ầ n hai tiêu chí là: bi ế u th ứ c có ít phép c ộ ng và có ít phép nhân; ngh ĩ a là trong bi ể u th ứ c đ a th ứ c mà có ít đơ n th ứ c, h ơ n n ữ a trong m ỗ i đơ n th ứ c c ầ n có ít t ừ đơ n. Tr ướ c nh ấ t hãy so sánh 3 m ạ ch: a) z y x xy yz xz xy + xz + yz xy + xz [...]... m ch t h p các hàm bool: a) xy + xy 7 V b n b) ( x + y ) x ( c) x y + z ) d) ( x + y + z ).x.y z Karnaugh c a các hàm bool sau: a) f(x,y,z) = xy z + x y z + xyz + xy z b) g(x,y,z) = xy z + x y z + xyz + xy z c) h(x,y,z,w) = xyzw + x yzw + x y zw + xy zw + xyzw 8 C c ti u hoá các hàm bool có b n Karnaugh dư i ây: a) b) c) 9 C c ti u hoá các hàm bool d) bài t p 7 10 C c ti u hoá các hàm bool a) xyzt +... bi t) bi u di n hàm bool ó là dùng m t b ng hình ch nh u g m 2n ô, m i ô s ph n t c a Bn mà ng v i nó có m t t t i ti u l p ư c B n hàm là t p h p các ô mà nó chính t c c a hàm Kí hi u b n Created by LeTrungSan i di n cho t i di n cho m t Karnaugh c a m t t i ti u có trong bi u th c d ng n i r i Karnaugh c a hàm f là Kar(f) hay k(f) - 12 - Bài gi ng Tóan r i r c • Course 4: Hàm Bool Hàm 2 bi n ư c bi... Xét hàm bool f có b n Kar(f) dư i ây (các ô ch n ư c ánh s ) Bư c [1]: Có 3 t bào l n y T bào l n ơn th c 1_2 xy 2_3 yz 4 xyz Created by LeTrungSan x y 1 2 3 x z - 16 - y Z y 4 z z Bài gi ng Tóan r i r c Course 4: Hàm Bool Bư c [2]: [2.1] Ô 1 ch n m trong duy nh t t bào l n 1_2 Ô 3 ch n m trong duy nh t t bào l n 2_3 Ô 4 ch n m trong duy nh t t bào l n 4 Ta có danh sách L = {1_2, 2_3, 4} Ba t bào trong. .. tìm công th c a th c t i ti u ta g i là c c ti u hóa hàm Phương pháp b n Karnaugh cho phép ta c c ti u hóa các hàm 2, 3 và 4 bi n m t cách d dãng Vì hàm 2 bi n quá ơn gi n và vì v y ta s nói nhi u cho hàm 3 và 4 bi n Cho n th i i m này ta ã bi t m i hàm bool có th bi u di n duy nh t dư i d ng n i r i chính t c là t ng các t t i ti u M t khác m t hàm bool c a n bi n s n có t i a 2 t t i ti u V y nên có... các giá tr (n u có) c a bi n bool x tho mãn các phương trình: a) x.1=0 b) x+x =0 c) x.1=x d) x.x = 1 3 L p b ng giá tr cho bi u th c bool: a) F(x,y,z) = xy + yz + xz b) G(x,y,z) = x + y + z 4 Cho các hàm bool F(x,y,z), G(x,y,z) trong bài 3 Tính giá tr : F(1,0,1), F(0,1,0), F(0,0,1), F(1,1,1), G(0,1,0), G(1,0,1), G(1,1,1), G(0,0,0) 5 Tìm d ng n i r i chính t c c a các hàm bool: a) f(x,y) = x + y b) g(x,y,z)... c E c a hàm bool f ư c g i là công th c a th c t i ti u n u v i m i công th c F khác E c a f và F ơn gi n hơn E thì suy ra E và F ơn gi n như nhau 5 Phương pháp b n 5.1 B n Karnaugh c c ti u hóa hàm bool Karnaugh i v i m i hàm bool, i u chúng ta mong mu n là tìm ư c công th c d ng bi u th c sao cho s d ng l p m ch t h p s cho m ch kinh t nh t Nghĩa là ta c n tìm công th c a th c t i ti u c a hàm Quá... u: f = xy + yz + xyz Ví d 2: C c ti u hóa hàm bool f có b n Kar(f) dư i ây ( các ô ch n ư c ánh s ): Bư c [1]: y y y x TBL ơn th c w x 1 1_2 xyw x 3 1_4 yzw x xzw 3_5 w 2 5 3_4 Bư c [2]: y xyz [2.1] z z w 4 w z z ô 2 ch trong TBL 1_2 ô 5 ch trong TBL 3_5 Danh sách L = {1_2, 3_5} L n lư t ph Kar(f) b ng các TBL trong L ta s th y còn ô 4 chưa ư c ph Ô này n m trong 2 t bào l n nên chuy n qua bư c [2.2]... xzw - 17 - Bài gi ng Tóan r i r c Course 4: Hàm Bool So sánh th y hai công th c a th c trên ơn gi n như nhau nên tìm ư c hai công th c a th c t i ti u Chú ý: S d ng các công th c trên t h p hàm f ta ư c hai m ng t ng h p s d ng cùng s c ng AND và cùng s c ng OR C th là 3 c ng AND và 1 c ng OR Created by LeTrungSan - 18 - Bài gi ng Tóan r i r c Course 4: Hàm Bool Bài T p 1 Tìm giá tr c a bi u th c: b)... n y xy x y Karnaugh c a các hàm bool: a) f = xy + x y b) g = xy + x y c) h = x y + x y + x y b) a) y c) y y y y x x x x x x Ô tô en là ô ư c ch n Cách vi t trên là c a Veitch và Karnaugh • Hàm 3 bi n ư c bi u di n b ng b ng 8 ô: y y y x xy z xyz xyz xy z x xyz x yz x yz x y z z Ví d 2: B n y z z z Karnaugh c a hàm f(x,y,z) = xyz + xyz + xy z + xyz y y y y z z z z x x • Hàm 4 bi n d ng b ng 16 ô: y... 1,2,4,8,16,…ô • T bào không b ch a trong t bào khác ư c g i là t bào l n Chú ý r ng ta không hi u l n là g m nhi u ô, tuy nhiên nhi u ô có nhi u cơ h i là l n hơn Kar(f) g m các ô ư c ánh s sau: Ví d 4: Xét hàm bool 3 bi n f có b n y x Y y 1 2 3 y 4 x z Z - Các t bào 1 ô: Các t bào 2 ô: T bào l n: z 1_2, 2_3, 2_4 - z m i ô là m t t bào - 5 1_2, 2_3, 2_4, 5 y Ví d 5: xét hàm bool 4 bi n f(x,y,z,w) có b n

Ngày đăng: 23/08/2015, 23:21

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

  • Đang cập nhật ...

Tài liệu liên quan