數字電路第1章(數制與數碼)-4_第1頁
數字電路第1章(數制與數碼)-4_第2頁
數字電路第1章(數制與數碼)-4_第3頁
數字電路第1章(數制與數碼)-4_第4頁
數字電路第1章(數制與數碼)-4_第5頁
已閱讀5頁,還剩67頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

2023/2/6共72頁1數字邏輯又名:數字電子技術、數字電路任課教師:韓建棟電話:150341753492023/2/6共72頁21、課程特點:數字電路是一門技術基礎課程,它是學習計算機組成原理、接口技術等計算機專業課程的基礎。既有豐富的理論體系,又有很強的實踐性。2、數字電路內容:(1)基礎:數制和碼制,邏輯代數等;(2)組合邏輯電路;(3)觸發器、時序邏輯電路;(4)數模轉換、脈沖的產生與整形(5)其他內容:存儲器、PLD等;2023/2/6共72頁33、課程任務(1)掌握數字電路和邏輯設計方面的基本理論、基本知識;(2)熟悉掌握組合邏輯電路和時序邏輯電路的分析和設計方法;2023/2/6共72頁44、教學過程(1)課堂講授52學時;(2)習題課10學時;(3)答疑課2學時;5、成績評定(1)期末成績70%(2)平時30%(作業+期中成績)2023/2/6共72頁5第一章數制和碼制2023/2/6共72頁6§1.1概述自然界的物理量模擬量數字量時間和數值連續變化的物理量。如:溫度、壓力、速度。用以傳遞、加工和處理模擬信號的電路稱為模擬電路.時間和數值都是離散的,而且每次增減變化都是某個最小量的整數倍.如:人數、物件.

數字電路.2023/2/6共72頁7tV(t)模擬信號:數字信號:tV(t)低電平上跳沿下跳沿高電平2023/2/6共72頁8數字信號的表示方式:

(1)采用二值數字來表示,即0、1數字。0為邏輯0,1為邏輯1;(2)采用邏輯電平來表示,即H和L;(3)采用數字波形來表示。tV(t)2023/2/6共72頁9

有兩種邏輯體制:

正邏輯體制規定:高電平為邏輯1,低電平為邏輯0。

負邏輯體制規定:低電平為邏輯1,高電平為邏輯0。

下圖為采用正邏輯體制所表示的邏輯信號:正邏輯與負邏輯:

邏輯0

邏輯0

邏輯0

邏輯1

邏輯1

2023/2/6共72頁10數字電路的特點:1.在數字電路中,只有高、低兩種電平,分別用1、0表示;凡具有兩個穩定狀態的元件,其狀態都可用來表示二進制的兩個數碼.2.抗干擾能力強,可靠性和準確性高,對元件精度要求不高;可通過增加二進制數的位數來提高電路的精度.3.數字電路能夠對輸入的數字信號進行各種算術運算和邏輯運算,具有一定的“邏輯思維”能力,易于實現各種控制和決策應用系統;4.數字信號便于存儲5.集成度高,通用性強。2023/2/6共72頁11數字電路在生活中的應用1.交通燈(計時和數碼顯示)交通綠燈亮30秒后,轉黃燈亮3秒再轉紅燈亮30秒,再進行下一周期循環,每一時刻保證只有一盞燈亮。人行道狀況當紅燈亮時,人行道綠燈亮,并顯示人可以通過余下來的時間;人行道綠燈亮25秒后發出蜂鳴聲3秒后停止;人行道綠燈亮28秒后轉人行道紅燈亮;2023/2/6共72頁12數字電路在生活中的應用2.防盜報警器(報警和密碼鎖)開鎖密碼由設計者確定:設置三位密碼且鎖內給定的密碼是可調的。功能要求使用10個按鍵表示0-9十個數字;連續輸入三個數字,當輸入代碼同鎖內給定的密碼一致,開鎖指示燈LT亮,表示開鎖;密碼連續輸入三次錯誤進行報警;2023/2/6共72頁13數字電路在生活中的應用3.四路搶答器(優先編碼器、定時器)功能要求數字搶答器定時10秒,無人搶答,蜂鳴器連續響1秒;若選手按下按鈕,蜂鳴器響1秒,鎖存選手號,由LED顯示選手號碼,禁止其余三組搶答;計分顯示:可進行加、減分數;給主持人設置一個控制按鈕,用來控制系統清0(LED滅)和搶答開始。2023/2/6共72頁14§1.2幾種常用的數制表示數時,僅用一位數碼往往不夠用,必須用進位計數的方法組成多位數碼。多位數碼每一位的構成以及從低位到高位的進位規則稱為進位計數制,簡稱數制。數制:2023/2/6共72頁15位權(位的權數):在某一進位制的數中,每一位的大小都對應著該位上的數碼乘上一個固定的數,這個固定的數就是這一位的權數。權數是一個冪?;鶖担哼M位制的基數,就是在該進位制中可能用到的數碼個數。2023/2/6共72頁16以10為基數的計數體制,用字母D表示數碼為:0~9;運算規律:逢十進一,借一當十;即:9+1=10。十進制數的權展開式:D=∑ki×10i一、十進制

例1:(143.75)D=1×102+4×101+3×100+7×10-1+5×10-2

若在數字電路中采用十進制必須要有十個電路狀態與十個計數碼相對應。將在技術上帶來許多困難,很不經濟。位權系數2023/2/6共72頁17以2為基數的計數體制,用字母B表示數碼為:0、1;運算規律:逢二進一,借一當二;即:1+1=10。二、二進制二進制數的權展開式:D=∑ki×2i(101.11)B=1×22

+0×21+1×20+1×2-1+1×2-2

=(5.75)D各數位的權是2的冪位權系數例2:2023/2/6共72頁18二進制的優缺點:可行性:只有0,1兩種狀態,很容易用物理器件來實現;可靠性:數碼存儲與傳輸簡單可靠,不易出錯;簡易性:運算規則簡單;邏輯性:0,1分別代表邏輯上的“假”和“真”,可使用邏輯代數這一數學工具;缺點:位數較多,使用不便;不符合人們的習慣。2023/2/6共72頁19以8為基數的計數體制,用字母O表示數碼為:0~7;運算規律:逢八進一,借一當八。即:7+1=10。八進制數的權展開式:D=∑ki×8i三、八進制(207.04)O=2×82

+0×81+7×80+0×8-1+4×8-2=(135.0625)D各數位的權是8的冪例3:2023/2/6共72頁20數碼為:0~9、A~F;基數是16,用H來表示。運算規律:逢十六進一,即:F+1=10。十六進制數的權展開式:D=∑ki×16i四、十六進制(2A.7F)H=2×161+10×160+7×16-1+15×16-2=(42.4960937)D各數位的權是16的冪例4:2023/2/6共72頁212023/2/6共72頁22一、任意進制轉換為十進制方法:將任意進制數按權展開求和§1.3不同數制間的轉換(1011.01)2=1×23

+0×22

+1×21+1×20+0×2-1+1×2-2

=(11.25)10(4E6)H=4×162

+14×161

+6×160

=(1254)10(123)O=1×82

+2×81

+3×80

=(

83)10例5:2023/2/6共72頁23二、十進制(Decimal)轉換為任意進制方法:將整數和小數部分分別進行轉換整數部分:基數連除取余法(輾轉相除)小數部分:基數連乘取整法(乘2法)以十進制轉換二進制為例:2023/2/6共72頁24a.整數部分:輾轉相除法:將十進制數除以2,取其余數得D0,再將商除以2,取其余數得D1,……,直至商為零,所得余數由低位到高位排列,即為所求二進制數.(×××)D=(…

D2D1D0)B2023/2/6共72頁25652余數=1=D0322余數=0=D1162余數=0=D282余數=0=D342余數=0=D422余數=0=D512余數=1=D60所以例6:將十進制數65轉換為二進制數:取余數自下而上2023/2/6共72頁26解:由于二進制數基數為2,所以逐次除以2,取其余數(0或1):5322621322623120商余數101011LSBMSB所以:(53)D=(110101)B

練習1:將十進制數53轉換成二進制數。2023/2/6共72頁27b.小數部分:乘2法將十進制數的小數部分乘2,取其整數得D-1,;再將小數部分乘2,取其整數得D-2;再將小數部分乘2…(×××)D=(0.D-1D-2D-3…

)B2023/2/6共72頁280.625×21.250整數部分=1=D-10.250×20.500整數部分=0=D-20.500×21.000整數部分=1=D-3所以例7:將十進制數0.625轉換為二進制數:取余數自上而下2023/2/6共72頁29練習2:(0.39)

10=(?)2

取整

0.39×2=0.7800.78×2=1.5610.56×2=1.1210.12×2=0.2400.24×2=0.4800.48×2=0.9600.96×2=1.9211.92×2=1.841

…小數部分乘2取整的過程不一定能使最后乘積為0,因此轉換值存在一定的誤差。通常在二進制小數的精度達到預定的要求時,運算便可結束。(0.39)

10=(0.01100011)2精度為2-82023/2/6共72頁30采用基數連除、連乘法可將十進制數轉換為任意的N進制數。例8:將(52.39)10轉換為八進制數?解:①先將整數52轉換為八進制數:

商余數52/8=646/8=06②再將小數0.39轉換為八進制數:

取整0.39×8=3.1230.12×8=0.9600.96×8=7.6870.68×8=5.445所以,(52.39)10=(64.3075)8;精度為:8-4=0.024%2023/2/6共72頁31三、二進制轉換為十六進制

方法:將二進制數由小數點開始,整數部分向左,小數部分向右,每4位分成一組,不夠4位補零,則每組二進制數便是一位十六進制數。(1011110.1011001)200=(5E.B2)16關鍵是小數部分將十進制數轉換成十六進制數時,可先轉換成二進制數,再將得到的二進制數轉換成等值的十六進制數。例9:2023/2/6共72頁32=(100011111010.11000110)2

四、十六進制轉換為二進制方法:將每位十六進制數用4位二進制數表示例10:(8FA.C6)162023/2/6共72頁33五、八進制數與二進制數的轉換方法:按照每3位二進制數對應于一位八進制數進行轉換。(1101010.01)2=(152.2)8

000

(374.26)8=(011111

100.010

110)2將十進制數轉換成八進制數時,可先轉換成二進制數,再將得到的二進制數轉換成等值的八進制數。例11:2023/2/6共72頁341、真值數:直接用“+”和“–”表示符號的二進制數,不能在機器使用.2、機器數:一般將符號位放在數的最高位,將符號數值化了的二進制數,可在機器中使用。例12:§1.4二進制算術運算帶符號的二進制數具有三種形式:原碼、反碼和補碼

+1011001的機器數為(01011001)-1011001的機器數為(11011001)2023/2/6共72頁35原碼"符號+數值表示",最高位作為符號位.對于正數,符號位為0;對于負數,符號位為1,其余各位表示數值部分。例13:

[+45]原=00101101;[–45]原=10101101真值0有兩種原碼表示形式,即:

[+0]原=00000000 [–0]原=10000000一、原碼、反碼和補碼原碼特點:原碼表示簡單、直觀,而且與真值轉換方便,但用原碼進行減法運算時,電路結構復雜,不容易實現,因此引入了反碼和補碼。

2023/2/6共72頁36反碼對于正數,反碼表示與原碼表示相同;對于負數,符號位為1,其余各位是將原碼數值按位求反。真值0也有兩種反碼表示形式,即

[+0]反=00000000 [–0]反=11111111例14:

[+45]原=00101101;[–45]原=10101101[+45]反=00101101;[–45]反=110100102023/2/6共72頁37補碼對于正數,補碼表示與原碼表示相同;對于負數,符號位為1,其余各位是在反碼數值的末位加"1".真值0只有一種補碼形式,即

[–0]補=[–0]反+1=11111111+1

=100000000丟棄例15:

[+45]原=00101101;[–45]原=10101101[+45]反=00101101;[–45]反=11010010[+45]補=00101101;[–45]補=110100112023/2/6共72頁38例16:已知十進制數+6和-5,試分別用4位字長和8位字長的二進制補碼來表示。解:注意:機器數表示的范圍受字長和數據類型的限制。例如,字長為8位的整數,則最大的正數01111111,最高位為符號位,即最大值為127。若數值超出127,就要“溢出”。2023/2/6共72頁39

正數:補碼=原碼;負數:按照求負數補碼的逆過程,數值部分應是最低位減1,然后取反。但是對二進制數來說,先減1后取反和先取反后加1得到的結果是一樣的,故仍可采用取反加1的方法。結論1:補碼的補碼是原碼。2023/2/6共72頁40

結論2:n位字長的二進制碼所表示的數值范圍是:

原碼:反碼:補碼:

)12(1---n~)12(1-+-n

)12(1---n~)12(1-+-n

12--n~)12(1-+-n

(不含-0)

例如,4位字長的原碼、反碼其數值表示范圍均為:-7~-0,+0~

+7(共16個數),而補碼的范圍則為-8~0~

+7

(共16個數)

。+0的原碼、反碼、補碼均為0000;-8代替-0,只有補碼(1000),而沒有原碼和反碼。2023/2/6共72頁41原碼運算:符號位不參與運算,單獨處理。二、二進制(機器數)算術運算設A、B表示絕對值,有下列兩類情況:(+A)-(+B)=(+A)+(-B);(-A)-(-B)=(-A)+(+B)(+A)+(+B)=(+A)-(-B);(-A)+(-B)=(-A)-(+B)(1)同號數相加或異號數相減,運算規則為絕對值相加,取被加(減)數的符號。(2)同號數相減或異號數相加。運算規則為絕對值相減,取絕大值較大者的符號。2023/2/6共72頁42解:[N1]原=10011,[N2]原=01011求[N1+N2]原,絕對值相減,有1011-)00111000結果取N2的符號,即:[N1+N2]原=01000例17:N1=-0011,N2=1011,求:[N1+N2]原2023/2/6共72頁43求[N1-N2]原,絕對值相加,有0011+)10111110結果取被減數N1的符號,即:[N1-N2]原=11110真值為:-1110例18:N1=-0011,N2=1011,求:[N1-N2]原解:[N1]原=10011,[N2]原=010112023/2/6共72頁441001

×01011001000010010000

0101101

乘法運算除法運算01010101100001010110010100101.11…2023/2/6共72頁45采用原碼算術運算的缺點:做減法運算時,需要比較兩個數絕對值大小,將絕對值大的數作為被減數,求差值,并以絕對值大的數的符號作為差值的符號.該過程中,需要使用數值比較電路和減法運算電路,比較麻煩!2023/2/6共72頁46補碼運算:

在數字系統中,利用補碼可以方便地進行帶符號二進制數的加、減運算。

采用補碼進行加、減法[X±Y]運算的步驟如下:(1)分別求出[X]補、[±Y]補,根據法則:[X±Y]補=[X]補+[±Y]補,求出[X±

Y]補。(2)補碼相加時,符號位參與運算,若符號位有進位,則自動舍去。(3)根據[X±Y]補的結果求出[X±Y]原,進而求出X±Y的結果。

注意:采用補碼進行運算,所得結果仍為補碼;2023/2/6共72頁47例19:

X

=-0011,Y

=+1011,求[X

+Y]原解:

[X]補=11101,[Y

]補=01011,[X

+Y]補=[X]補+[Y]補

=11101+01011=0100011101+)01011101000丟棄則:[X

+Y]補=01000,符號位0,[X+Y]原=010002023/2/6共72頁48[X

-Y]補=[X]補+[-Y]補

=11101+10101=1001011101+)10101110010丟棄則:[X-Y]補=10010,符號位1,[X-Y]原=11110例20:

X

=-0011,Y

=+1011,求[X-Y]原解:

[X

]補=11101,[-Y

]補=101012023/2/6共72頁49舍去練習3:計算(1001)2-

(0101)2

1001-01010100

補碼

補碼

01001+11011

1

00100采用補碼進行算術運算優點:二進制加、減、乘、除都可以用加法與移位運算來實現。減法變加法2023/2/6共72頁50思考:利用補碼計算(+72)+

(+98)=?(-83)+(-80)=?

01001000

10101101+

10110000

01011101+0110001010101010兩個正數相加怎么成了負數?兩個負數相加怎么成了正數?(-83)(-80)(+93)

(72)(98)(-86)

2023/2/6共72頁51注意:兩個符號數相加時,她們的絕對值之和不可超過有效數字位所能表示的最大范圍,否則會得出錯誤的計算結果。(+72)+(+98)=170,(-83)+(-80)=-163

0

01001000

110101101+

110110000101011101+0

01100010010101010而7位有效數字位所能表示的范圍為:-127~127。因此,要表示170(或-163)需要用8位有效數字位。

(72)(98)(170)

(-83)(-80)(-163)

進行補碼運算時,所得結果不應超過補碼所能表示數的范圍,即需要考慮“幾位有效數字位”。2023/2/6共72頁52§1.5幾種常用的編碼常用的數字1、2、3……9、0,通常有兩大用途:表示大?。?0000,8848米。表示編碼:000213班,8341部隊。

指定某一數碼組合去代表某個給定的信息,這一過程就是編碼,而將表示給定信息的這組符號叫做代碼。

代碼特點:不具有數量大小的含義!十進制代碼2023/2/6共72頁53

在人機交互過程中,為了既滿足系統中使用二進制數的要求,又適應人們使用十進制數的習慣,通常用4位二進制代碼對十進制數字符號進行編碼,簡稱為二-十進制代碼,或稱BCD(BinaryCodedDecimal)碼。它既有二進制的形式,又有十進制的特點。四位二進制有16種組合.在16種組合中挑出10個,分別表示0~9,怎么挑呢?不同的挑法構成了不同的代碼。

2023/2/6共72頁54十進制代碼分類:有權碼1、8421碼

用四位自然二進制碼中的前十個碼字來表示十進制數碼,因各位的權值依次為8、4、2、1,故稱8421碼。

位權0123456789十進制數842100000001001000110100010101100111100010018421碼2023/2/6共72頁55十進制代碼分類:有權碼8421碼的說明:按8421碼編碼的0~9與用4位二進制數表示的0~9完全一樣。

8421碼中不允許出現1010~1111四種組合,因為沒有十進制數碼與其對應。十進制數字符號的8421碼與相應ASCII碼的低四位相同,這一特點有利于簡化輸入輸出過程中BCD碼與字符代碼的轉換。2023/2/6共72頁568421碼的運算:1.8421碼與十進制數之間的轉換

8421碼與十進制數之間的轉換是按位進行的,即十進制數的每一位與4位二進制編碼對應。例21:

(258)10=(001001011000)8421碼

(0001001000001000)8421碼

=(1208)10

2.8421碼與二進制的區別

例22:(28)10=(11100)2=(00101000)8421不能省略2023/2/6共72頁57十進制代碼分類:有權碼2、2421碼各位的權值依次為2、4、2、1。若一個十進制字符X的2421碼為a3a2a1a0,則該字符的值為:X=2a3+4a2+2a1+1a0

2023/2/6共72頁58十進制代碼分類:有權碼2421碼的運算:

1、2421碼與十進制數之間的轉換同樣是按位進行的,

例23:(258)10=(001010111110)2421碼

(0010000111101011)2421碼=(2185)102、2421碼與二進制數的區別

例24:

(28)10=(11100)2=(00101110)24212023/2/6共72頁592421碼的說明:2421碼不具備單值性。例如,0101和1011都對應十進制數字5。為了與十進制字符一一對應,2421碼不允許出現0101~1010的6種狀態。

2421碼是一種對9的自補代碼。

一個數的2421碼只要自身按位變反,便可得到該數對9的補數的2421碼。例如,4對9的補數是5,將4的2421碼0100按位變反,便可得到5的2421碼1011。具有這一特征的BCD碼可給運算帶來方便,因為直接對BCD碼進行運算時,可利用其對9的補數將原碼減法運算轉化為反碼加法運算。

2023/2/6共72頁60十進制代碼分類:有權碼3、5211碼

各位的權值依次為5、2、1、1。4、5421碼各位的權值依次為5、4、1、1。2023/2/6共72頁61十進制代碼分類:無權碼5、余3碼由8421碼加0011得到,是一種無權碼。由于它的每個字符編碼比相應8421碼多3,故稱為余3碼

位權0123456789十進制數842100000001001000110100010101100111100010018421碼余3碼0011010001010110011110001001101010111100無權位2023/2/6共72頁62余3碼的說明:

余3碼有6種狀態0000、0001、0010、1101、1110和1111是不允許出現的。余3碼也是一種對9的自補代碼,因而可給運算帶來方便。2023/2/6共72頁63十進制代碼分類:有權碼余3碼的運算:

1、余3碼與二進制數的轉換

例25:二進制(11011001.1)2,對應的余3代碼是什么?

(11011001.1)B=1×27+1×26+1×24+1×23+1+1×2-1=(217.5)D

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論