如果本次課程對應(yīng)的 Coursera 的視頻打不開,可以點(diǎn)擊下面鏈接
P1W1U1.1 - Boolean Logic
這幾節(jié)課,主要鋪墊了一下計(jì)算機(jī)世界的基礎(chǔ)知識,布爾值、布爾運(yùn)算、布爾函數(shù)、以及如何用邏輯門(也叫與非門)來表示布爾函數(shù)。因?yàn)檎n程并不用真實(shí)物理世界的東西(比如晶體管、電阻啊等)去實(shí)現(xiàn)老師說的“Hack”電腦。最后我們會(huì)用課程提供的一些列軟件模擬工具(硬件模擬軟件)以及硬件描述語言(HDL),去模擬實(shí)現(xiàn)物理硬件。
布爾值、布爾運(yùn)算是計(jì)算機(jī)運(yùn)行的基礎(chǔ)原理,可以比喻成計(jì)算機(jī)的“魂”或“神”,而計(jì)算機(jī)的“形”在歷史上有過機(jī)械的齒輪、開關(guān)電磁閥、電子管、晶體管等來實(shí)現(xiàn)基礎(chǔ)原理。
“形”萬變而“神”不變。所以 開始先從基礎(chǔ)原理講起,本節(jié)分六個(gè)內(nèi)容:
一、布爾值 - Boolean Values ( 0 和 1)
二、布爾操作 - Boolean Operations ( 0 和 1 怎么運(yùn)算)
三、布爾表達(dá)式 - Boolean Expressions (多種運(yùn)算的組合)
四、布爾函數(shù) - Boolean Functions (變量的方式表示 運(yùn)算)
五、布爾恒等式 - Boolean Identities (在變量的方式下簡化運(yùn)算)
六、布爾代數(shù) - Boolean Algebra (運(yùn)用恒等式簡化和運(yùn)算來得出結(jié)果)
:是“真” True 或“假” False 中的一個(gè),計(jì)算機(jī)里用 1 或 0 來代表。

: 下圖有三種布爾值之間(例如x、y)的操作 “與、或、非”
與 (AND) :如圖“與”運(yùn)算法則: x 和 y 都為1時(shí),“x與y”的結(jié)果就是1,否則為0。
或 (OR):如圖“或”運(yùn)算法則:x 和 y只要有一個(gè)為1時(shí),“x或y”的結(jié)果就是1,否則為0。
非 (NOT):如圖“非”運(yùn)算法則:布爾值取反。

:簡單說就是上面的布爾操作的一個(gè)組合版,可以將布爾表達(dá)式拆開來一步一步進(jìn)行布爾操作的運(yùn)算,如下圖最終結(jié)果為0。

:簡單說就是把上面布爾表達(dá)式里的布爾值(0、1),設(shè)成變量(例如下圖:x、y、z),用來表示一種表達(dá)式的所有可能的情況(例如下圖:將x、y、z的所有組合的可能)和結(jié)果(例如下圖:f)。最后也可以用一張真值表 Truth table 來表示這個(gè)布爾函數(shù)


:在未來布爾代數(shù)時(shí),用來方便簡化運(yùn)算的幾種恒等法則。

布爾代數(shù),在 P1 W1 U1.1 布爾邏輯 這個(gè)教程里講的并不全。在做轉(zhuǎn)換的時(shí)候參考了下面網(wǎng)站(有自動(dòng)簡化工具 和 更全的布爾恒等式)。
http://electronics-course.com/boolean-algebra

:如下示范了一個(gè)例子,在沒進(jìn)行布爾運(yùn)算前,通過布爾恒等式已經(jīng)將第一個(gè)行復(fù)雜的布爾函數(shù)簡化成了x OR y,然后再去計(jì)算就簡單了許多。

:我們可以通過帶入各種可能的布爾數(shù)值,得出f,并最終可以畫出整個(gè)真值表。

但如何通過真值表 =得出=> 布爾函數(shù)呢?下節(jié)課繼續(xù)講。(因?yàn)橹笪覀兌家ㄟ^課程已給出的真值表,去推導(dǎo)出我們的布爾函數(shù),然后再用硬件的與非門來表達(dá) 布爾函數(shù)。)