微機(jī)原理及應(yīng)用課件_第1頁
微機(jī)原理及應(yīng)用課件_第2頁
微機(jī)原理及應(yīng)用課件_第3頁
微機(jī)原理及應(yīng)用課件_第4頁
微機(jī)原理及應(yīng)用課件_第5頁
已閱讀5頁,還剩82頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

微型計(jì)算機(jī)系統(tǒng)原理及應(yīng)用

主講:羅光明電話:郵箱:.cn

序教育部提出計(jì)算機(jī)基礎(chǔ)教學(xué)分三個(gè)層次如圖1-1所示:

計(jì)算機(jī)基礎(chǔ)教學(xué)三層次結(jié)構(gòu)其中:第一層次:計(jì)算機(jī)文化基礎(chǔ)

學(xué)習(xí)計(jì)算機(jī)基本知識(shí),及基本技能。第二層次:計(jì)算機(jī)技術(shù)基礎(chǔ) 學(xué)習(xí)計(jì)算機(jī)硬件、軟件的工作原理 與相關(guān)知識(shí)。第三層次:計(jì)算機(jī)應(yīng)用基礎(chǔ)

學(xué)習(xí)計(jì)算機(jī)信息管理基礎(chǔ)和多媒體。

本課程屬于第二層次中“計(jì)算機(jī)硬件基礎(chǔ)”課程計(jì)算機(jī)硬件技術(shù)基礎(chǔ)課特點(diǎn):內(nèi)容多,學(xué)時(shí)少,進(jìn)度快,難度大,應(yīng)用廣。講課內(nèi)容:

微機(jī)原理、匯編語言、接口技術(shù).講課學(xué)時(shí):56學(xué)時(shí),實(shí)驗(yàn)學(xué)時(shí):8學(xué)時(shí)主要參考書:周明德編著,《微型計(jì)算機(jī)系統(tǒng)原理及應(yīng)用》第五版,清華大學(xué)出版社李繼燦主編,《微型機(jī)算計(jì)原理及應(yīng)用》

第三版,清華大學(xué)出版社作業(yè):下次公布上次的作業(yè)答案。按時(shí)交作業(yè),僅考察作業(yè)效果,批改(助教批改)。答疑時(shí)間、地點(diǎn):每周二下午4:30~5:30,工科南樓(309)如何學(xué)好這門課給同學(xué)們提幾點(diǎn)建議:1、課程特點(diǎn):基于工程問題的教育

學(xué)習(xí)計(jì)算機(jī)硬件、軟件的工作原理與相關(guān)知識(shí)。2、觀念轉(zhuǎn)變(教師角色、學(xué)生地位的轉(zhuǎn)變):

教師角色的轉(zhuǎn)變:教師從原來以教師為中心的“講解者”的角色轉(zhuǎn)化為學(xué)生學(xué)習(xí)的指導(dǎo)者。學(xué)生地位的轉(zhuǎn)變:學(xué)生由原來單純聽講、接受灌輸?shù)谋粍?dòng)地位轉(zhuǎn)化為:主動(dòng)參與、發(fā)現(xiàn)、探究的主體地位;2、媒體作用、教學(xué)過程的轉(zhuǎn)變:媒體作用的轉(zhuǎn)變:教學(xué)媒體由教師的講解工具轉(zhuǎn)化為學(xué)生的認(rèn)知工具

;教學(xué)過程的轉(zhuǎn)變:教學(xué)過程由傳統(tǒng)的邏輯分析或邏輯綜合,講解說明式的過程轉(zhuǎn)變?yōu)椋?以意義建構(gòu)理論指導(dǎo)下的教學(xué)過程,

并通過意義建構(gòu)形成自己的知識(shí)結(jié)構(gòu), 從而獲得知識(shí),掌握知識(shí)。3、學(xué)習(xí)的精髓:在學(xué)校學(xué)習(xí)的精髓在于:在學(xué)校的大環(huán)境中,利用校園文化對(duì)學(xué)生的影響,實(shí)現(xiàn):師生之間在課堂上的相互交流以及學(xué)生之間的相互交流,在利用別人最好成果的基礎(chǔ)上取得進(jìn)展。4、抓住教學(xué)過程中的3個(gè)環(huán)節(jié)上課時(shí)要主動(dòng)參與、探究將上課時(shí)的多媒體教案從教師手中轉(zhuǎn)化為自己的認(rèn)知工具,主動(dòng)參與、探究;會(huì)設(shè)置自學(xué)內(nèi)容,通過自學(xué)從而培養(yǎng)自學(xué)的能力;獨(dú)立完成作業(yè)

同學(xué)之間相互交流,一起討論,但一定要獨(dú)立完成作業(yè);實(shí)驗(yàn)課前要預(yù)習(xí),寫出預(yù)習(xí)報(bào)告,做到心中有數(shù),有的放矢;實(shí)驗(yàn)課后,要寫實(shí)驗(yàn)報(bào)告,總結(jié)經(jīng)驗(yàn)和教訓(xùn),提高自己分析問題和解決問題的能力,培養(yǎng)一種嚴(yán)謹(jǐn)科學(xué)作風(fēng)。5.收獲與時(shí)間成正比

本課程理論聯(lián)系實(shí)際非常緊密,內(nèi)容更新極快。只能采用解剖麻雀方法,教師在這里只起到拋磚引玉的作用。

因此同學(xué)們學(xué)習(xí)過程中,要花時(shí)間去學(xué)習(xí)、思索、實(shí)踐,有機(jī)地將本專業(yè)的知識(shí)結(jié)合起來,構(gòu)成一個(gè)實(shí)際系統(tǒng),解決實(shí)際問題。

收獲與時(shí)間成正比,花時(shí)間越多,收獲將越大。成績?cè)u(píng)定實(shí)驗(yàn):20%作業(yè):10%閉卷考試:70%特別申明:不參加實(shí)驗(yàn)或?qū)嶒?yàn)考核不及格者不提供理論考試試卷,強(qiáng)行參考者不予成績?cè)u(píng)定。第1章概述

1.1x86系列結(jié)構(gòu)的概要?dú)v史

1971年:Intel4004。(4位機(jī))

70年代中期:Intel8080、8085。(8位機(jī))

80年代初:Intel8086、8088。(16位機(jī))

從8086(8088)到80286、80386、80486、奔騰(也稱為80586)、奔騰MMX、奔騰Pro(也稱為80686)、奔騰Ⅱ、奔騰Ⅲ,直至最新的奔騰Ⅳ,形成了IA(IntelArchitecture)-32結(jié)構(gòu)。1.1.18086

x86系列結(jié)構(gòu)的最新版本的發(fā)展能追溯到Intel8086。在x86系列結(jié)構(gòu)系統(tǒng)引進(jìn)32位處理器之前,是16位的處理器,包括8086處理器和隨后很快開發(fā)的80186與80286。從歷史的觀點(diǎn)來看,x86系列結(jié)構(gòu)同時(shí)包括了16位處理器和32位處理器。在現(xiàn)在,32位x86系列結(jié)構(gòu)對(duì)于許多操作系統(tǒng)和十分廣泛的應(yīng)用程序來說是最流行的計(jì)算機(jī)結(jié)構(gòu):IA-32結(jié)構(gòu)。

8086有16位寄存器和16位外部數(shù)據(jù)總線,具有20位地址總線,可尋址1M字節(jié)地址空間。1.1.280386

Intel386處理器是x86系列結(jié)構(gòu)系列中的第一個(gè)32位處理器。引入了32寄存器,用于容納操作數(shù)和地址。每個(gè)32位寄存器的后一半保留兩個(gè)早期處理器版本(8086和80286)的16位寄存器的特性,以提供完全的后向兼容。

Intel386處理器有32位地址總線,能支持多至4G字節(jié)的物理存儲(chǔ)器。32位結(jié)構(gòu)為每個(gè)軟件進(jìn)程提供邏輯地址空間。4K字節(jié)固定尺寸的頁提供一種虛擬存儲(chǔ)管理方法。1.1.380486 Intel486處理器指令譯碼和執(zhí)行單元擴(kuò)展為五個(gè)流水線段,增加了更多的并行執(zhí)行能力,486處理器能在每個(gè)時(shí)鐘周期執(zhí)行一條指令。 80486的一個(gè)重大改進(jìn)是在x86系列處理器的芯片中引入了緩存。在芯片上增加了一8K字節(jié)的一級(jí)緩存(cache),大大增加了每個(gè)時(shí)鐘周期執(zhí)行一條指令的百分比,包括操作數(shù)在一級(jí)cache中的存儲(chǔ)器訪問指令。

Intel486處理器也是第一次把x87FPU(浮點(diǎn)處理單元)集成到處理器上并增加了新的引腳、位和指令,以支持更復(fù)雜和更強(qiáng)有力的系統(tǒng)(二級(jí)cache支持和多處理器支持)。

1.1.4奔騰(Pentium) Intel奔騰(Pentium)處理器增加了第二個(gè)執(zhí)行流水線以達(dá)到超標(biāo)量性能。 芯片上的一級(jí)cache也加倍了,8K字節(jié)用于代碼,另8K字節(jié)用于數(shù)據(jù)。

主要的寄存器仍是32位,但內(nèi)部數(shù)據(jù)通路是128和256位以加速內(nèi)部數(shù)據(jù)傳送,且猝發(fā)的外部數(shù)據(jù)總線已經(jīng)增加至64位。

奔騰系列的最后一個(gè)處理器把IntelMMX技術(shù)引入IA-32結(jié)構(gòu)。IntelMMX技術(shù)用單指令多數(shù)據(jù)(SIMD)執(zhí)行方式在包含64位MMX寄存器中的包裝的整型數(shù)據(jù)上執(zhí)行并行計(jì)算。此技術(shù)在高級(jí)媒體、影像處理和數(shù)據(jù)壓縮應(yīng)用程序上極大地增強(qiáng)了IA-32處理器的性能。1.1.5P6系列處理器

在1995年,Intel引入了P6系列處理器。此處理器系列是基于新的超標(biāo)量微結(jié)構(gòu)上的,它建立了新的性能標(biāo)準(zhǔn)。

IntelPentiumPro處理器是基于P6微結(jié)構(gòu)的第一個(gè)處理器。P6處理器系統(tǒng)隨后的成員是IntelPentiumII、IntelPentiumIIXeon(至強(qiáng))、IntelCeleron(賽揚(yáng))、IntelPentiumIII和IntelPentiumIIIXeon(至強(qiáng))處理器。1.1.6奔騰II IntelPentiumII處理器把MMX技術(shù)加至P6系列處理器,并具有新的包裝和若干硬件增強(qiáng)。處理器核心包裝在了SECC上,這使其更具有了靈活的母板結(jié)構(gòu)。第一級(jí)數(shù)據(jù)和指令caches每個(gè)擴(kuò)展至16K字節(jié),支持二級(jí)cache的尺寸為256K字節(jié)、512K字節(jié)和1M字節(jié)。1.1.7奔騰III PentiumIII處理器引進(jìn)流SIMD擴(kuò)展(SSE)至X86系列結(jié)構(gòu)。SSE擴(kuò)展把由IntelMMX引進(jìn)的SIMD執(zhí)行模式擴(kuò)展為新的128位寄存器和能在包裝的單精度浮點(diǎn)數(shù)上執(zhí)行SIMD操作。

1.1.8IntelPentium4處理器 IntelPentium4處理器是2000年推出的ia-32處理器,并是第一個(gè)基于IntelNetBurst微結(jié)構(gòu)的處理器。IntelNetBurst微結(jié)構(gòu)是新的32bit微結(jié)構(gòu),它允許處理器能在比以前的IA-32處理器更高的時(shí)鐘速度和性能等級(jí)上進(jìn)行操作。IntelPentium4處理器有以下高級(jí)特性:

(1)IntelNetBurst微結(jié)構(gòu)的第一個(gè)實(shí)現(xiàn)。

(2)流SIMD擴(kuò)展2(SSE2)

(3)400MHzIntelNetBurst微結(jié)構(gòu)系統(tǒng)總線。

(4)與在IntelX86系列結(jié)構(gòu)處理器上所寫和運(yùn)行的已存在的應(yīng)用程序和操作系統(tǒng)兼容。1.1.9Intel超線程處理器 Intel公司于2002年推出了具有超線程技術(shù)的IA-32列處理器。超線程(Hyper-ThreadingHT)技術(shù)允許單個(gè)物理處理器用共享的執(zhí)行資源并發(fā)地執(zhí)行兩個(gè)或多個(gè)分別的代碼流(線程)。以提高X86系列處理器執(zhí)行多線程操作系統(tǒng)與應(yīng)用程序代碼的性能。圖1-1顯示支持HT技術(shù)(用兩個(gè)邏輯處理器實(shí)現(xiàn)的)的IA-32處理器與傳統(tǒng)的雙處理器系統(tǒng)的比較。1.1.10Intel雙核技術(shù)處理器

雙核技術(shù)是在IA-32處理器系列中硬件多線程能力的另一種形式。雙核技術(shù)由用在單個(gè)物理包中有兩個(gè)分別的執(zhí)行核心提供硬件多線程能力。因此,IntelPentium處理器極品版在一個(gè)物理包中提供四個(gè)邏輯處理器(每個(gè)處理器核有兩個(gè)邏輯處理器)。

IntelPentiumD處理器也以雙核技術(shù)為特色。此處理器用雙核技術(shù)提供硬件多線程支持,但它不提供超線程技術(shù)。因此,IntelPentiumD處理器在一個(gè)物理包中提供兩個(gè)邏輯處理器,每個(gè)邏輯處理器擁有處理器核的執(zhí)行資源,如圖1-2所示。

AMD公司是x86系列處理器的另一重要供應(yīng)商。它于1969年成立。于1991年推出了AM386系列,1993年推出了AM486,1997年推出了AMD-K6(相當(dāng)于具有MMX技術(shù)的奔騰處理器),2001年推出了AMDAthlon(速龍)MP雙處理器,2003年推出AMD速龍?64FX處理器,具有64位的x86-64內(nèi)核。直至最近推出了雙核的64位處理器。1.2計(jì)算機(jī)基礎(chǔ)

1.2.1計(jì)算機(jī)的基本結(jié)構(gòu)

上述的CPU、主板、內(nèi)存條、硬盤、軟盤、顯示卡、顯示器、鍵盤、鼠標(biāo)等。這些都是計(jì)算機(jī)的部件,雖然這些部件的功能與性能都有了巨大的發(fā)展,但是計(jì)算機(jī)的基本結(jié)構(gòu)未變,如圖1-7所示。在計(jì)算機(jī)中,基本上有兩種信息在流動(dòng):

一種信息為數(shù)據(jù),即各種原始數(shù)據(jù)、中間結(jié)果、程序等。另一種信息流即控制命令

在上述的計(jì)算機(jī)硬件中,往往把運(yùn)算器、控制器和存儲(chǔ)器合在一起稱為計(jì)算機(jī)的主機(jī);而把各種輸入輸出設(shè)備統(tǒng)稱為計(jì)算機(jī)的外圍設(shè)備或外部設(shè)備(Peripheral)。在主機(jī)部分中,又把運(yùn)算器和控制器合在一起稱為中央處理單元CPU(CentralProcessingUnit)。隨著半導(dǎo)體集成電路技術(shù)的發(fā)展,可以把整個(gè)CPU集成在一個(gè)集成電路芯片上,稱為微處理器(Microprocessor)。

人們把以微處理器為核心構(gòu)成的計(jì)算機(jī),稱為微型計(jì)算機(jī),最典型的就是上述的PC機(jī)。若內(nèi)存的容量較小,輸入輸出設(shè)備少,整個(gè)計(jì)算機(jī)可以只安裝在一塊印刷電路板上,這樣的計(jì)算機(jī)就稱為單板計(jì)算機(jī)。若能把整個(gè)計(jì)算機(jī)集成在一個(gè)芯片上,就稱為單片機(jī)。1.2.2常用的名詞術(shù)語和二進(jìn)制編碼

1.位、字節(jié)、字及字長

(1)位(Bit)“位”是指一個(gè)二進(jìn)制位。它是計(jì)算機(jī)中信息存儲(chǔ)的最小單位,一般用b(bit)表示。

(2)字節(jié)(Byte)“字節(jié)”是指相鄰的8個(gè)二進(jìn)制位,一般用B(Byte)表示。

1024B為1KB,1024KB為1MB,1024MB為1GB,1024GB為1TB。

(3)字(Word)和字長

“字”是計(jì)算機(jī)內(nèi)部進(jìn)行數(shù)據(jù)傳遞、處理的基本單位。通常它與計(jì)算機(jī)內(nèi)部的寄存器、運(yùn)算裝置、總線寬度相一致。

一個(gè)字所包含的二進(jìn)制位數(shù)稱為字長。常見的微機(jī)的字長有8位、16位、32位和64位。

2.數(shù)字編碼 計(jì)算機(jī)中的數(shù)用二進(jìn)制表示。計(jì)算機(jī)中的十進(jìn)制數(shù)的每一位用若干位二進(jìn)制表示,這就是二進(jìn)制編碼。即十進(jìn)制數(shù)的二進(jìn)制編碼,簡稱二-十進(jìn)制編碼(BCD)。

3.字符編碼同樣,字母、數(shù)字、符號(hào)等各種字符也必須按照特定的規(guī)則用二進(jìn)制編碼才能在計(jì)算機(jī)中表示。字符編碼的方式很多,世界上最普遍采用的一種字符編碼是ASCII碼(美國信息交換標(biāo)準(zhǔn)碼)。

4.漢字編碼用計(jì)算機(jī)處理漢字,每個(gè)漢字須用代碼表示。

(1)外部碼是計(jì)算機(jī)輸入漢字的代碼,是代表某一個(gè)漢字的一組鍵盤符號(hào)。(2)內(nèi)部碼(漢字內(nèi)碼或漢字機(jī)內(nèi)碼)

內(nèi)部碼通常是用其在漢字字庫中的物理位置表示,可以用漢字在漢字字庫中的序號(hào)或者用漢字在漢字字庫中的存儲(chǔ)位置表示。漢字在計(jì)算機(jī)中至少要用兩個(gè)字節(jié)表示(有用三字節(jié)、四字節(jié)表示的),在微機(jī)中常用兩字節(jié)漢字內(nèi)碼。

(3)交換碼 計(jì)算機(jī)之間或計(jì)算機(jī)與終端之間交換信息時(shí),要求其間傳送的漢字代碼信息要完全一致。國家根據(jù)漢字的常用程度定出了一級(jí)和二級(jí)漢字字符集,并規(guī)定了編碼,這就是國標(biāo)GB2312-80《信息交換用漢字編碼字符集基本集》,GB2312-80中漢字的編碼即國標(biāo)碼。該標(biāo)準(zhǔn)編碼字符集共收錄漢字和圖形符號(hào)7445個(gè)。

(4)輸出碼 漢字輸出碼又稱漢字字形碼或漢字發(fā)生器的編碼。眾所周知,漢字無論字形有多少變化,也無論筆劃有多有少,都可以寫在一個(gè)方塊中;一個(gè)方塊可以看作m行n列的矩陣,稱為點(diǎn)陣。一個(gè)m行n列的點(diǎn)陣共有m×n個(gè)點(diǎn)。例如16×16點(diǎn)陣的漢字,共有256個(gè)點(diǎn)。每個(gè)點(diǎn)可以是黑點(diǎn)或者非黑點(diǎn),凡是筆劃經(jīng)過的點(diǎn)用黑點(diǎn),于是利用點(diǎn)陣描繪出了漢字字形,漢字的點(diǎn)陣字形在計(jì)算機(jī)中稱為字模。如圖1-8表示漢字“中”的16×16點(diǎn)陣字模。00000001100000000000000110000000000000011000000000000001100000000111111111111110011000011000011001100001100001100110000110000110011000011000011001111111111111100000000110000000000000011000000000000001100000000000000110000000000000011000000000000001100000001.2.3指令、程序和指令系統(tǒng)

計(jì)算機(jī)能脫離人的直接干預(yù),自動(dòng)地進(jìn)行計(jì)算,是由于人把實(shí)現(xiàn)計(jì)算的一步步操作用命令的形式——即一條條指令(Instruction)預(yù)先輸入到存儲(chǔ)器中,在執(zhí)行時(shí),機(jī)器把這些指令一條條地取出來,加以翻譯和執(zhí)行。

在使用計(jì)算機(jī)時(shí),必須把要解決的問題編成一條條指令,這些指令的集合就稱為程序。用戶為解決自己的問題所編制的程序,稱為源程序(SourceProgram)。指令通常分成操作碼(Opcode即operationcode)和操作數(shù)(Operand)兩大部分。操作碼表示計(jì)算機(jī)執(zhí)行什么操作;操作數(shù)指明參加操作的數(shù)的本身或操作數(shù)所在的地址。1.2.4初級(jí)計(jì)算機(jī)

為簡化,先用模型機(jī)分析計(jì)算機(jī)內(nèi)部結(jié)構(gòu)。圖1-9是微型計(jì)算機(jī)的結(jié)構(gòu)圖,它是由微處理器(CPU)、存儲(chǔ)器、接口電路組成,通過三條總線(BUS)——地址總線(AddressBus),控制總線(ControlBus)和雙向數(shù)據(jù)總線(DataBus)來連接。

1.CPU的結(jié)構(gòu) 模型機(jī)的CPU結(jié)構(gòu),如圖1-10所示。

算術(shù)邏輯單元ALU(ArithmeticLogicUnit)是執(zhí)行算術(shù)和邏輯運(yùn)算的裝置,它以累加器AL(Accumulator)的內(nèi)容作為一個(gè)操作數(shù);另一個(gè)操作數(shù)由內(nèi)部數(shù)據(jù)總線供給,可以是寄存器(Register)BL中的內(nèi)容,也可以是由數(shù)據(jù)寄存器DR(DataRegister)供給的由內(nèi)存讀出的內(nèi)容等;操作的結(jié)果通常放在累加器AL中。

F(Flag)是標(biāo)志寄存器,由一些標(biāo)志位組成。

PC程序計(jì)數(shù)器,提供要執(zhí)行的指令的地址。

AR(AddressRegister)是地址寄存器,由它把要尋址的單元的地址(可以是指令——?jiǎng)t地址由PC提供;也可以是數(shù)據(jù)——?jiǎng)t地址要由指令中的操作數(shù)部分給定)通過地址總線,送至存儲(chǔ)器。

從存儲(chǔ)器中取出的指令,由數(shù)據(jù)寄存器送至指令寄存器IR(InstructionRegister),經(jīng)過指令譯碼器ID(InstructionDecoder)譯碼,通過控制電路,發(fā)出執(zhí)行一條指令所需要的各種控制信息。

2.存儲(chǔ)器 存儲(chǔ)器的結(jié)構(gòu)如圖1-11所示。它由256個(gè)存儲(chǔ)單元組成,為了能區(qū)分不同的存儲(chǔ)單元,對(duì)這些存儲(chǔ)單元分別編了號(hào),用兩位十六進(jìn)制數(shù)表示,這就是它們的地址如00H、01H、02H、…、FFH等;而每一個(gè)存儲(chǔ)單元可以存放8位二進(jìn)制信息(通常也用兩位十六進(jìn)制數(shù)表示),就是它們的內(nèi)容。

(1)讀操作若已知在04號(hào)存儲(chǔ)單元中,存的內(nèi)容為10000100即84H,若要把它讀出至數(shù)據(jù)總線上,則要求CPU的地址寄存器先給出地址號(hào)04,然后通過地址總線送至存儲(chǔ)器,存儲(chǔ)器中的地址譯碼器對(duì)它進(jìn)行譯碼,找到04號(hào)存儲(chǔ)單元;再要求CPU發(fā)出讀的控制命令,于是04號(hào)存儲(chǔ)單元的內(nèi)容84H就出現(xiàn)在數(shù)據(jù)總線上,由它送至數(shù)據(jù)寄存器DR,如圖1-12所示。

(2)寫操作若要把數(shù)據(jù)寄存器中的內(nèi)容26H寫入到10號(hào)存儲(chǔ)單元,則要求CPU的AR地址寄存器先給出地址10,通過地址總線(AB)送至存儲(chǔ)器,經(jīng)譯碼后找到10號(hào)存儲(chǔ)單元;然后把DR數(shù)據(jù)寄存器中的內(nèi)容26H經(jīng)數(shù)據(jù)總線(DB)送給存儲(chǔ)器;且CPU發(fā)出寫的控制命令,于是數(shù)據(jù)總線上的信息26H就可以寫入到10號(hào)存儲(chǔ)單元中,如圖1-13所示。

3.執(zhí)行過程若程序已經(jīng)存放在內(nèi)存中,大部分8位機(jī)執(zhí)行過程就是取指(取出指令)和執(zhí)行(執(zhí)行指令)這兩個(gè)階段的循環(huán)。機(jī)器從停機(jī)狀態(tài)進(jìn)入運(yùn)行狀態(tài),要把第一條指令所在的地址賦給PC,然后就進(jìn)入取指階段。在取指階段從內(nèi)存中讀出的內(nèi)容必為指令,所以DR把它送至IR,然后由指令譯碼器譯碼,就知道此指令要執(zhí)行什么操作,在取指階段結(jié)束后就進(jìn)入執(zhí)行階段。當(dāng)一條指令執(zhí)行完以后,就進(jìn)入到了下一條指令的取指階段,這樣的循環(huán)一直進(jìn)行到程序結(jié)束(遇到停機(jī)指令)。微型計(jì)算機(jī)工作流程。1.取指令2.取源操作數(shù)3.取目的操作數(shù)4.執(zhí)行指令取指令PC+1譯碼送地址

AR取出地址送操作數(shù)執(zhí)行操作取下一條指令PC+1開始取指令階段執(zhí)行指令階段一個(gè)CPU周期一個(gè)CPU周期一個(gè)CPU周期一個(gè)CPU周期1.2.6尋址方式

如何尋找操作數(shù)(地址)的問題,這就是尋址方式。

1.立即尋址(ImmediateAddressing)

“操作數(shù)在指令中?!?/p>

2.寄存器尋址(RegisterAddressing)

“操作數(shù)在寄存器中?!?.2.5簡單程序舉例

MOVAL,80H;80HALMOVAX,1090H;1090HAXOP90H10H碼段AHAL立即數(shù)尋址MOVDS,AX;AXDSINCCX;CX+1CX寄存器尋址

3.存貯器尋址(1)直接尋址(DirectAddressing)

“操作數(shù)的地址在指令中”在這種尋址方式中,指令的操作數(shù)字段不是操作數(shù)本身,而是操作數(shù)所在的地址,它是把地址所指的存儲(chǔ)單元的內(nèi)容送至累加器AL,如圖1-19所示。由于在這種尋址方式中,指令中包含操作數(shù)的直接地址,故稱為直接尋址。80稱為直接地址操作數(shù)地址的EA直接包含在指令中。MOVAX,[2000H];[DS:2000H]AXOP00H20H

50H30H

碼段數(shù)據(jù)段設(shè)DS=3000HAHAL32000HCS:MOVBX,[3000H];[CS:3000H]BX00H10H碼段BHBL54000H54001H設(shè)CS=5100H(2)寄存器間接尋址(RegisterIndirectAddressing)

“操作數(shù)的地址在寄存器中?!边@種尋址方式是把BL中的內(nèi)容作為操作數(shù)的地址,把此地址所指的內(nèi)存單元的內(nèi)容送AL,如圖1-20所示。在這種尋址方式,操作數(shù)的地址并不直接在指令中,而是在某一個(gè)寄存器中,故稱為間接尋址。BL稱為間址寄存器操作數(shù)在存儲(chǔ)器中,EA由寄存器指出。例MOVAX,[SI];[DS:SI]AXMOVAX,[BP];[SS:BP]AXEA=[BX][SI][DI]若沒有前綴指明具體的段寄存器,則操作數(shù)在數(shù)據(jù)段中EA=[BP]若沒有前綴指明具體的段寄存器,則操作數(shù)在堆棧段。(3).寄存器相對(duì)尋址MOVAX,[BXH]XXXX碼段AHAL36000H36001H00H20H

數(shù)據(jù)段DS=3000HBX=4000H

若EA=[BX][SI][DI]+8位或16位偏移量則操作數(shù)地址DS:EA若EA=[BP]+8位或16位偏移量則操作數(shù)地址:SS:EA(4).基址加變址尋址8086CPU中,BX,BP-基址寄存器SI,DI-變址寄存器

若EA=[BX]+[SI][DI]則操作數(shù)地址:DS:EA例MOVAX,[BX+SI]若DS=1000H,BX=5000H,SI=2000H則EA=5000H+2000H=7000H操作數(shù)地址10000H+7000H=17000H[17000H]AL[17001H]AH

若EA=[BP]+[SI][DI]則操作地址:SS:EA(5).相對(duì)的基址加變址尋址則操作數(shù)地址:DS:EA例MOVAX,[BX+SIH]若DS=3000H,BX=2000H,SI=1000H則操作數(shù)PA=30000HHH+250H=33250H若EA=[BX]+[SI][DI]+8位或16位偏移量若EA=[BP]+[SI][DI]則PA=SS16+EA+偏移量

8086操作數(shù)尋址方式小結(jié):數(shù)據(jù)EA數(shù)據(jù)寄存器數(shù)據(jù)寄存器EA數(shù)據(jù)寄存器位移量地址數(shù)據(jù)指令指令內(nèi)存指令寄存器寄存器指令內(nèi)存指令內(nèi)存+(a)(b)(c)(d)(e)基址寄存器變址寄存器變址值基址值數(shù)據(jù)內(nèi)存+基址寄存器變址寄存器位移量變址值數(shù)據(jù)內(nèi)存+基址值EA指令指令(f)(g)8086尋址方式3.I/O端口尋址1、直接端口尋址:

指令直接提供8位端口地址。例:INAL,63H;(AL)←(63H){從I/O地址號(hào)為63H的端口中讀取數(shù)據(jù)送到AL中}2、間接端口尋址方式:

由DX寄存器給出16位端口地址。例:INAL,DX;(AL)←((DX))OUTDX,AL;{將AL中的內(nèi)容輸出到地址由DX寄存器內(nèi)容所指定的端口中}1.3計(jì)算機(jī)的硬件和軟件

1.3.1系統(tǒng)軟件

這些為了使用和管理計(jì)算機(jī)由機(jī)器的設(shè)計(jì)者提供的軟件,統(tǒng)稱為系統(tǒng)軟件。系統(tǒng)軟件包括:

(1)

各種語言和它們的匯編或解釋、編譯程序;

(2)

機(jī)器的監(jiān)控管理程序(Monitor)、調(diào)試程序(Debug)、故障檢查和診斷程序;

(3)

程序庫。為了擴(kuò)大計(jì)算機(jī)的功能,便于用戶使用,機(jī)器中設(shè)置了各種標(biāo)準(zhǔn)子程序,這些子程序的總和就形成了程序庫;

(4)

操作系統(tǒng)。

1.3.2應(yīng)用軟件

用戶利用計(jì)算機(jī)以及計(jì)算機(jī)所提供的各種系統(tǒng)軟件,編制解決用戶各種實(shí)際問題的程序,這些程序就稱為應(yīng)用軟件。應(yīng)用軟件也可以逐步標(biāo)準(zhǔn)化、模塊化、逐步形成了解決各種典型問題的應(yīng)用程序的組合,稱為軟件包(Package)。1.3.3支撐軟件

支撐軟件又稱支持軟件。為了便于用戶根據(jù)需要建立自己的數(shù)據(jù)庫,詢問、顯示、修改數(shù)據(jù)庫的內(nèi)容,輸出打印各種表格等,這就建立了數(shù)據(jù)庫管理系統(tǒng)(DBMS:DataBaseManagementSystem)、報(bào)表(EXCEL)、字處理(WORD)等支撐軟件。1.4微型計(jì)算機(jī)的結(jié)構(gòu)

運(yùn)算器與控制器是系統(tǒng)的核心,稱為CPU。把整個(gè)運(yùn)算器控制器即CPU集成在一個(gè)芯片上的CPU,稱之為微處理器(MicroProcessor)。CPU本身還不是一個(gè)微型計(jì)算機(jī),而只是微型計(jì)算機(jī)的一部分。只有與適當(dāng)容量的存儲(chǔ)器、輸入輸出設(shè)備的接口電路以及必要的輸入輸出設(shè)備結(jié)合在一起,才是一臺(tái)微型計(jì)算機(jī)(MicroComputer),或稱為微型計(jì)算機(jī)系統(tǒng)(MicroComputerSystem),如圖1-28所示。1.微處理器、微型計(jì)算機(jī)、微型計(jì)算機(jī)系統(tǒng)系統(tǒng)軟件:DOS、Windows95/98/2000應(yīng)用軟件:WPS、Word、Photoshop微處理器CPU

存儲(chǔ)器(RAM,ROM)I/O接口總線硬件軟件微型計(jì)算機(jī)系統(tǒng)微型計(jì)算機(jī)(主機(jī))外設(shè)ALU寄存器控制部件鍵盤、鼠標(biāo)顯示器軟驅(qū)、硬盤、光驅(qū)打印機(jī)、掃描儀普通PC(Pentium)的內(nèi)部結(jié)構(gòu)(多總線結(jié)構(gòu))1.5GHzIDE2PentiumIV北橋440BXAGP南橋PIIX4ECMOS&RTCUSB超級(jí)I/OIDE1COM1COM2LPT12.1GHzL1CacheL2Cache處理機(jī)總線500MHz500MHzPCI總線100MHzPCI插槽ISA插槽ISA總線8MHz內(nèi)存條ROMBIOS顯示器硬盤光驅(qū)軟驅(qū)鍵盤鼠標(biāo)打印機(jī)MODEM66MHz顯卡1.4.1微型計(jì)算機(jī)的外部結(jié)構(gòu)

在微型計(jì)算機(jī)系統(tǒng)中,外部信息的傳送是通過總線進(jìn)行的。大部分微型計(jì)算機(jī)有三組總線:地址總線(AddressBus)、數(shù)據(jù)總線(DataBus)和控制總線(ControlBus)。

地址總線AB:通常為32位,因此,可尋址的內(nèi)存單元為232=4GB。I/O接口也是通過地址總線來尋址的,它可以尋址64K個(gè)外設(shè)端口。

數(shù)據(jù)總線

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論