一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何利用基礎(chǔ)門電路進行加法計算和觸發(fā)器

Q4MP_gh_c472c21 ? 來源:科巖成果 ? 作者:科研 ? 2021-04-29 11:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

二進制加法

我已經(jīng)忘了是什么時候?qū)W的加法了,應(yīng)該是小學吧,先學10以內(nèi)的,再學100以內(nèi)的,然后不管多大的數(shù)都可以隨便加了,算式很簡單,就是逢10進1。

下面這個式子是一個萬以內(nèi)的加法:

4d75d85a-a86f-11eb-9728-12bb97331649.jpg

相應(yīng)的,二進制就是逢2進1,下面這個式子是2個8位二進制數(shù)的加法計算:

4da3fdfc-a86f-11eb-9728-12bb97331649.jpg

半加器

8位二進制數(shù)還太復(fù)雜,我們先來看看1位二進制數(shù)怎么計算的,一共有以下4種情況:

4db3bd96-a86f-11eb-9728-12bb97331649.png

觀察一下就能發(fā)現(xiàn)2個規(guī)律。

第一個規(guī)律,只考慮加法,不考慮進位時,加數(shù)與和之間的關(guān)系如下:

4dc5a646-a86f-11eb-9728-12bb97331649.png

相同為0,不同為1。這個關(guān)系和「異或門」是相同的:

4dd68d94-a86f-11eb-9728-12bb97331649.png

異或門我們之前沒有聊到過,電路圖長這樣:

4df7100a-a86f-11eb-9728-12bb97331649.png

第二個規(guī)律是,如果只考慮進位,不考慮加法,加數(shù)與進位之間的關(guān)系如下:

4e17ef46-a86f-11eb-9728-12bb97331649.png

只有全1時,才為1。發(fā)現(xiàn)了嗎,這和本文開頭與門的真值表是一樣的。

2個一位二進制數(shù)相加將產(chǎn)生一個加法位和一個進位位,加法位輸入與輸出的關(guān)系跟與門是一樣的,進位位跟異或門相同。

所以,可以像這樣把兩個門電路連起來,計算2個二進制數(shù)(A和B)的和:

4e300bda-a86f-11eb-9728-12bb97331649.png

我們稱這個電路為「半加器」,因為它只能計算2個一位二進制數(shù)的加法,沒有辦法將前面加法可能產(chǎn)生的進位納入下一次計算中,如果有進位則實際上是需要3個加數(shù)參與計算。

用門電路畫太復(fù)雜,可以封裝起來這樣表示半加器:

4e63e4dc-a86f-11eb-9728-12bb97331649.png

全加器

怎樣計算3個加數(shù)的二進制加法呢?需要將2個半加器和一個或門如圖連接起來:

4e9a1bd8-a86f-11eb-9728-12bb97331649.png

左邊能看到它有3個輸入,右邊依舊是1位加和輸出,1位進位輸出。

2個數(shù)的加和與上一次的進位相加,得出的加和作為3個數(shù)最終的加和;2個數(shù)相加或3個數(shù)相加的進位作為3個數(shù)加和最終的進位位。

用文字描述有點不好理解,把這個電路圖全部輸入和輸出情況都展示出來,畫一個表就明白了:

4ed67524-a86f-11eb-9728-12bb97331649.png

很明顯,這個表就是2個一位二進制數(shù)帶進位的全部狀態(tài)。

每次做加法時畫2個半加器和一個或門很麻煩,我們用下面這個圖示把它們封裝起來,這個能計算3位二進制數(shù)加法的電路就稱為「全加器」。

4eedb9be-a86f-11eb-9728-12bb97331649.png

加法器

現(xiàn)在回到開頭那個二進制加法:

4f02352e-a86f-11eb-9728-12bb97331649.png

它有8個二進制位,到目前為止我們還只能計算2個一位二進制數(shù),最多再增加一個進位的加法,我們最終的目標當然是2個8位、16位乃至32位數(shù)的加法。

其實,非常簡單,用8個全加器一塊算!

把8個全加器每個進位輸出作為下一個的進位輸入,首尾相連就可以啦!

4f12577e-a86f-11eb-9728-12bb97331649.png

每次這樣畫太麻煩,可以封裝成一個框圖:

4f1ae678-a86f-11eb-9728-12bb97331649.png

大箭頭代表8個輸入/輸出端,有8個獨立的信號。

一旦我們擁有了8位二進制加法器,把它們級聯(lián)起來,很容易就能得到一個16位或32位的加法器啦。

4f8aac56-a86f-11eb-9728-12bb97331649.jpg

end

加法計算是計算機的基本運算,其實,計算機唯一的工作就是做加法計算。不論是減法、乘法、除法、在線支付、火箭升空還是AI下棋,都是利用加法實現(xiàn)的。

把加減乘除和邏輯運算等運算單元集成起來,就組成了CPU中的基本計算單元:ALU(算術(shù)邏輯單元Arithmetic and Logic Unit)。

用加法器計算2個數(shù)的加法其實就是用硬件方式實現(xiàn)了一個加法計算器,輸入A和輸入B的高低電平?jīng)Q定了輸出S和CO的高低電平。

這樣的電路同一時刻只能表示一種狀態(tài),只要改變了A、B中任意一位,輸出就會有所變化。

現(xiàn)在我們想計算更多二進制數(shù)的加法,比如5個數(shù)A、B、C、D、E的加法(先不考慮進位)。

步驟應(yīng)該是這樣:首先把A、B作為輸入,得出一個輸出S1,我們要記下來S1的值,然后把S1和C作為輸入,得出S2....以此類推,要記下很多個數(shù),然后再用加法器計算。

5個數(shù)都已經(jīng)很麻煩了,如果要計算更多個數(shù)該怎么辦?能不能把每次計算完的結(jié)果存起來,下次繼續(xù)使用呢?

我們的需求

4f9e70a6-a86f-11eb-9728-12bb97331649.png

這個加法器有個特點,就是兩個加數(shù)A和B的值決定著加和S的值。

這個值是實時決定的,也就是說,A、B中只要有一個數(shù)據(jù)位發(fā)生了改變(0變1或1變0),加和就一定、立即發(fā)生改變。

我們?nèi)绻胗眠@個加法器算「累加和」將會很麻煩,比如5個數(shù)A、B、C、D、E的加法。

首先把A、B作為輸入,得出一個輸出S1,我們要記下來S1的值,然后把S1和C作為輸入,得出S2....以此類推,要記下很多個數(shù),然后再用加法器計算。

工程師怎么會做這種無腦循環(huán)的工作呢,得想辦法交給計算機寄幾做。

好像只要做一個什么器件連在這個加法器的輸出上,這個新器件能夠保存加法器輸出的和,并將算好的和再作為一個參數(shù)輸入,傳遞給加法器就可以了。

4fa8e054-a86f-11eb-9728-12bb97331649.png

注意這個新器件,首先它支持輸入和輸出;其次它能「保存」當前的值;最后,有一個類似「開關(guān)」的引腳決定它是否保持當前的值。

「保存」是什么意思?其實很好理解,就是不論輸入的數(shù)據(jù)位怎么變化,輸出都不變。

不考慮8個數(shù)據(jù)位,先只搭建一個這樣具有「保存」功能的門電路,能保存一個bit就ok。

或非門點燈

科巖已經(jīng)點燈無數(shù),這次依然從點燈開始,用或非門試一下。

「或非門」的真值關(guān)系如下表,記住輸入只要有1,輸出一定為0就可以了。

4fb3f700-a86f-11eb-9728-12bb97331649.jpg

或非門的符號:

4fdbb6c8-a86f-11eb-9728-12bb97331649.jpg

按照下面這個電路把兩個或非門與一個小燈泡連起來,如圖:

仔細觀察,能發(fā)現(xiàn)我把右邊或非門的輸出直接作為輸入連接到左邊或非門上,這會產(chǎn)生什么神奇的現(xiàn)象呢?

4ff744ce-a86f-11eb-9728-12bb97331649.png

如上圖,最開始,左邊或非門的輸入都是0,輸出為1;右邊或非門輸入一個是0,一個是1,輸出0,燈泡是不亮的。

5002dde8-a86f-11eb-9728-12bb97331649.png

現(xiàn)在把開關(guān)S1連通,連通瞬間,左邊或非門輸出0,右邊或非門輸出1,燈泡被點亮,然后右邊或非門輸出的1給到左邊或非門,2個輸入都是1,它的輸出為0保持不變,燈泡點亮不變。

接著我們把開關(guān)S1斷開,如下圖神奇的事情發(fā)生了,燈泡依然保持點亮狀態(tài)!因為左邊或非門仍有一個輸入是1。

501e4c40-a86f-11eb-9728-12bb97331649.png

如果把S2閉合會怎樣呢?燈泡馬上熄滅了。

5052d8a2-a86f-11eb-9728-12bb97331649.png

這時再打開S2,電路回到最初的狀態(tài),燈泡還是熄滅狀態(tài)。

可以總結(jié)規(guī)律了:

?導(dǎo)通S1,燈泡點亮,不論我們怎么控制S1,燈泡都是亮的?導(dǎo)通S2,燈泡熄滅,不論我們怎么控制S2,燈泡都是亮的

這不就達到我們想要的「保存」功能了嘛,不論輸入的數(shù)據(jù)位怎么變化,輸出都不變。

觸發(fā)器(Flip-Flop)

像上面把兩個或非門連起來,能夠穩(wěn)定保存電路狀態(tài)的電路被稱為「觸發(fā)器」。

50647530-a86f-11eb-9728-12bb97331649.png

Flip-Flop的意思是「翻轉(zhuǎn)」,中文翻譯比較奇怪,我們通常理解的觸發(fā)器是Trigger,不過沒關(guān)系,其實就是個名稱而已。

上面這個觸發(fā)器叫做R-S觸發(fā)器,它有2個輸入端S(Set)和R(Reset),2個輸出端Q和~Q(實在打不出Q上面的橫線o(╥﹏╥)o)。

當S為1時,輸出Q為1,~Q為0;當R為1時,輸出Q為0,~Q為1;當S和R都為0時,輸出Q和~Q保持不變;當S和R都為1時是一個不正確的狀態(tài),我們不使用這個狀態(tài)。

不是特別繞吧?畫個表:

506f62f6-a86f-11eb-9728-12bb97331649.png

R-S觸發(fā)器最大特點就是它能記住2個輸入端的狀態(tài)。想要記住上一次的狀態(tài)時,把2個輸入端都置0就可以了。

每次畫2個或非門太麻煩,封裝一下:

507ef9a0-a86f-11eb-9728-12bb97331649.png

end

有了觸發(fā)器,計算機除了算些加減乘除、與或非邏輯運算,開始具備了存儲功能,我覺得觸發(fā)器真是一個神奇的存在,把平平無奇的門電路連起來竟然就賦予了計算機「記憶」。

計算機中寄存器(Register)、內(nèi)存(RAM)最最基礎(chǔ)的組成單元就是觸發(fā)器。

理解了觸發(fā)器的工作原理,也就理解了內(nèi)存的工作原理。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5433

    瀏覽量

    124396
  • RAM
    RAM
    +關(guān)注

    關(guān)注

    8

    文章

    1392

    瀏覽量

    117455
  • 計算機
    +關(guān)注

    關(guān)注

    19

    文章

    7658

    瀏覽量

    90741
  • 觸發(fā)器
    +關(guān)注

    關(guān)注

    14

    文章

    2039

    瀏覽量

    62129

原文標題:一文搞清楚硬件加法器和觸發(fā)器

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    rs觸發(fā)器的工作原理 rs觸發(fā)器和sr觸發(fā)器的區(qū)別

    RS觸發(fā)器(Reset-Set觸發(fā)器)和SR觸發(fā)器(Set-Reset觸發(fā)器)是數(shù)字電路中常用的兩種基本
    的頭像 發(fā)表于 10-21 10:06 ?7154次閱讀

    怎么用jk觸發(fā)器變成t觸發(fā)器

    將JK觸發(fā)器變成T觸發(fā)器,主要涉及到對JK觸發(fā)器的輸入端口進行適當?shù)倪B接和配置,以實現(xiàn)T觸發(fā)器的邏輯功能。以下是將JK
    的頭像 發(fā)表于 08-28 09:41 ?4956次閱讀

    JK觸發(fā)器是一種什么穩(wěn)態(tài)電路

    JK觸發(fā)器是一種具有兩個穩(wěn)態(tài)的數(shù)字邏輯電路,廣泛應(yīng)用于數(shù)字電路設(shè)計中。 引言 在數(shù)字電路設(shè)計中,觸發(fā)器是一種非常重要的基本邏輯元件。
    的頭像 發(fā)表于 08-22 10:39 ?2036次閱讀

    d觸發(fā)器和jk觸發(fā)器的區(qū)別是什么

    引言 數(shù)字電路是現(xiàn)代電子技術(shù)的基礎(chǔ),廣泛應(yīng)用于計算機、通信、控制等領(lǐng)域。觸發(fā)器是數(shù)字電路中的一種基本邏輯元件,具有存儲和傳遞信息的功能。 觸發(fā)器
    的頭像 發(fā)表于 08-22 10:37 ?3919次閱讀

    t觸發(fā)器變?yōu)閐觸發(fā)器的條件

    在數(shù)字電路設(shè)計中,觸發(fā)器是一種非常重要的存儲元件,用于存儲一位二進制信息。觸發(fā)器的種類很多,其中最為常見的有JK觸發(fā)器、D觸發(fā)器和T
    的頭像 發(fā)表于 08-22 10:33 ?2872次閱讀

    觸發(fā)器的內(nèi)部結(jié)構(gòu)是什么

    觸發(fā)器的內(nèi)部結(jié)構(gòu)因類型和設(shè)計而異,但通常包括一些基本的組成部分,如存儲元件、控制門電路和反饋電路。以邊沿觸發(fā)器為例,其內(nèi)部結(jié)構(gòu)相對復(fù)雜,但可以通過分解其關(guān)鍵組成部分來詳細闡述。
    的頭像 發(fā)表于 08-12 14:43 ?1515次閱讀

    邊沿觸發(fā)器計算機中的應(yīng)用

    邊沿觸發(fā)器計算機中的應(yīng)用極為廣泛,它們作為數(shù)字電路中的基本單元,對于實現(xiàn)計算機內(nèi)部的時序控制、數(shù)據(jù)存儲與傳輸、以及復(fù)雜邏輯功能等方面起著至關(guān)重要的作用。以下將從邊沿
    的頭像 發(fā)表于 08-12 14:20 ?1281次閱讀

    同步觸發(fā)器和邊沿觸發(fā)器的區(qū)別

    同步觸發(fā)器和邊沿觸發(fā)器是數(shù)字電路中兩種常見的觸發(fā)器類型,它們在觸發(fā)方式、工作原理、性能特點以及應(yīng)用場景等方面存在顯著的差異。
    的頭像 發(fā)表于 08-12 11:26 ?2886次閱讀

    雙穩(wěn)態(tài)觸發(fā)器的兩個基本性質(zhì)是什么

    的定義 雙穩(wěn)態(tài)觸發(fā)器是一種具有兩個穩(wěn)定狀態(tài)的邏輯電路,通常由兩個交叉耦合的反相門電路構(gòu)成。在沒有外部輸入信號的情況下,雙穩(wěn)態(tài)觸發(fā)器可以保
    的頭像 發(fā)表于 08-11 10:08 ?1375次閱讀

    t觸發(fā)器與d觸發(fā)器的區(qū)別和聯(lián)系

    在數(shù)字電路設(shè)計中,觸發(fā)器是一種非常重要的存儲元件,用于存儲一位二進制信息。觸發(fā)器的種類很多,其中最為常見的是T觸發(fā)器(Toggle Flip-Flop)和D
    的頭像 發(fā)表于 08-11 09:37 ?5555次閱讀

    主從觸發(fā)器和邊沿觸發(fā)器的特點及應(yīng)用

    在數(shù)字電路設(shè)計中,觸發(fā)器是一種非常重要的基本邏輯元件,用于存儲一位二進制信息。觸發(fā)器的種類繁多,但主要分為兩大類:主從觸發(fā)器(Master-Slave Flip-Flop)和邊沿
    的頭像 發(fā)表于 08-11 09:35 ?3846次閱讀

    主從觸發(fā)器是一種能防止什么現(xiàn)象的觸發(fā)器

    主從觸發(fā)器,也被稱為主從同步觸發(fā)器或主從鎖存觸發(fā)器,是一種在數(shù)字電路設(shè)計中廣泛使用的觸發(fā)器類型
    的頭像 發(fā)表于 08-11 09:18 ?1173次閱讀

    邊沿觸發(fā)器和主從觸發(fā)器的區(qū)別是什么

    邊沿觸發(fā)器和主從觸發(fā)器是數(shù)字電路中兩種常見的觸發(fā)器類型,它們在設(shè)計和應(yīng)用上有著明顯的區(qū)別。 觸發(fā)器的基本概念
    的頭像 發(fā)表于 08-09 17:33 ?1936次閱讀

    邊沿觸發(fā)器和脈沖觸發(fā)器有什么區(qū)別

    邊沿觸發(fā)器和脈沖觸發(fā)器是數(shù)字電路中常用的兩種觸發(fā)器,它們在觸發(fā)方式、觸發(fā)條件和
    的頭像 發(fā)表于 07-27 15:03 ?8276次閱讀

    數(shù)字電路觸發(fā)器的空翻現(xiàn)象及原因

    數(shù)字電路是現(xiàn)代電子技術(shù)的基礎(chǔ),廣泛應(yīng)用于計算機、通信、控制等領(lǐng)域。在數(shù)字電路中,觸發(fā)器是一種重要的存儲單元,用于存儲和傳遞信息。然而,在實際應(yīng)用中,
    的頭像 發(fā)表于 07-23 11:15 ?5776次閱讀