最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

第一周 微型計(jì)算機(jī)基礎(chǔ)概論

2020-12-05 02:17 作者:康康Loong  | 我要投稿

大家好,又是我,沉迷學(xué)習(xí)無(wú)法自拔的小笨蛋康sir。

這個(gè)文集將會(huì)同步更新我觀看吳寧老師的《微機(jī)原理與接口技術(shù)》教學(xué)視頻寫的筆記,學(xué)習(xí)筆記,大概每周一章。

有問(wèn)題在評(píng)論下面留言討論,歡迎糾錯(cuò)!

歡迎收藏閱讀,動(dòng)動(dòng)小手給個(gè)硬幣點(diǎn)個(gè)贊。

????????????????????????????????????????????????????????????????——@正能量的康sir

也可移步我的博客(https://blog.csdn.net/qq_33956508)獲得更好的閱讀體驗(yàn),也會(huì)更新一些其它技術(shù)類文章。


第1講 關(guān)于本課程

未來(lái)從事計(jì)算機(jī)應(yīng)用系統(tǒng)研究,特別是過(guò)程控制系統(tǒng)設(shè)計(jì)。

先修知識(shí):《大學(xué)計(jì)算機(jī)》課程和軟件類課程學(xué)習(xí)經(jīng)驗(yàn)。

計(jì)算機(jī)的主要應(yīng)用:數(shù)值計(jì)算、信息處理、過(guò)程控制,本課程關(guān)注過(guò)程控制(主要是工業(yè)過(guò)程控制)。

這是計(jì)算機(jī)硬件技術(shù)。

主要內(nèi)容:計(jì)算機(jī)基礎(chǔ)知識(shí)+微型計(jì)算機(jī)的基本原理+輸入輸出接口技術(shù)


案例1:家庭安全防盜系統(tǒng)設(shè)計(jì)

  1. 為一棟含8個(gè)窗戶的家庭設(shè)計(jì)

  2. 功能要求:每個(gè)窗臺(tái)有監(jiān)測(cè)裝置,當(dāng)某一裝置連續(xù)5次檢測(cè)出異常時(shí),啟動(dòng)報(bào)警(警鈴響、警燈閃爍)

  3. 可以根據(jù)需要布防和關(guān)閉

案例分析:

系統(tǒng)涉及硬件線路和控制程序

如何檢測(cè)出有無(wú)異常

檢測(cè)到的信息在計(jì)算機(jī)中如何便是

如何確定一場(chǎng)次數(shù)?是否來(lái)自同一檢測(cè)裝置?

如何啟動(dòng)和停止報(bào)警


案例2:溫室溫度控制系統(tǒng)

  1. 溫室溫度25°C ~38°C

  2. 實(shí)時(shí)顯示2位溫室溫度

  3. 給定時(shí)間內(nèi)不能保證溫度在要求范圍時(shí),發(fā)出報(bào)警信號(hào)

案例分析:

設(shè)計(jì)硬件系統(tǒng):溫度測(cè)量電路、溫度控制電路、溫度顯示電路、報(bào)警電路

設(shè)計(jì)軟件系統(tǒng):溫度檢測(cè)、溫度控制(根據(jù)檢測(cè)值和給定控制電爐通/斷)、顯示溫度、報(bào)警輸出

試問(wèn)如何讀取并被計(jì)算機(jī)識(shí)別?溫度如何顯示?怎樣實(shí)現(xiàn)報(bào)警?

系統(tǒng)結(jié)構(gòu)框架:


溫度:連續(xù)變化的量,必須轉(zhuǎn)換成數(shù)字信號(hào)(離散的電信號(hào))

完成系統(tǒng)設(shè)計(jì)將涉及:

數(shù)據(jù)在計(jì)算機(jī)中表示

現(xiàn)場(chǎng)數(shù)據(jù)的采集(獲取)、轉(zhuǎn)換

現(xiàn)場(chǎng)數(shù)據(jù)的存儲(chǔ)、處理


本課程主要講授:

1、數(shù)值信息表示

2、微型機(jī)基本原理(微處理結(jié)構(gòu)、Intel80x86)

3、匯編程序設(shè)計(jì)

4、半導(dǎo)體存儲(chǔ)器及其接口設(shè)計(jì)

5、輸入輸出技術(shù)(數(shù)字并行接口、模擬量并行接口)


3屬于軟件設(shè)計(jì),4、5屬于硬件設(shè)計(jì)


這門課將帶給你:

微型計(jì)算機(jī)基本工作原理理解

簡(jiǎn)單輸入輸出接口控制系統(tǒng)軟硬件的初步設(shè)計(jì)


第2講 微型計(jì)算機(jī)系統(tǒng)組成

計(jì)算機(jī)系統(tǒng):硬件系統(tǒng)、軟件系統(tǒng)。

我們講硬件系統(tǒng)。


硬件系統(tǒng)包括主機(jī)系統(tǒng)、外部設(shè)備。

主機(jī)系統(tǒng):CPU、存儲(chǔ)器、輸入輸出接口、總線

外部設(shè)備:所有可以通過(guò)輸入輸出接口與計(jì)算機(jī)進(jìn)行信息交互的電子設(shè)備。

我們講主機(jī)系統(tǒng)。


(1)微處理器

微處理器簡(jiǎn)稱CPU,是計(jì)算機(jī)的核心。主要包括運(yùn)算器、控制器、寄存器組。


(2)存儲(chǔ)器

計(jì)算機(jī)中的記憶裝置。用于存放計(jì)算機(jī)工作過(guò)程中需要操作的數(shù)據(jù)和程序。


接下來(lái)的授課不做特殊說(shuō)明“存儲(chǔ)器”一般指內(nèi)存儲(chǔ)器。


內(nèi)存儲(chǔ)器

(內(nèi)存條)

特點(diǎn):

存取速度較快,容量相對(duì)較小;

內(nèi)存按單元組織,每單元對(duì)應(yīng)一個(gè)唯一的地址;(內(nèi)存地址,十六進(jìn)制)

每個(gè)內(nèi)存單元中存放1Bytc數(shù)據(jù);(單元內(nèi)容,8位二進(jìn)制)

內(nèi)存單元個(gè)數(shù)稱為內(nèi)存容量。


有關(guān)存儲(chǔ)器的術(shù)語(yǔ):

存儲(chǔ)容量:存放的數(shù)據(jù)量。用字節(jié)表示。(8位二進(jìn)制)

對(duì)存儲(chǔ)器的操作:讀(出)指將內(nèi)存單元的內(nèi)容取入CPU,原單元內(nèi)容不改變;寫(入)指CPU將信息放入內(nèi)存單元,單元中原來(lái)的內(nèi)容被覆蓋。對(duì)某個(gè)器件的讀/寫相當(dāng)于與其進(jìn)行信息交換。

內(nèi)存儲(chǔ)器的分類

按工作方式:隨機(jī)存取存儲(chǔ)器(RAM,掉電以后數(shù)據(jù)會(huì)丟),只讀存儲(chǔ)器(ROM)



  1. 輸入輸出接口

接口是CPU與外部設(shè)備間的橋梁

(平滑連接了高速cpu和低速的外部設(shè)備)

主要功能:

數(shù)據(jù)緩沖寄存;

信號(hào)電平或類型的轉(zhuǎn)換;

實(shí)現(xiàn)主機(jī)與外設(shè)間的運(yùn)行匹配。

CPU<——>I/O接口<——>外設(shè)

  1. 總線

是一組導(dǎo)線和相關(guān)的控制、驅(qū)動(dòng)電路的集合。

是計(jì)算機(jī)系統(tǒng)各部件之間傳輸?shù)刂?、?shù)據(jù)和控制信息的通道

地址總線(AB,全稱Address Bus)

數(shù)據(jù)總線(DB,全稱Date Bus)

控制總線(CB,全稱Control Bus)


軟件系統(tǒng)

軟件:為運(yùn)行、管理和維護(hù)計(jì)算機(jī)系統(tǒng)或?yàn)閷?shí)現(xiàn)某一功能而編寫的各種程序的總和及其相關(guān)資料。

分類:

系統(tǒng)軟件:操作系統(tǒng)、編譯系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、工具軟件

應(yīng)用軟件


微機(jī)系統(tǒng)概念結(jié)構(gòu)


主機(jī)系統(tǒng)特征:

能夠與CPU直接進(jìn)行信息交換的部件屬于主機(jī)系統(tǒng)

不能夠與CPU直接進(jìn)行信息交換的部件屬于外部設(shè)備

第3講 微型計(jì)算機(jī)的一般工作過(guò)程

計(jì)算機(jī)的工作就是執(zhí)行程序。程序就是指令的序列。

計(jì)算機(jī)的工作就是按照一定的順序,一條一條地執(zhí)行指令。

  1. 計(jì)算機(jī)中指令的執(zhí)行過(guò)程

指令:由人向計(jì)算機(jī)發(fā)出的、能夠位計(jì)算機(jī)所識(shí)別的命令

計(jì)算機(jī)的工作是逐條執(zhí)行由指令構(gòu)成的程序。


計(jì)算機(jī)的工作過(guò)程就是執(zhí)行程序的過(guò)程

程序是指令的序列,計(jì)算機(jī)的工作過(guò)程就是執(zhí)行指令的過(guò)程



指令的執(zhí)行過(guò)程

取指令——>分析指令——>讀取操作數(shù)——>執(zhí)行指令——>存放結(jié)果

其中,取指令、分析指令、執(zhí)行指令是核心步驟,讀取操作數(shù)如果需要操作數(shù)才有,


順序執(zhí)行:一條指令執(zhí)行完了再執(zhí)行下一條指令。


并行執(zhí)行:同時(shí)執(zhí)行兩條或多條指令。


執(zhí)行時(shí)間=取指令+分析指令+執(zhí)行指令

設(shè):三個(gè)部分的執(zhí)行時(shí)間均為△t,則:執(zhí)行n條指令時(shí)間T0為:

順序執(zhí)行T0=3n△t

并行執(zhí)行:理想情況下,僅第一條指令需要3△t,之后每經(jīng)過(guò)1△t就有一條指令執(zhí)行結(jié)束。T=3△t+(n-1) △t.

(注:取指令時(shí)總線會(huì)忙碌)




兩種執(zhí)行方式時(shí)間的比較

并行:更高的效率,更高的復(fù)雜度

設(shè)加速比S=順序執(zhí)行花費(fèi)的時(shí)間/并行執(zhí)行華為的時(shí)間

S=3n△t/(3△t+(n-1) △t)=3n/(2+n)

2.馮·諾依曼計(jì)算機(jī)

馮·諾依曼計(jì)算機(jī)的工作原理:存儲(chǔ)程序工作原理

結(jié)構(gòu)特點(diǎn):運(yùn)算器為核心


馮·諾依曼計(jì)算機(jī)的工作過(guò)程:




取一條指令的工作過(guò)程:

  1. 將指令所在地址賦給程序計(jì)數(shù)器PC(program counter);

② PC內(nèi)容送到地址寄存器AR,PC自動(dòng)加1;

③ 把AR的內(nèi)容通過(guò)地址總線送至內(nèi)存儲(chǔ)器,經(jīng)地址譯碼器譯碼,選中相應(yīng)單元。

④ CPU的控制器發(fā)出讀命令。

⑤ 在讀命令控制下,把所選中單元的內(nèi)容(即指令操作碼)讀到數(shù)據(jù)總線DB。

⑥ 把讀出的內(nèi)容經(jīng)數(shù)據(jù)總線送到數(shù)據(jù)寄存器DR。

⑦ 指令譯碼:數(shù)據(jù)寄存器DR將它送到指令寄存器IR,然后再送到指令譯碼器ID


馮·諾依曼計(jì)算機(jī)體系結(jié)構(gòu)


注:運(yùn)算器和控制器是CPU的·組成部分,存儲(chǔ)器這里是內(nèi)存儲(chǔ)器。


馮·諾依曼機(jī)的特點(diǎn)和不足

特點(diǎn):程序存儲(chǔ),共享數(shù)據(jù),順序執(zhí)行。屬于順序處理機(jī),適合于確定的算法和數(shù)值數(shù)據(jù)的處理。

不足: 與存儲(chǔ)器間有大量數(shù)據(jù)交互,對(duì)總線要求很高。

執(zhí)行順序由程序決定,對(duì)大型復(fù)雜任務(wù)較困難

以運(yùn)算器為核心,處理效率低

由PC控制執(zhí)行順序,難以進(jìn)行真正的并行處理。


哈佛結(jié)構(gòu):

指令和數(shù)據(jù)分別存放在兩個(gè)獨(dú)立的存儲(chǔ)器模塊中;

CPU與存儲(chǔ)器間指令和數(shù)據(jù)的傳送分別采用兩組獨(dú)立的總線;(以存儲(chǔ)器為核心)

可以在一個(gè)機(jī)器周期內(nèi)同時(shí)獲得指令操作碼和操作數(shù)。


第4講 常用計(jì)數(shù)制及其轉(zhuǎn)換

1. 常用計(jì)數(shù)制

人類最習(xí)慣的計(jì)數(shù)制是十進(jìn)制

計(jì)算機(jī)由具有兩種狀態(tài)的開(kāi)關(guān)器件組成,可以用0和1分別表示兩種不同的狀態(tài)

? 計(jì)算機(jī)中采用二進(jìn)制

? 計(jì)算機(jī)硬件惟一能夠識(shí)別的是二進(jìn)制數(shù)。

任何其它計(jì)數(shù)制和各種信息要讓計(jì)算機(jī)處理,都需要借助軟件轉(zhuǎn)換為二進(jìn)制。


計(jì)算機(jī)中的常用計(jì)數(shù)制:十進(jìn)制、二進(jìn)制數(shù)、十六進(jìn)制數(shù)、八進(jìn)制數(shù)


  1. 十進(jìn)制表示法

特點(diǎn):以十為底,逢十進(jìn)一;共有0-9十個(gè)數(shù)字符號(hào)。用D(decimal)代表。


  1. 二進(jìn)制表示法

特點(diǎn):以2為底,逢2進(jìn)位;只有0和1兩個(gè)符號(hào)。用B(binary)表示。


(3)引入十六進(jìn)制、八進(jìn)制數(shù)的理由

十進(jìn)制數(shù)100000的二進(jìn)制表示11000011010100000

四位一組1 1000 0110 1010 0000

十六進(jìn)制1 8 6 A 0

(4)十六進(jìn)制表示法

? 特點(diǎn):

? 有0--9及A--F共16個(gè)數(shù)字符號(hào);逢16進(jìn)位。用H(hex)表示


(5)八進(jìn)制表示法

? 特點(diǎn):有0--7共8個(gè)數(shù)字符號(hào);逢8進(jìn)位,用O(octal)表示。



  1. 標(biāo)識(shí)符

234.98或234.98D或(234.98)D

? 1101.11B或(1101.11)B

? 271.54O或(271.54)O

? ABCD . BFH或(ABCD . BF)H

  1. 計(jì)數(shù)制的通用表達(dá)式

對(duì)任意一種計(jì)數(shù)制,都可以用以下權(quán)展開(kāi)式表示:


2.各種進(jìn)制數(shù)間的轉(zhuǎn)換

(1)非十進(jìn)制數(shù)到十進(jìn)制數(shù)的轉(zhuǎn)換:

按相應(yīng)的權(quán)表達(dá)式展開(kāi)

1011.11B=1×23+0×22+1×21+1×20+1×2-1+1×2-2=8+2+1+0.5+0.25=11.75

5B.8H=5×161+11×160+8×16-1=80+11+0.5=91.5

(2)十進(jìn)制到非十進(jìn)制數(shù)的轉(zhuǎn)換

? 對(duì)二進(jìn)制的轉(zhuǎn)換:對(duì)整數(shù):除2取余;對(duì)小數(shù):乘2取整。



? 對(duì)十六進(jìn)制的轉(zhuǎn)換:對(duì)整數(shù):除16取余;對(duì)小數(shù):乘16取整。

? 對(duì)八進(jìn)制的轉(zhuǎn)換:對(duì)整數(shù):除8取余;對(duì)小數(shù):乘8取整。

(3)非十進(jìn)制數(shù)與二進(jìn)制數(shù)的轉(zhuǎn)換

十六進(jìn)制數(shù)與二進(jìn)制的轉(zhuǎn)換

用4位二進(jìn)制數(shù)表示1位十六進(jìn)制數(shù)

整數(shù)部分,從小數(shù)點(diǎn)向左組,每4位一組,不夠4位的高位補(bǔ)0.小數(shù)部分,從小數(shù)點(diǎn)向右分組,不夠4位的在低位補(bǔ)0。

例子:25.5=11001.1B=00011001.1000B=19.8H

? ? ?1100 1010.0110 1010B=CA.6AH

? ? ? ?八進(jìn)制數(shù)與二進(jìn)制的轉(zhuǎn)換

? ? ? ? ? ?用3位二進(jìn)制數(shù)表示1位八進(jìn)制數(shù)

? ? ? ? ? ?整數(shù)部分,從小數(shù)點(diǎn)向左組,每3位一組,不夠3位的高位補(bǔ)0。

? ? ? ? ? ?小數(shù)部分,從小數(shù)點(diǎn)向右分組,不夠3位的在低位補(bǔ)0。

? ? ? ? ? ?例子:11001010.0110101B=011 001 010.011 010 100B=(312.324)O

第5講 計(jì)算機(jī)中的編碼

編碼

信息從一種形式或格式轉(zhuǎn)換為另一種形式的過(guò)程。

用代碼表示各種信息,以便于計(jì)算機(jī)處理

需要編碼的信息種類

數(shù)值

字符

聲音

圖形、圖像

計(jì)算機(jī)中的編碼

數(shù)值編碼:二進(jìn)制、BCD碼

西文字符編碼:ASCII碼

  1. BCD碼

BCD(Binary Coded Decimal二進(jìn)制編碼的十進(jìn)制)碼

? 用二進(jìn)制表示的十進(jìn)制數(shù)

? 特點(diǎn):

? 保留十進(jìn)制的權(quán),數(shù)字用0和1表示。

8421BCD編碼:

? 用4位二進(jìn)制碼表示1位十進(jìn)制數(shù),每4位之間有一個(gè)空格


1010—1111是非法BCD碼(因?yàn)楸?0大了),只是合法的十六進(jìn)制數(shù)


BCD碼碼與十進(jìn)制和二十進(jìn)制數(shù)之間的轉(zhuǎn)換

BCD碼與十進(jìn)制數(shù)之間存在直接對(duì)應(yīng)關(guān)系

例:(1001 1000 0110.0011)BCD=986.3

BCD碼與二進(jìn)制的轉(zhuǎn)換

先轉(zhuǎn)換為十進(jìn)制數(shù),再轉(zhuǎn)換二進(jìn)制數(shù);反之同樣。

(0001 0001 .0010 0101)BCD=11 .25=(1011 .01)B

BCD碼在計(jì)算機(jī)中的存儲(chǔ)方式

? 以壓縮BCD碼形式存放:

? 用4位二進(jìn)制碼表示1位BCD碼

? 一個(gè)存儲(chǔ)單元中存放2位BCD數(shù)

? 以擴(kuò)展BCD碼形式存放

? 用8位二進(jìn)制碼表示1位BCD碼.即高4位為0,低4位為有效位

? 每個(gè)存儲(chǔ)單元存放1位BCD

  1. ASCII碼

西文字符編碼

將每個(gè)字母、數(shù)字、標(biāo)點(diǎn)、控制符用1Byte二進(jìn)制碼表示

其中:標(biāo)準(zhǔn)ASCII的有效位:7bit,最高位默認(rèn)為0。(現(xiàn)在使用的是擴(kuò)展ASCII碼,8位,這門課不涉及)

下表中A-F,0-9要熟記



ASCII碼的奇偶校驗(yàn)

奇校驗(yàn)

? 加上校驗(yàn)位后編碼中“1”的個(gè)數(shù)為奇數(shù)。

? 例:A的ASCII碼是41H(1000001B)

? 以奇校驗(yàn)傳送則最高位前加1,為 C1H(11000001B)

偶校驗(yàn)

? 加上校驗(yàn)位后 編碼中“1”的個(gè)數(shù)為偶數(shù)。

? 上例若以偶校驗(yàn)傳送,則不需要變化,為 41H。


隨堂練習(xí)

10010110.1001B =(150.5625)D=(0001 0101 0000.0101 0110 0010 0101)BCD

1F3DH= (7997)D =(0111 1001 1001 0111)BCD

若以奇校驗(yàn)傳送字母B,則B的ASCII=(C2)H=( 11000010)B

第6講 計(jì)算機(jī)中數(shù)的表示與運(yùn)算

  1. 計(jì)算機(jī)中的二進(jìn)制數(shù)表示與運(yùn)算

按數(shù)的表表示方法分類

定點(diǎn)數(shù):小數(shù)點(diǎn)固定的一種數(shù)。早期計(jì)算機(jī)用。不足:編程時(shí)需要確定小數(shù)點(diǎn)位置;難以表示兩個(gè)大小相差較大的數(shù);存儲(chǔ)空間利用率低。

定點(diǎn)整數(shù):小數(shù)點(diǎn)在最右

定點(diǎn)小數(shù):小數(shù)點(diǎn)在最左

浮點(diǎn)數(shù)(現(xiàn)在普遍使用,稍后重點(diǎn)講)

按數(shù)的性質(zhì)分類

無(wú)符號(hào)數(shù):數(shù)中所有的0和1都是數(shù)據(jù)本身

有符號(hào)數(shù):需用0或1表示數(shù)的性質(zhì)(整數(shù)或復(fù)數(shù))

各種編碼多視為無(wú)符號(hào)數(shù),數(shù)值多視為有符號(hào)數(shù)

無(wú)符號(hào)數(shù)和有符號(hào)數(shù)都是機(jī)器數(shù)


浮點(diǎn)數(shù)

浮點(diǎn)數(shù):小數(shù)點(diǎn)的位置可以左右移動(dòng)的數(shù)

0.35x102

2是階碼,10是階基(二進(jìn)制中是2),35是尾數(shù)(小數(shù)點(diǎn)后面的部分)



規(guī)格化浮點(diǎn)數(shù):尾數(shù)部分用純小數(shù)表示,即小數(shù)點(diǎn)右邊第1位不為0。


  1. 無(wú)符號(hào)數(shù)

無(wú)符號(hào)數(shù)的算術(shù)運(yùn)算

加法運(yùn)算:1+1=10(有進(jìn)位)

減法運(yùn)算:10-1=01(有借位)

乘法運(yùn)算:00001011×0100=00101100B, 每乘以2,相對(duì)于被乘數(shù)向左移動(dòng)1位

除法運(yùn)算:00001011÷0100 =00000010B商=00000010B 余數(shù)=11B,每除以2,相對(duì)于被除數(shù)向右移動(dòng)1位

  1. 有符號(hào)數(shù)

有符號(hào)數(shù):用最高位表示符號(hào),其余是數(shù)值。0表示正數(shù),1表示負(fù)數(shù)。

符號(hào)數(shù)的表示方法:原碼、反碼、補(bǔ)碼

注意:數(shù)的性質(zhì)由設(shè)計(jì)者決定,在低級(jí)語(yǔ)言程序設(shè)計(jì)中,根據(jù)數(shù)的性質(zhì)由程序語(yǔ)言處理(按無(wú)符號(hào)數(shù)或有符號(hào)數(shù)處理)(硬件無(wú)法識(shí)別,由程序員確定)


  1. 原碼

最高位為符號(hào)位,其余為真值部分。 [X]原=符號(hào)位+|絕對(duì)值|

優(yōu)點(diǎn):真值和其原碼表示之間的對(duì)應(yīng)關(guān)系簡(jiǎn)單,容易理解

缺點(diǎn):計(jì)算機(jī)中用原碼進(jìn)行加減運(yùn)算比較困難;0的表示不唯一([+0]原=0 0000000,[-0]原=1 0000000)。

  1. 反碼

對(duì)一個(gè)機(jī)器X:

若X>0 ,則 [X]反=[X]原

若X<0, 則 [X]反=對(duì)應(yīng)原碼的符號(hào)位不變,數(shù)值部分按位求反。

例子:X=-52=-0110100

[X]原=1 0110100

[X]反=1 1001011

數(shù)0的反碼也不是唯一的。[+0]反=[+0]原=00000000,[-0]反=[-0]原數(shù)值部分分按位取反=11111111

  1. 補(bǔ)碼

若X>0, 則[X]補(bǔ)= [X]反= [X]原

若X<0, 則[X]補(bǔ)= [X]反+1

例:X=-52=-0110100

[X]原=1 0110100

[X]反=1 1001011

[X]補(bǔ)=[X]反+1=11001100

數(shù)0的補(bǔ)碼是唯一的。

[+0]補(bǔ)=[+0]原=00000000,[-0]補(bǔ)=[-0]反+1=11111111+1=1 00000000 對(duì)8位字長(zhǎng),進(jìn)位被舍掉就為00000000和[+0]補(bǔ)相同。


補(bǔ)碼的說(shuō)明:

鐘表將指針從5點(diǎn)撥到1點(diǎn)

兩種撥法

逆時(shí)針撥:5-4=1

順時(shí)針撥:5+8=12+1=1 (12為模,自動(dòng)丟失)

于是,對(duì)模12有5-4=5+8

8和-4互為補(bǔ)數(shù)

[-4]補(bǔ)=12-4=8

5-4=5+(-4)=5+(12-4)=5+8=12+1

補(bǔ)碼的好處:實(shí)現(xiàn)將減法運(yùn)算轉(zhuǎn)換為加法運(yùn)算。


補(bǔ)碼的算數(shù)運(yùn)算

[X+Y]補(bǔ)=[X]補(bǔ)+[Y]補(bǔ)

[X-Y]補(bǔ)=[X+(-Y)]補(bǔ) =[X]補(bǔ)+[-Y]補(bǔ)

例一:66-51=66+(-51)=15

用補(bǔ)碼運(yùn)算

[+66]補(bǔ)= [+66]原= 01000010

[-51]原=10110011

[-51]補(bǔ)=[-51]反+1=11001100+1=11001101

[+66]補(bǔ)+ [-51]補(bǔ)=1 00001111=15

例二:X=-52=-0110100,Y=116=+1110100,求X+Y=?

[X]原=10110100

[X]補(bǔ)= [X]反+1=11001100

[Y]補(bǔ)= [Y]原=01110100

[X+Y]補(bǔ)= [X]補(bǔ)+ [Y]補(bǔ)=11001100+01110100=0 1000000

X+Y=+1000000


現(xiàn)代計(jì)算機(jī)系統(tǒng)中,程序設(shè)計(jì)時(shí),負(fù)數(shù)可用“-”表示,由編譯系統(tǒng)將其轉(zhuǎn)換為補(bǔ)碼。

例:若輸入數(shù)=-3

程序編譯后的值=FDH



特殊數(shù)10000000

無(wú)符號(hào)數(shù):(10000000)B=128

在原碼中定義為:(10000000)B=-0

在反碼中定義為:(10000000)B= -127

在補(bǔ)碼中定義為:(10000000)B= -128

  1. 計(jì)算機(jī)能力的局限性

計(jì)算機(jī)的運(yùn)算能力是有限的

? 計(jì)算機(jī)無(wú)力解決無(wú)法設(shè)計(jì)出算法的問(wèn)題

? 無(wú)法處理無(wú)窮運(yùn)算或連續(xù)變化的信息

計(jì)算機(jī)能夠表示的數(shù)(表數(shù))的范圍是有限的

? 計(jì)算機(jī)的表數(shù)范圍受字長(zhǎng)的限制

? 例:對(duì)8位機(jī):

? 無(wú)符號(hào)數(shù)的最大值:1111 1111

有符號(hào)正數(shù)的最大值:0111 1111

當(dāng)運(yùn)算結(jié)果超出計(jì)算機(jī)表數(shù)范圍時(shí),將產(chǎn)生溢出

(1)無(wú)符號(hào)整數(shù)的表示范圍:

? 當(dāng)計(jì)算機(jī)中數(shù)的運(yùn)行結(jié)果超出表數(shù)范圍時(shí),則產(chǎn)生溢出。

? 無(wú)符號(hào)整數(shù)的表數(shù)范圍:

? 0 ≤ X ≤ 2n-1,n表示字長(zhǎng)


無(wú)符號(hào)數(shù)加減運(yùn)算溢出的判斷方法:

當(dāng)最高位向更高位有進(jìn)位(或借位)時(shí)則產(chǎn)生溢出

[例]:2個(gè)8位數(shù)的加法運(yùn)算

最高位向前有進(jìn)位,產(chǎn)生溢出

11111111

+ 00000001

=1 00000000

最高位向前有進(jìn)位,產(chǎn)生溢出

溢出位超出8位有效字長(zhǎng)

在有效字長(zhǎng)范圍內(nèi),結(jié)果為0, 出錯(cuò)


(2)有符號(hào)整數(shù)的表示范圍

原碼和反碼:-(2n-1) ≤X≤2n-1-1

補(bǔ)碼:-2n-1≤X≤2n-1-1

對(duì)8位二進(jìn)制數(shù):

原碼:-127~+127

反碼:-127~+127

補(bǔ)碼:-128~+127


符號(hào)數(shù)運(yùn)算中的溢出判斷

? 兩個(gè)有符號(hào)二進(jìn)制數(shù)相加或相減時(shí),若運(yùn)算結(jié)果超出可表達(dá)范圍,則產(chǎn)生溢出.

? 溢出的判斷方法:

? 最高位進(jìn)位狀態(tài)+次高位進(jìn)位狀態(tài)=1,則結(jié)果溢出

除法運(yùn)算溢出時(shí),產(chǎn)生"除數(shù)為0"中斷;乘法運(yùn)算無(wú)溢出問(wèn)題。

[例]:

? 若:X=01111000, Y=01101001

則:X+Y=

01111000

+01101001

=11100001

?

次高位向最高位有進(jìn)位,而最高位向前無(wú)進(jìn)位,產(chǎn)生溢出。

(事實(shí)上,兩正數(shù)相加得出負(fù)數(shù),結(jié)果出錯(cuò))

  1. 符號(hào)二進(jìn)制數(shù)與十進(jìn)制的轉(zhuǎn)換

轉(zhuǎn)換方法:

? 求出真值

? 進(jìn)行轉(zhuǎn)換

計(jì)算機(jī)中的符號(hào)數(shù)默認(rèn)以補(bǔ)碼形式表示。

原碼=符號(hào)位+絕對(duì)值

正數(shù)的補(bǔ)碼=原碼=符號(hào)位+絕對(duì)值

∵負(fù)數(shù)的補(bǔ)碼≠原碼 ∴負(fù)數(shù)的補(bǔ)碼≠符號(hào)位+絕對(duì)值

那么,負(fù)數(shù)的補(bǔ)碼如何得到真值呢

例:補(bǔ)碼數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)

設(shè):

? [X]補(bǔ)=0 0101110B ?真值=+0101110B ?X=+101110B=+46

若設(shè):

? [X]補(bǔ)=1 1010010B ?X≠-1010010B ?欲求X真值,需對(duì)[X]補(bǔ)再取補(bǔ)

X=[[X]補(bǔ)]補(bǔ)=[11010010]補(bǔ)= - 0101110 = - 46

對(duì)正數(shù):

? 補(bǔ)碼=反碼=原碼,且 原碼=符號(hào)位+真值

? 所以:正數(shù)補(bǔ)碼的數(shù)制部分為真值

因正數(shù)的反碼、補(bǔ)碼與其對(duì)應(yīng)的原碼相同,故其數(shù)值部分亦為真值

對(duì)負(fù)數(shù):

? 補(bǔ)碼≠反碼≠ 原碼

? 所以:負(fù)數(shù)補(bǔ)碼的數(shù)制部分≠真值

負(fù)數(shù)只有原碼的數(shù)值部分是真值

負(fù)數(shù)反碼和補(bǔ)碼的數(shù)值部分都不是真值


第7講 基本邏輯運(yùn)算與邏輯門

  1. 關(guān)于邏輯

邏輯:是思維規(guī)律,事物因果之間所遵循的規(guī)律。邏輯的基本表現(xiàn)形式是命題和推理

命題:能判斷真假的陳述語(yǔ)句

推理:從前提推出結(jié)論的思維過(guò)程。前題是已知的命題,結(jié)論是通過(guò)推理規(guī)則得出的命題。


關(guān)于邏輯——命題

語(yǔ)句例:

2+3=5——真命題

3是偶數(shù)——假命題

明天上午有課嗎?——不是命題

3不是偶數(shù)——非(否定)

小明既學(xué)過(guò)英語(yǔ),也學(xué)過(guò)德語(yǔ)——并(同時(shí))

從先到北京經(jīng)鄭州走,或者經(jīng)太原走——或者


復(fù)合命題可以由簡(jiǎn)單命題通過(guò)“聯(lián)結(jié)詞”所表示的運(yùn)算得到。

命題是邏輯的基本表現(xiàn)形式,所以,“聯(lián)結(jié)詞”所表示的運(yùn)算就是邏輯運(yùn)算。

并非——“非“運(yùn)算

并且——“與“運(yùn)算

或者——“或“運(yùn)算


命題的“真”和“假”可以對(duì)應(yīng)為

在物理上:開(kāi)關(guān)的“斷開(kāi)”和“閉合”,電平的“高”和“低”,……

在數(shù)學(xué)上:二進(jìn)制的“1”和“0”

現(xiàn)代計(jì)算機(jī)由各種邏輯器件構(gòu)成,數(shù)學(xué)基礎(chǔ)是邏輯代數(shù)


邏輯代數(shù)

? 邏輯代數(shù)由英國(guó)數(shù)學(xué)家喬治·布爾發(fā)明

? 主要研究和判斷相關(guān)的運(yùn)算

? 用字母表示變量,變量的取值只有0和1?!?”對(duì)應(yīng)“假”,“1”對(duì)應(yīng)“真


  1. 邏輯運(yùn)算與基本邏輯門

邏輯運(yùn)算

用符號(hào)來(lái)表示命題及其聯(lián)結(jié)關(guān)系

例如:命題“小明及學(xué)過(guò)英語(yǔ),也學(xué)過(guò)德語(yǔ)“可以符號(hào)化為:A and B

表示兩個(gè)命題之間具有邏輯關(guān)系——真值表

邏輯關(guān)系真值表


1.“與“運(yùn)算

“與“運(yùn)算

僅當(dāng)輸入條件全部為“真“時(shí),輸出得結(jié)果為”真“

若輸入條件有一個(gè)為“假“,則輸出結(jié)果為”假“

“與“運(yùn)算符號(hào):“·”, “∧”

若用1表示“真”,用0表示“假”,則與規(guī)則:1∧1=1, 1∧0=0, 0∧1=0, 0∧0=0

在電路中,與運(yùn)算相當(dāng)于開(kāi)關(guān)的串聯(lián)電路。僅當(dāng)所有開(kāi)關(guān)都閉合時(shí),電路才通電。




與門(AND gate)

對(duì)多個(gè)邏輯變量執(zhí)行“與”運(yùn)算的門電路



?


  1. “或”運(yùn)算

“或”運(yùn)算

? 輸入條件中有一個(gè)為“真”,則輸出的結(jié)果為“真”

? 僅當(dāng)輸入條件全部為“假”時(shí),輸出結(jié)果才為“假”

“或”運(yùn)算符號(hào):“+”,“∨”

“或”運(yùn)算規(guī)則: 0∨0=0 ,0∨1=1, 1∨0=1, 1∨1=1

電路中,“或”運(yùn)算相當(dāng)于開(kāi)關(guān)的并聯(lián)電路

僅當(dāng)所有開(kāi)關(guān)都斷開(kāi)時(shí),電路才無(wú)電流通過(guò)。



或門(OR gate)

對(duì)多個(gè)邏輯變量執(zhí)行“或”運(yùn)算的門電路




  1. “非”運(yùn)算

“非”運(yùn)算:

? 當(dāng)決定事件結(jié)果的條件滿足時(shí),事件不發(fā)生。

? 非”屬于單邊運(yùn)算,只有一個(gè)運(yùn)算對(duì)象,運(yùn)算符為一條上橫線??梢员硎緸椋篈=B。

“非”運(yùn)算

“非”運(yùn)算電路的表示:當(dāng)開(kāi)關(guān)斷開(kāi)時(shí)燈亮;開(kāi)關(guān)閉合時(shí)燈滅。



非門電路(NOT gate)

對(duì)單個(gè)邏輯變量進(jìn)行“非”運(yùn)算

F=A



小結(jié):

邏輯運(yùn)算與數(shù)學(xué)運(yùn)算的區(qū)別:

算術(shù)運(yùn)算是兩個(gè)數(shù)之間的運(yùn)算,低位運(yùn)算結(jié)果將對(duì)高位運(yùn)算產(chǎn)生影響;

邏輯運(yùn)算是按位進(jìn)行的運(yùn)算,低位運(yùn)算結(jié)果對(duì)高位運(yùn)算不產(chǎn)生影響


當(dāng)“與”門的輸入端有1位為低電平(0)時(shí),則輸出為“0”

當(dāng)“或”門的輸入端有1位為高電平(1)時(shí),則輸出為“1”

(以上兩種情況,其它輸入對(duì)輸出不會(huì)產(chǎn)生影響,我們稱對(duì)“與”門(或“或”門)進(jìn)行了“封鎖”)

第8講 其它常用邏輯運(yùn)算及其邏輯電路

  1. “與非“邏輯

“與”運(yùn)算 + “非”運(yùn)算= “與非”運(yùn)算

A·B或者A∧B

將與門的輸出接入非門的輸入,構(gòu)成“與非門”


  1. “或非”邏輯

“或”運(yùn)算 + “非”運(yùn)算=“或非”運(yùn)算

A+B 或者 A∨B

將或門的輸出接入非門的輸入,構(gòu)成“或非門”



“與非門”和“或非”小結(jié)

“與非門”及“或非門”均為多輸入單輸出的門電路

可實(shí)現(xiàn)多個(gè)變量的“與非”或者“或非”運(yùn)算

例子:


  1. “異或”邏輯

“異或”邏輯關(guān)系是在與、或、非3種基本邏輯運(yùn)算基礎(chǔ)上的變換。

? 異或邏輯的布爾代數(shù)表達(dá)式:F=A·B+A·B=A⊕B,⊕為異或運(yùn)算符

“異或”運(yùn)算是兩個(gè)變量的運(yùn)算

運(yùn)算規(guī)則:相同則為0,相異則為1

異或門

對(duì)輸入的兩個(gè)邏輯變量執(zhí)行“異或”運(yùn)算的門電路

異或門是兩輸入單輸出的門電路



  1. “同或”邏輯

“同或”運(yùn)算是在“異或”運(yùn)算的基礎(chǔ)上再進(jìn)行“非”運(yùn)算的結(jié)果。

同或運(yùn)算的布爾表達(dá)式:F=A⊕B

“同或”運(yùn)算是兩個(gè)變量的運(yùn)算

運(yùn)算規(guī)則:

相同則為1,相異則為0

同或門

對(duì)輸入的兩個(gè)邏輯變量執(zhí)行“同或”運(yùn)算的門電路



本章小結(jié)

學(xué)習(xí)要求:

? 微型計(jì)算機(jī)系統(tǒng)組成

? 計(jì)算機(jī)中的數(shù)制及其轉(zhuǎn)換

? 補(bǔ)碼的概念和運(yùn)算

? 馮·諾依曼結(jié)構(gòu)及基本原理

? 基本邏輯門及其邏輯關(guān)系


教學(xué)要求

? 希望理解并能夠回答以下問(wèn)題:

? 微處理器、微型計(jì)算機(jī)、微型計(jì)算機(jī)系統(tǒng)三者間有什么不同?

? 計(jì)算機(jī)為什么要采用二進(jìn)制?除二進(jìn)制外為什么還有其它計(jì)數(shù)制?

? 什么是無(wú)符號(hào)數(shù)?什么是有符號(hào)數(shù)?

? 為什么要引入補(bǔ)碼?

? 馮·諾依曼計(jì)算機(jī)具有什么結(jié)構(gòu)特點(diǎn)和基本工作原理?

? 利用馮·諾依曼計(jì)算機(jī)執(zhí)行一條指令需要的基本過(guò)程?

? 什么是邏輯?真值表的含義?

程序計(jì)數(shù)器PC的作用

希望掌握并能夠回答以下問(wèn)題:

? 不同計(jì)數(shù)制之間如何轉(zhuǎn)換?

? 原碼、反碼和補(bǔ)碼之間的關(guān)系?

? 二進(jìn)制運(yùn)算

? 如何判斷運(yùn)算結(jié)果是否溢出?

? 基本邏輯門電路的符號(hào)及輸入與輸出的關(guān)系(邏輯真值表)

注意點(diǎn):

? 內(nèi)存的組織模式

? 單元,單元內(nèi)容,單元地址


? 邏輯門及邏輯關(guān)系


難點(diǎn)及要點(diǎn):

? 補(bǔ)碼的概念及其運(yùn)算

? 基本邏輯門及其邏輯關(guān)系


第一周 微型計(jì)算機(jī)基礎(chǔ)概論的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
合肥市| 观塘区| 明溪县| 商洛市| 瑞金市| 徐闻县| 陆河县| 乐都县| 吴江市| 河源市| 根河市| 陇西县| 塘沽区| 盐池县| 娄烦县| 区。| 临城县| 巩留县| 本溪市| 新竹市| 永年县| 大方县| 沙湾县| 温宿县| 壶关县| 攀枝花市| 威信县| 仁布县| 昭通市| 布拖县| 来宾市| 承德市| 娄底市| 西峡县| 郎溪县| 永丰县| 安泽县| 江北区| 莲花县| 丰镇市| 修武县|