數字電路和邏輯相關設計_第1頁
數字電路和邏輯相關設計_第2頁
數字電路和邏輯相關設計_第3頁
數字電路和邏輯相關設計_第4頁
數字電路和邏輯相關設計_第5頁
已閱讀5頁,還剩72頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數字電路和邏輯相關設計 課程性質與教學目標課程性質與教學目標 課程性質:課程性質:“數字電路”是信息學科各專業(yè)本、專科學生必修的一門專業(yè)技術基礎課。該課程在介紹有關數字系統(tǒng)基本知識、基本理論、及常用數字集成電路的基礎上,重點討論數字邏輯電路分析與設計的基本方法。 從計算機的層次結構上講,從計算機的層次結構上講, “數字電路數字電路”是深是深入了解計算機入了解計算機“內核內核” 的一門最關鍵的基礎課程。的一門最關鍵的基礎課程。 教學目標:教學目標:本課程的教學目標是使學生了解組成數字系統(tǒng)的各種數字電路,能熟練地運用基本知識和理論對各類電路進行分析,并能根據客觀提出的設計要求用合適的集成電路芯片完

2、成各種邏輯部件的設計。 通過本課程的學習,要求學生掌握對數字系統(tǒng)通過本課程的學習,要求學生掌握對數字系統(tǒng)硬件進行分析、設計和開發(fā)的基本技能硬件進行分析、設計和開發(fā)的基本技能教教 學學 安安 排排教學時數教學時數 : 8080學時學時 教教 材材 :數字電路數字電路 面向面向2121世紀系列教材世紀系列教材 歐陽星明歐陽星明主編主編華中科技大學出版社華中科技大學出版社 教學內容教學內容: 基本知識、基本知識、 基本理論、基本理論、 基本器件;基本器件; 基于小規(guī)模集成電路的邏輯電路分析與設計;基于小規(guī)模集成電路的邏輯電路分析與設計; 中規(guī)模通用集成電路及應用;中規(guī)模通用集成電路及應用; 大規(guī)???/p>

3、編程邏輯器件及應用。大規(guī)??删幊踢壿嬈骷皯谩H绾螌W好數字電路?如何學好數字電路?一一. .掌握課程特點掌握課程特點 1. 1.本課程是一門既抽象又具體的課程。本課程是一門既抽象又具體的課程。在邏輯問題的提取和描述方面是抽象的,而在邏輯問題的實現(xiàn)上是具體的。因此,學習中既要務虛,又要務實。 2. 2.邏輯設計方法十分靈活。邏輯設計方法十分靈活。數字系統(tǒng)中,邏輯電路的分析與設計具有很大的靈活性。許多問題的處理沒有固定的方法和步驟,很大大程度上取決于操作者的邏輯思維推理能力、知識廣度和深度、以及解決實際問題的能力。換而言之,邏輯電路的分析與設計具有較大的彈性和可塑性。 3. 3.理論知識與實際應

4、用結合十分緊密。理論知識與實際應用結合十分緊密。該課程各部分知識與實際應用直接相關,學習中必須將理論知識與實際問題聯(lián)系起來。真正培養(yǎng)解決實際問題的能力。 二二. .重視課堂學習重視課堂學習1.1.認真聽課。認真聽課。聽課時要緊跟教師授課思路,認真領會每一個知識要點,抓住書本上沒有的內容,琢磨重點與難點。 2. 2. 做好筆記。做好筆記。適當地記錄某些關鍵內容,尤其是那些重點、難點、疑點,以便課后復習、思考。3. 3. 主動思考。主動思考。聽課時圍繞教師所述內容及提出的問題,主動思考問題,尋找自己的見解。三三. .培養(yǎng)自學能力培養(yǎng)自學能力1. 1. 認真閱讀教材內容。認真閱讀教材內容。通過閱讀教

5、材,理解各知識要點,吃透難點,建立各部分知識之間的相互聯(lián)系。 2. 2. 善于總結、歸納。善于總結、歸納。注意及時總結所學知識,歸納出各部分的重點和難點,力求深入透徹地了解。3. 3. 加強課后練習。加強課后練習。通過做練習,不僅可以鞏固所學知識,而且能暴露學習中存在的問題,迫使自己做更深入的了解。4.4.積極參與學習討論。積極參與學習討論。通過學習討論,營造一個各抒己見、取長補短、互教互學、共同提高的學習環(huán)境,使之真正達到集思廣益的效果。5.5.廣泛閱讀,拓寬知識面。廣泛閱讀,拓寬知識面。通過閱讀相關的參考書籍,不僅能加深對所學知識的理解,而且能拓寬知識面。有利于從更廣度和深度加強對課程意義

6、的理解。四四. .注重理論聯(lián)系實際注重理論聯(lián)系實際1. 1. 將書本知識與工程實際統(tǒng)一。將書本知識與工程實際統(tǒng)一。學習中注意書本知識與工程應用存在的差別,將理論與實際統(tǒng)一。2. 2. 將理論知識與實際應用結合。將理論知識與實際應用結合。學習的目的是應用。應從社會需求出發(fā),將所學知識用于解決實際問題。 7 基基 本本 知知 識識第第 一一 章章 8 本章知識要點:本章知識要點: 常用的幾種編碼常用的幾種編碼 。 帶符號二進制數的代碼表示帶符號二進制數的代碼表示 ;常用計數制及其轉換常用計數制及其轉換 ;數字系統(tǒng)的基本概念數字系統(tǒng)的基本概念 ; 9 1.1 1.1 概概 述述數字系統(tǒng)數字系統(tǒng) 什么

7、是數字系統(tǒng)什么是數字系統(tǒng)? ? 數字系統(tǒng)是一個能對數字信號進行加工、傳遞和存儲的實體,它由實現(xiàn)各種功能的數字邏輯電路相互連接而成。例如,數字計算機。 一、數字信號一、數字信號若信號的變化在時間上和數值上都是離散的,或者說斷續(xù)的,則稱為離散信號。離散信號的變化可以用不同的數字反映,所以又稱為數字信號,簡稱為數字量。 例如,學生成績記錄,工廠產品統(tǒng)計,電路開關的狀態(tài)等。 數字系統(tǒng)中處理的是數字信號,當數字系統(tǒng)要與模擬信號發(fā)生聯(lián)系時,必須經過模/數(A/D)轉換和數/模(D/A)轉換電路,對信號類型進行變換。10 例如,某控制系統(tǒng)框圖如下圖所示。 執(zhí)行機構執(zhí)行機構 數字量數字量 數字量數字量 模擬量

8、模擬量 模擬量模擬量 控制信號控制信號 被測參數被測參數 一次儀表一次儀表 計算機計算機被控對象被控對象 D/A A/D 11 二、數字邏輯電路二、數字邏輯電路用來處理數字信號的電子線路稱為數字電路。數字電路。由于數字電路的各種功能是通過邏輯運算和邏輯判斷來實現(xiàn)的,所以數字電路又稱為數字邏輯電路數字邏輯電路或者邏輯電路。邏輯電路。 (1)電路的基本工作信號是二值信號。它表現(xiàn)為電路中電壓的“高”或“低”、開關的“接通”或“斷開”、晶體管的“導通”或“截止”等兩種穩(wěn)定的物理狀態(tài)。 (2)電路中的半導體器件一般都工作在開、關狀態(tài)。 數字邏輯電路具有如下特點特點: (3)電路結構簡單、功耗低、便于集成

9、制造和系列化生產;產品價格低廉、使用方便、通用性好。 (4)由數字邏輯電路構成的數字系統(tǒng)工作速度快、精度高、功能強、可靠性好。 12 由于數字邏輯電路具有上述特點,所以,數字邏輯電路的應用十分廣泛。 隨著半導體技術和工藝的發(fā)展,出現(xiàn)了數字集成電路,集成電路發(fā)展十分迅速。 數字集成電路按照集成度的高低可分為小規(guī)模(數字集成電路按照集成度的高低可分為小規(guī)模(SSI)、)、中規(guī)模(中規(guī)模(MSI)、大規(guī)模()、大規(guī)模(LSI)和超大規(guī)模()和超大規(guī)模(VLSI)幾種)幾種類型。類型。13 數字計算機是一種能夠自動、高速、精確地完成數值數字計算機是一種能夠自動、高速、精確地完成數值計算、數據加工和控制

10、、管理等功能的數字系統(tǒng)。計算、數據加工和控制、管理等功能的數字系統(tǒng)。其結構框圖如下圖所示。 1數字計算機數字計算機 三三. 數字計算機及其發(fā)展數字計算機及其發(fā)展存 儲 器 控制器 輸入設備 運算器 輸出設備 輸入輸出14 數字計算機從1946年問世以來,其發(fā)展速度是驚人的。根據組成計算機的主要元器件的不同,至今已經歷了四代。具體如下表所示。 2計算機的發(fā)展計算機的發(fā)展 美 國 1971年 中、大規(guī)模集成電路 第四代 美 國 1964年 小規(guī)模集成電路 第三代 美 國 1958年 晶體管 第二代 美 國 1946年 電子管 第一代 國 家 生產時間 主要元器件 劃 代 數字計算機的劃代 計算機的

11、發(fā)展趨勢:速度發(fā)展趨勢:速度、功能、功能、可靠性、可靠性、體積、體積、價格價格、功耗、功耗。 15 伴隨著微電子技術的飛速發(fā)展,進一步加速了計算機的發(fā)展與普及,目前廣泛使用的微型計算機就是建立在超大規(guī)模集成電路基礎之上的。以個人計算機為例,PC機CPU芯片8086的集成規(guī)模如下表所示。 320 萬個晶體管 8 0 5 8 6 120 萬個晶體管 8 0 4 8 6 32 萬個晶體管 8 0 3 8 6 13.5 萬個晶體管 8 0 2 8 6 2.9 萬個晶體管 8 0 8 6 集 成 度 芯 片 型 號 8086的集成規(guī)模在80586CPU中,密集程度如何呢?密集程度如何呢?大約用500個晶

12、體管串接起來才能繞人的頭發(fā)絲一周! 16 全球最大計算機芯片生產商英特爾公司,已制造出一種比市面上現(xiàn)有最高速處理器快十倍的處理器,這種處理器芯片上的晶體管,厚度只有零點零三微米,相當于只有三個原厚度只有零點零三微米,相當于只有三個原子的大小。子的大小。 市面現(xiàn)有芯片所使用的最小晶體管,尺寸為零點一八微米,英特爾新芯片的晶體管則小很多。這些晶體管一個接著這些晶體管一個接著一個排列,要超過十萬個才能達到一張普通紙張的厚度。一個排列,要超過十萬個才能達到一張普通紙張的厚度。 英特爾公司人員表示,使用這種芯片制造的計算機,能透過語音和使用者進行互動,許多科幻小說中所描述計算機各種神奇的功能將獲得實現(xiàn)。

13、 英特爾將在今日(周一)正式宣布這項突破性進展,不過這種芯片要到二五年左右才會正式面市。 (完) 載自:17 1.1.2 數字邏輯電路的類型和研究方法數字邏輯電路的類型和研究方法 由于這類電路的輸出與過去的輸入信號無關,所以不需要有記憶功能。例如,一個“多數表決器”,表決的結果僅取決于參予表決的成員當時的態(tài)度是“贊成”還是“反對”,因此屬于組合電路。 一、數字邏輯電路的類型一、數字邏輯電路的類型 組合邏輯電路組合邏輯電路 : 如果一個邏輯電路在任何時刻的穩(wěn)定輸出僅取決于該時刻的輸入,而與電路過去的輸入無關,則稱為組合邏輯(Combinational Logic)電路。根據一個電路是否具有記憶功

14、能,可將數字邏輯電路分為組合邏輯電路組合邏輯電路和時序邏輯電路時序邏輯電路兩種類型。18 時序邏輯電路按照是否有統(tǒng)一的時鐘信號進行同步,又可進一步分為同步時序邏輯電路同步時序邏輯電路和異步時序邏輯電路。異步時序邏輯電路。 時序邏輯電路時序邏輯電路: 如果一個邏輯電路在任何時刻的穩(wěn)定 輸出不僅取決于該時刻的輸入,而且與過去的輸入相關,則 稱為時序邏輯(Sequential Logic)電路。由于這類電路的輸出與過去的輸入相關,所以要用電路中記憶元件的狀態(tài)來反映過去的輸入信號。例如,一個統(tǒng)計串行輸入脈沖信號個數的計數器,它的輸出結果不僅與當時的輸入脈沖相關,還與前面收到的脈沖個數相關,因此,計數器

15、是一個時序邏輯電路。19 二、數字邏輯電路的研究方法二、數字邏輯電路的研究方法 對數字系統(tǒng)中邏輯電路的研究有兩個主要任務兩個主要任務:一是分析分析,二是設計設計。 對一個已有的數字邏輯電路,研究它的工作性能和邏輯功能稱為邏輯分析邏輯分析; 根據提出的邏輯功能,在給定條件下構造出實現(xiàn)預定功能的邏輯電路稱為邏輯設計邏輯設計,或者邏輯綜合邏輯綜合。 邏輯電路分析與設計的方法隨著集成電路的迅速發(fā)展在不斷發(fā)生變化,最成熟的方法是傳統(tǒng)的方法傳統(tǒng)的方法。 20 1邏輯電路分析和設計的傳統(tǒng)方法邏輯電路分析和設計的傳統(tǒng)方法傳統(tǒng)方法:傳統(tǒng)方法:傳統(tǒng)方法是建立在小規(guī)模集成電路基礎之上的,它以技術經濟指標作為評價一個

16、設計方案優(yōu)劣的主要性能指標,設計時追求的是如何使一個電路達到最簡。最簡。 如何達到最簡呢?如何達到最簡呢?在組合邏輯電路設計時,通過邏輯函數化簡,盡可能使電路中的邏輯門和連線數目達到最少。而在時序邏輯電路設計時,則通過狀態(tài)化簡和邏輯函數化簡,盡可能使電路中的觸發(fā)器、邏輯門和連線數目達到最少。 注意注意! 一個最簡的方案并不等于一個最佳的方案!一個最簡的方案并不等于一個最佳的方案! 最佳方案應滿足全面的性能指標和實際應用要求。所以,在用傳統(tǒng)方法求出一個實現(xiàn)預定功能的最簡結構之后,往往要根據實際情況進行相應調整。隨著集成電路技術的飛躍發(fā)展,數字邏輯電路的分析和設計方法在不斷發(fā)生變化。但用邏輯代數作

17、為基本理論的傳統(tǒng)方法始終邏輯電路分析和設計的基本方法。 21 2用中、大規(guī)模集成組件進行邏輯設計的方法用中、大規(guī)模集成組件進行邏輯設計的方法 由于中、大規(guī)模集成電路的不斷發(fā)展,使芯片內部容納的邏輯器件越來越多,因而,實現(xiàn)某種邏輯功能所需要的門和觸發(fā)器數量已不再成為影響經濟指標的突出問題。 用中、大規(guī)模集成組件去構造滿足各種功能的邏輯電路時,如何尋求經濟合理的方案呢?如何尋求經濟合理的方案呢?要求設計人員必須注意:必須注意: 充分了解各種器件的邏輯結構和外部特性,做到合理選擇器件; 充分利用每一個已選器件的功能,用靈活多變的方法完成各類電路或功能模塊的設計; 盡可能減少芯片之間的相互連線。 22

18、 3用可編程邏輯器件用可編程邏輯器件(PLD)進行邏輯設計的方法進行邏輯設計的方法 各類可編程邏輯器件(PLD)的出現(xiàn),給邏輯設計帶來了一種全新的方法。人們不再用常規(guī)硬線連接的方法去構造電路,而是借助豐富的計算機軟件對器件進行編程燒錄來實現(xiàn)各種借助豐富的計算機軟件對器件進行編程燒錄來實現(xiàn)各種邏輯功能,這給邏輯設計帶來了極大的方便。邏輯功能,這給邏輯設計帶來了極大的方便。 4用計算機進行輔助邏輯設計的方法用計算機進行輔助邏輯設計的方法 面對日益復雜的集成電路芯片設計和數字系統(tǒng)設計,人們不得不越來越多地借助計算機進行輔助邏輯設計借助計算機進行輔助邏輯設計。目前,已有各種設計數字系統(tǒng)的軟件在市場上出

19、售。計算機輔助邏輯設計方法正在不斷推廣和應用。不少人認為計算機設計自動化已形成計算機科學中的一個獨立的學科。23 1.2.1 進位計數制進位計數制數制是人們對數量計數的一種統(tǒng)計規(guī)律。日常生活中廣泛使用的是十進制,而數字系統(tǒng)中使用的是二進制。 1.2 1.2 數制及其轉換數制及其轉換 6666102 6101 6100如 (666)10=6102+6101+6100 同一個字符同一個字符6從左到右所代表的值依次為從左到右所代表的值依次為600、60、6。 即 十進制中采用了十進制中采用了0、1、9共十個基本數字符號,進共十個基本數字符號,進 0位規(guī)律是位規(guī)律是“逢十進一逢十進一”。當用若干個數字

20、符號并在一起表示 一個數時,處在不同位置的數字符號,其值的含意不同。一、十進制一、十進制24 廣義地說,一種進位計數制包含著基數基數和位權位權兩個基本 的因素: 基數基數: 指計數制中所用到的數字符號的個數。在基數為R 計數制中,包含0、1、R-1共R個數字符號,進位規(guī)律是 “逢R進一”。稱為R進位計數制,簡稱R進制。 位權位權: 是指在一種進位計數制表示的數中,用來表明不 同數位上數值大小的一個固定常數。不同數位有不同的位權, 某一個數位的數值等于這一位的數字符號乘上與該位對應的 位權。R進制數的位權是進制數的位權是R的整數次冪的整數次冪。 例如,十進制數的位權是10的整數次冪,其個位的位權

21、 是100,十位的位權是101。 二二. R進制進制25 一個一個R進制數進制數N可以有兩種表示方法:可以有兩種表示方法: (1) 并列表示法并列表示法(又稱位置計數法) (N)R = ( Kn-1Kn-2K1K0 . K-1K-2K-m )R (2) 多項式表示法多項式表示法(又稱按權展開法又稱按權展開法)(N)R = Kn-1Rn-1 + Kn-2Rn-2 +K1R1 + K0R0 + K-1R-1 + K-2R-2+ + K-mR-m 1nmiiiRK其中:其中:R R 基數;nn整數部分的位數; m 小數部分的位數; Ki Ki R進制中的一個數字符號,其取值范圍為 0 Ki R-1

22、(-min-1)。26 (3) 位權是位權是R的整數次冪,第的整數次冪,第i位的權為位的權為Ri (-min-1)。 R進制的特點可歸納如下:進制的特點可歸納如下: (1) 有有0、1、R-1共共R個數字符號個數字符號;(2) “逢逢R進一進一”,“10”表示表示R; 27 基數R=2的進位計數制稱為二進制。二進制數中只有0和1兩個基本數字符號,進位規(guī)律是“逢二進一逢二進一”。二進制數的位權是2的整數次冪。 三、二進制三、二進制 任意一個二進制數N可以表示成 其中:n整數位數;m小數位數; Ki 為0或者1, -min-1。 (N)2 = (Kn-1Kn-2K1K0.K-1K-2K-m)2 =

23、 Kn-12n-1+Kn-22n-2+K121+K020 +K-12-1+K-22-2+K-m2-m i1-nmii2K28 例如,一個二進制數可以表示成: (1011.01)2 = 123+022+121+120+02-1+12-2 二進制數的運算規(guī)則如下:二進制數的運算規(guī)則如下: 加法規(guī)則加法規(guī)則 0+0=0 0+1=1 0+0=0 0+1=1 1+0=1 1+1=0 ( 1+0=1 1+1=0 (進位為進位為1)1) 減法規(guī)則減法規(guī)則 0-0=0 1-0=1 0-0=0 1-0=1 1-1=0 0-1=1 ( 1-1=0 0-1=1 (借位為借位為1)1) 乘法規(guī)則乘法規(guī)則 0 00=0

24、 00=0 01=0 1=0 1 10=0 10=0 11=1 1=1 除法規(guī)則除法規(guī)則 0 01=0 11=0 11=1 1=1 29 例如,例如,二進制數A=11001,B=101,則A+B、A-B、AB、AB的運算為 1 1 0 0 11 1 0 0 1+ 1 0 1+ 1 0 11 1 1 1 01 1 1 1 01 1 0 0 11 1 0 0 1 - 1 0 1 - 1 0 11 0 1 0 01 0 1 0 01 1 0 0 11 1 0 0 1 1 0 1 1 0 11 1 0 0 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 + 1 1 0 0 1 + 1

25、1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 11 1 0 0 11 1 0 0 11 0 11 0 11 0 11 0 1 -1 0 1 -1 0 11 0 11 0 1 -1 0 1 -1 0 10 030 因為二進制中只有0和1兩個數字符號,可以用電子器件的兩種不同狀態(tài)來表示一位二進制數。例如,可以用晶體管的截止和導通表示1和0,或者用電平的高和低表示1和0等。所以,在數字系統(tǒng)中普遍采用二進制。在數字系統(tǒng)中普遍采用二進制。 二進制的優(yōu)點二進制的優(yōu)點: : 運算簡單、物理實現(xiàn)容易、存儲和傳送運算簡單、物理實現(xiàn)容易、存儲和傳送方便、可靠。方便、可靠。 二進制的缺點:數的

26、位數太長且字符單調,使得書寫、記憶二進制的缺點:數的位數太長且字符單調,使得書寫、記憶和閱讀不方便。和閱讀不方便。 因此,人們在進行指令書寫、程序輸入和輸出等工作時,通通常采用八進制數和十六進制數作為二進制數的縮寫常采用八進制數和十六進制數作為二進制數的縮寫。 31 四四、八八進制進制 基數R=8R=8的進位計數制稱為八進制。八進制數中有0 0、1 1、7 7共共8 8個基本數字符號,個基本數字符號,進位規(guī)律是“逢八進一逢八進一”。八進制數的位權是8的整數次冪。 任意一個八進制數N可以表示成 (N)8 =(Kn-1Kn-2K1K0 .K-1K-2K-m)8 = Kn-18n-1+Kn-28n-

27、2+K181+K080 +K-18-1+K-28-2+K-m8-m 1nmiii8K其中:n整數位數;m小數位數; Ki07中的任何一個字符,-m i n-1。 32 五、十六進制五、十六進制 基數R=16R=16的進位計數制稱為十六進制。十六進制數中有0 0、1 1、9 9、A A、B B、C C、D D、E E、F F共共1616個數字符號,個數字符號,其中,AF分別表示十進制數的1015。進位規(guī)律為“逢十六進逢十六進一一”。十六進制數的位權是16的整數次冪。 任意一個十六進制數N可以表示成 (N)16 = (Kn-1Kn-2K1K0 .K-1K-2K-m)16 = Kn-116n-1+K

28、n-216n-2+K1161+K0160 +K-116-1+K-216-2+K-m16-m 10iini16K其中:n整數位數;m小數位數;Ki表示09、AF 中的任何一個字符,-m i n-1。 33 十進制數015及其對應的二進制數、八進制數、十六進制數如下表所示。 十進制 二進制 八進制 十六進制 十進制 二進制 八進制 十六進制 十進制數與二、八、十六進制數對照表 0 0000 00 0 1 0001 01 1 2 0010 02 2 3 0011 03 3 4 0100 04 4 5 0101 05 5 6 0110 06 6 7 0111 07 7 8 1000 10 8 9 10

29、01 11 9 10 1010 12 A 11 1011 13 B 12 1100 14 C 13 1101 15 D 14 1110 16 E 15 1111 17 F34 數制轉換數制轉換 方法:多項式替代法方法:多項式替代法 一、二進制數與十進制數之間的轉換一、二進制數與十進制數之間的轉換 1二進制數轉換為十進制數二進制數轉換為十進制數 將二進制數表示成按權展開式,并按十進制運算法則進行計算,所得結果即為該數對應的十進制數。 例如,()例如,()2 2 = =(?)(?)1010 (10110.101)2= 124+122+121+12-1+12-3 = 16+4+2+0.5+0.125

30、 = (22.625)10數制轉換是指將一個數從一種進位制轉換成另一種進位制。從實際應用出發(fā),要求掌握二進制數與十進制數、八進制數和十六進制數之間的相互轉換。 35 方法:基數乘除法方法:基數乘除法十進制數轉換成二進制數時,應對整數和小數分別進行處理。 整數轉換采用“除除2 2取余取余”的方法; 小數轉換采用“乘乘2 2取整取整”的方法。 (1) (1) 整數轉換整數轉換 “除除2 2取余取余”法:法:將十進制整數N除以2,取余數計為K0;再將所得商除以2,取余數記為K1;。依此類推,直至商為0,取余數計為Kn-1為止。即可得到與N對應的n位二進制整 數Kn-1K1K0。 2十進制數轉換為二進

31、制數十進制數轉換為二進制數 36 例如,(例如,(3535)10 10 = =(?)(?)2 2 2 3 5 2 3 5 余數余數 2 1 7 2 1 7 1 1 (K K0 0) 低位低位 2 8 2 8 1 1 (K K1 1) 2 4 2 4 0 0 (K K2 2) 2 2 2 2 0 0 (K K3 3) 2 1 2 1 0 0 (K K4 4) 0 0 1 1 (K K5 5) 高位高位 即 (35)(35)1010=(100011)=(100011)2 2 37 例如例如,()1010 = =(?)(?)2 2 (2) (2) 小數轉換小數轉換 “乘乘2 2取整取整”法:法:將十

32、進制小數 N N 乘以2,取積的整數記為K1;再將積的小數乘以2,取整數記為K2;。依此類推,直至其小數為0或達到規(guī)定精度要求,取整數記作Km為止。即可得到與 N N 對應的m位二進制小數-1K-2K-m。 高位 1(K1(K-1-1) ) 1.3 7 5 0 1.3 7 5 0 0(K 0(K-2-2) ) 0.7 5 0 0 0.7 5 0 0 1(K 1(K-3-3) ) 1.5 0 0 0 1.5 0 0 0 0.6 8 7 5 0.6 8 7 5 整數部分 2 2 2 2低位 1(K1(K-4-4) ) 1.0 0 0 0 1.0 0 0 0 2 2 2 2即: (0.6875)(0

33、.6875)1010=(0.1011)=(0.1011)2 2 38 注意注意:當十進制小數不能用有限位二進制小數精確表示時,可根據精度要求,求出相應的二進制位數近似地表示。一般當要求二進制數取m位小數時,可求出m+1位,然后對最低位作0舍1入處理。即 (0.323)(0.323)1010=(0.0101)=(0.0101)2 2 例如,()例如,()1010 = =(?)(?)2 2 ( (保留保留4 4位小數位小數) )。 1.2 9 2 1.2 9 2 0.6 4 60.6 4 60.3 2 30.3 2 3 2 2 2 20.5 8 4 0.5 8 4 1.1 6 81.1 6 8 2

34、 2 2 20.3 3 6 0.3 3 6 2 2高位低位39 2 1 2 2 1 2 1 1 2 2 5 2 2 5 2 6 2 6 0 0 2 3 2 3 0 0 2 1 2 1 1 1 0 1 0 1 1.2 5 0 1.2 5 00.6 2 5 0.6 2 5 2 2 0.5 0 0 0.5 0 0 2 21.0 0 0 1.0 0 0 2 2即 (25.625)(25.625)1010=(11001.101)=(11001.101)2 2 若一個十進制數既包含整數部分,又包含小數部分,則需將整數部分和小數部分分別轉換,然后用小數點將兩部分結果連到一起。 例如,()例如,()10 =(

35、?)(?)2 40 二、二進制數與八進制數、十六進制數之間的轉換二、二進制數與八進制數、十六進制數之間的轉換 由于八進制的基本數字符號0 07 7正好和3位二進制數的取值000000111111對應。所以,二進制數與八進制數之間的轉換可以按位進行。 1二進制數與八進制數之間的轉換二進制數與八進制數之間的轉換 二進制數轉換成八進制數:二進制數轉換成八進制數:以小數點為界,分別往高、往低每3位為一組,最后不足3位時用0補充,然后寫出每組對應的八進制字符,即為相應八進制數。 例如,()例如,()2 2 = = (?)(?)8 8 011 100 101 . 010 3 4 5 . 2 即 (1110

36、0101.01)(11100101.01)2 2=(345.2)=(345.2)8 8 41 5 6 . 7 101 110 .111 即: (56.7)(56.7)8 8 = (101110.111)= (101110.111)2 2 例如,()例如,()8 8 = = (?)(?)2 2 八進制數轉換成二進制數時,只需將每位八進制數用3位二進制數表示,小數點位置保持不變。 42 二進制數與十六進制數之間的轉換同樣可以按位進行 ,只不過是4位二進制數對應1位十六進制數,即4位二進制數的取值00001111分別對應十六進制字符0F。 2二進制數與十六進制數之間的轉換二進制數與十六進制數之間的轉

37、換 二進制數轉換成十六進制數:二進制數轉換成十六進制數:以小數點為界,分別往高、往低每4位為一組,最后不足4位時用0補充,然后寫出每組對應的十六進制字符即可。 例如,()例如,()2 2 = = (?)(?)1616 即: (101110.011)(101110.011)2 2 = (2E.6)= (2E.6) 0010 1110 . 0110 2 E . 6 43 十六進制數轉換成二進制數時,只需將每位十六進制數用4位二進制數表示,小數點位置保持不變。 例如,例如,()16 = (?)2 即: (5A.B)=(1011010.1011)2 5 A . B 0101 1010 .1011 44

38、 1.3 1.3 帶符號二進制數的代碼表示帶符號二進制數的代碼表示 為了標記一個數的正負,人們通常在一個數的前面用“+ +”號 表示正數,用“- -”號表示負數。在數字系統(tǒng)中,符號和數值一樣 是用0 0和1 1來表示的,一般將數的最高位作為符號位,用0 0表正,用表正,用 1 1表示負表示負。其格式為 Xf Xn-1 Xn-2 X1 X0 符號位 通常將用“+”、“-”表示正、負的二進制數稱為符號數的值值, 而把將符號和數值一起編碼表示的二進制數稱為機器數機碼機器數機碼。 常用的機器碼有原碼原碼、反碼反碼和補碼補碼三種。 45 1.3.1 原碼原碼 X 0X1 X X原 = = 1-X -1X

39、0 0 0 正正 即即 符號位符號位 1 1 負負 數值位:數值位: 不變不變一、小數原碼的定義一、小數原碼的定義 設二進制小數-1x-2x-m,則其原碼定義為 原碼:原碼:符號位用0表示正,1表示負;數值位保持不變。原碼表示法又稱為符號數值表示法。 46 例如,例如,若 X1 = +0.1011 , X2 = -0.1011 則 X1原 = 0.1011 X2原 根據定義,小數“0”的原碼可以表示成0 0或或0 0。 47 二、整數原碼的定義二、整數原碼的定義 X 0 X 2n X X原 = = 2n-X -2n X 0 設二進制整數 X = xn-1xn-2x0,則其原碼定義為 例如,若X

40、1 = +1101 , X2 = -1101, 則X1和X2的原碼為 X1原 = 0 01101 X2原 = 24-(-1101)=10000+1101=1 11101 同樣,整數“0”的原碼也有兩種形式,即即0 000和和1 100。 48 原碼的優(yōu)點優(yōu)點: 簡單易懂,求取方便;缺點:缺點:加、減運算不方便。當進行兩數加、減運算時,要根據運算及參加運算的兩個數的符號來確定是加還是減;如果是做減法,還需根據兩數的大小確定被減數和減數,以及運算結果的符號。顯然,這將增加運算的復雜性。 如何克服原碼的缺點呢?如何克服原碼的缺點呢?首先請看下面的例子。為了克服原碼的缺點,引為了克服原碼的缺點,引 入

41、了反碼和補碼。入了反碼和補碼。 0 03 36 69 91 12 25 54 4111110108 87 7 +7+7 - 5- 5當要將時針從10點調至5點時,可順調7格(+7),也可反調5格(-5),即對12進制而言10-510+7。這里,5+7=12, 通常稱5和7對12進制而言互補。49 1.3.2 反碼反碼 X 0 X 1 XX反 = = (2-2-m)+X -1 X 0 一、小數反碼的定義一、小數反碼的定義 設二進制小數-1x-2x-m,則其反碼定義為 帶符號二進制數的反碼表示:帶符號二進制數的反碼表示: 符號位符號位用0表示正,用1表示負; 數值位數值位正數反碼的數值位和真值的數

42、值位相同;而負數反碼的數值位是真值的數值位按位變反。 50 例如,例如,若 X1 = +0.1011 , X2 ,則X1和X2的反碼為 X1反 = 0.1011 X2反 = 2-2-4+X2=10.0000-0.0001-0.1011=1.0100 根據定義,小數“0”的反碼有兩種表示形式,即0 0和和1 1。 即 -0 . 1 0 1 1-0 . 1 0 1 1 1 . 0 1 0 0 1 . 0 1 0 0 51 二、整數反碼的定義二、整數反碼的定義 設二進制整數X = xn-1xn-2x0,則其反碼定義為 即 - 1 0 0 1- 1 0 0 1 1 0 1 1 0 1 0 1 1 0

43、例如,例如,若X1 = +1001 , X2 = -1001,則X1和X2的反碼為X1反 = 01001 X2反 = (25-1)+X = (100000-1)+(-1001) = 11111-1001 = 10110 X反 = = (2n+1-1)+X -2n X 0X 0 X 2n整數“0”的反碼也有兩種形式,即00000 0和11111 1。 52 采用反碼進行加、減運算時,無論進行兩數相加還是兩 數相減,均可通過加法實現(xiàn)。 加、減運算規(guī)則如下:加、減運算規(guī)則如下: X1 + X2反 =X1反 +X2反 X1 X2反 =X1反 +-X2反 運算時,符號位和數值位一樣參加運算。當符號位有進

44、位產生時,應將進位加到運算結果的最低位,才能得到最后結果。53 例如,例如,已知X1 = +0.1110,X2,求X1-X2 =? 1 1 0 . 1 0 0 0 0 . 1 0 0 0 0 . 1 1 1 0 0 . 1 1 1 0 + 1 . 1 0 1 0 + 1 . 1 0 1 0 0 . 1 0 0 1 0 . 1 0 0 1 + 1 + 1 即X1-X2反 。由于結果的符號位為0,表示是正數,故X1-X2=+0.1001 解:解:求X1-X2可通過反碼相加實現(xiàn)。運算如下: X1-X2反 =X1反 +-X2反 54 1.3.3 補碼補碼 帶符號二進制數的補碼表示:帶符號二進制數的補碼

45、表示: 符號位符號位用0表示正,用1表示負; 數值位數值位正數補碼的數值位與真值相同;負數補碼的數值位是真值的數值位按位變反,并在最低位加1。 設二進制小數-1x-2x-m,則其補碼定義為 一、小數補碼的定義一、小數補碼的定義 X 0 X 1 X X補 = = 2+X -1 X 0 55 例如,例如,若X 1= +0.1011 , X 2 = -0.1011, 則X1和X2的補碼為 X1補 = 0.1011 X2補 = 2 + X = 10.0000 - 0.1011 注意:注意:小數“0”的補碼只有一種表示形式,即0。 即 -0 . 1 0 1 1-0 . 1 0 1 1 1 . 0 1 0

46、 0 1 . 0 1 0 0 + 1+ 1 1 . 0 1 0 1 1 . 0 1 0 1 56 二、整數補碼的定義二、整數補碼的定義 設二進制整數X = xn-1xn-2x0,則其補碼定義為 X 0 X X 0 X 2 2n n X X補補 = = 2 2n+1n+1+X -2+X -2n n X X 0 0 例如,例如,若X1 = +1010 , X2 = -1010, 則X1和X2的補碼為 X1補= 01010(正數補碼的數值位與真值相同。) X2補= 25 + X = 100000-1010 = 10110(負數補碼的數值位是真值的數值位按位變反,并在最低位加1。) 整數“0”的補碼也

47、只有一種表示形式,即00000 0。 57 二、整數補碼的定義二、整數補碼的定義 設二進制整數X = xn-1xn-2x0,則其補碼定義為 X 0 X X 0 X 2 2n n X X補補 = = 2 2n+1n+1+X -2+X -2n n X X 0 0 例如,例如,若X1 = +1010 , X2 = -1010, 則X1和X2的補碼為 X1補= 01010(正數補碼的數值位與真值相同。) X2補= 25 + X = 100000-1010 = 10110(負數補碼的數值位是真值的數值位按位變反,并在最低位加1。) 整數“0”的補碼也只有一種表示形式,即00000 0。 58 例例 已知

48、X1=-1001 , X2=+0011,求 X1-X2= ? X1-X2補=X1補+-X2補 = 10111+11101丟掉丟掉 1 1 1 0 1 0 0 1 0 1 0 0 1 0 1 1 11 0 1 1 1 + 1 1 1 0 1 + 1 1 1 0 1 即X X1 1-X-X2 2補補 = 10100= 10100。由于結果的符號位為1,表示是負數,故 X X1 1-X-X2 2 = -1100= -1100 注意:補碼還原成真值時,應對數值位變反加注意:補碼還原成真值時,應對數值位變反加1 1。 顯然,采用補碼進行加、減運算最方便。 解:解:采用補碼求X1-X2的運算如下: 59

49、1.4 1.4 幾種常用的編碼幾種常用的編碼 1.4.1 十進制數的二進制編碼(十進制數的二進制編碼(BCDBCD碼)碼) 用用4位二進制代碼對十進制數字符號進行編碼,簡稱位二進制代碼對十進制數字符號進行編碼,簡稱 為二為二十進制代碼,或稱十進制代碼,或稱BCD(Binary Coded Decimal)碼碼。 BCD碼既有二進制的形式,又有十進制的特點。常用的BCD碼有8421碼碼、2421碼碼和余余3碼。碼。 60 十進制數字符號09與8421碼碼、2421碼碼和余余3碼碼的對應關系如下表所示。 0 0000 0000 0011 0 0000 0000 0011 1 0001 0001 0

50、100 1 0001 0001 0100 2 0010 0010 0101 2 0010 0010 0101 3 0011 0011 0110 3 0011 0011 0110 4 0100 0100 0111 4 0100 0100 0111 5 0101 1011 1000 5 0101 1011 1000 6 0110 1100 1001 6 0110 1100 1001 7 0111 1101 1010 7 0111 1101 1010 8 1000 1110 1011 8 1000 1110 1011 9 1001 1111 1100 9 1001 1111 1100 十進制字符十進

51、制字符 84218421碼碼 24212421碼碼 余余3 3碼碼 常用的常用的3 3種種BCDBCD碼碼 61 一、一、84218421碼碼 84218421碼:碼:是用4位二進制碼表示一位十進制字符的一種有有權碼權碼,4位二進制碼從高位至低位的權依次為23、22、21、20,即為即為8 8、4 4、2 2、1,1,故稱為故稱為84218421碼碼。 按8421碼編碼的09與用4位二進制數表示的09完全一樣。所以,8421碼是一種人機聯(lián)系時廣泛使用的中間形式。 (1)(1) 8421碼中不允許出現(xiàn)10101111六種組合(因為沒有十進制數字符號與其對應)。 (2)(2) 十進制數字符號的84

52、21碼與相應ASCII碼的低四位相同,這一特點有利于簡化輸入輸出過程中BCD碼與字符代碼的轉換。 注意:注意: 62 8421碼與十進制數之間的轉換是按位進行按位進行的,即十進制數的每一位與4位二進制編碼對應。例如, 1 184218421碼與十進制數之間的轉換碼與十進制數之間的轉換 (258) (258)10 = (0010 0101 1000)= (0010 0101 1000)8421碼 (0001 0010 0000 1000)(0001 0010 0000 1000)8421碼 = (1208)= (1208)10 例如, (28(28)10 = =(1110011100)2 = =

53、()()8421 2 284218421碼與二進制的區(qū)別碼與二進制的區(qū)別 63 二、二、24212421碼碼 24212421碼碼: : 是用4位二進制碼表示一位十進制字符的另一種有權碼,4 4位二進制碼從高位至低位的權依次為位二進制碼從高位至低位的權依次為2 2、4 4、2 2、1,1,故稱為故稱為24212421碼碼。 若一個十進制字符X X的2421碼為a3 a2 a1 a0,則該字符的值為 X = 2a3 + 4a2 + 2a1 + 1a0 例如,(1101)2421碼 = (7)10 1 124212421碼與十進制數之間的轉換碼與十進制數之間的轉換 2421碼與十進制數之間的轉換同

54、樣是按位進行的,例如: (258)10 = (0010 1011 1110)2421碼 (0010 0001 1110 1011)2421碼 = (2185)10 64 (1)2421 (1)2421碼不具備單值性碼不具備單值性。例如,0101和1011都對應十 進制數字5。為了與十進制字符一一對應,24212421碼不允許出碼不允許出 現(xiàn)現(xiàn)0101010110101010的的6 6種狀態(tài)。種狀態(tài)。 2 2注意注意 (3) (3) 應與二進制數進行區(qū)別應與二進制數進行區(qū)別! ! (2)2421 (2)2421碼是一種對碼是一種對9 9的自補代碼。的自補代碼。即一個數的2421碼 只要自身按位變

55、反,便可得到該數對9的補數的2421碼。例如, (4)10 (0100)2421 (1011)2421 (5)10 具有這一特征的BCD碼可給運算帶來方便,因為直接對BCD 碼進行運算時,可利用其對9的補數將減法運算轉化為加法運 算。 65 三、余三、余3 3碼碼 余余3碼:碼:是由8421碼加上0011形成的一種無權碼,由于它的每個字符編碼比相應8421碼多3,故稱為余3碼。例如,十進制字符5的余3碼等于5的8421碼0101加上0011,即為1000。 2. 2. 余3碼與十進制數進行轉換時,每位十進制數字的編碼每位十進制數字的編碼都應余都應余3 3。例如, (256)(256)10 =

56、(0101 1000 1001) (0101 1000 1001)余3碼 (1000 1001 1001 1011)(1000 1001 1001 1011)余3碼 = (5668)= (5668)10 注意注意:1.余余3碼中不允許出現(xiàn)碼中不允許出現(xiàn)0000、0001、0010、1101、1110 和和1111六種狀態(tài)。六種狀態(tài)。 66 3. 3. 余3碼是一種對對9 9的自補代碼;的自補代碼; 4. 4. 兩個余3碼表示的十進制數字相加時,能產生正確進 位信號,但對“和”必須修正。 修正的方法是:修正的方法是:如果有進位,則結果加3;如果無進位,則結果減3。例如,例如,2+3=52+3=5

57、 1011 1011+ 3 + 3 (01100110)余余3 3碼碼 5 5 (10001000)余余3 3碼碼 2 2 (01010101)余余3 3碼碼- 0011- 0011例如,例如,8+3=118+3=11+ 3 + 3 (01100110)余余3 3碼碼+ 0011+ 0011 10001 100011 1 11 1 1(01000100)余余3 3碼碼 8 8 (10111011)余余3 3碼碼67 1.4.2 可靠性編碼可靠性編碼 作用作用: 提高系統(tǒng)的可靠性。 為了減少或者發(fā)現(xiàn)代碼在形成和傳送過程中都可能發(fā)生的錯誤。形成了各種編碼方法。下面,介紹兩種常用的可靠性編碼。 一、

58、格雷一、格雷(Gray)(Gray)碼碼 1.1.特點:任意兩個相鄰的數,其格雷碼僅有一位不同。特點:任意兩個相鄰的數,其格雷碼僅有一位不同。 2.2.作用作用:避免代碼形成或者變換過程中產生的錯誤避免代碼形成或者變換過程中產生的錯誤。 68 十進制數 4位二進制碼 典型格雷碼 4位二進制碼對應的典型格雷碼 0 0000 0000 1 0001 0001 2 0010 0011 3 0011 0010 4 0100 0110 5 0101 0111 6 0110 0101 7 0111 0100 8 1000 1100 9 1001 1101 10 1010 1111 11 1011 1110 12 1100 1010 13 1101 1011 14 1110 1001 15 1111 1000 四位二進制碼對應的典型格雷碼如下表所示。 69 在數字系統(tǒng)中,數是用電子器件的狀態(tài)表示的,數據的變化即器件狀態(tài)的變化。如當數據按升序或降序變化時,若采用普通二進制數,則每次增1或者減1可能引起若干位發(fā)生變化。為什么能避免代碼在形成或者變換過程中產生錯誤呢?為什么能避免代碼在形成或者變換過程中產生

溫馨提示

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

評論

0/150

提交評論