微型計(jì)算機(jī)原理與應(yīng)用第1章微型計(jì)算機(jī)系統(tǒng)概述課件
,第1章 微型計(jì)算機(jī)系統(tǒng)概述,1.1 微型計(jì)算機(jī)系統(tǒng)的硬件組成和基本工作,方法,1.2 微型計(jì)算機(jī)的軟件和操作系統(tǒng),第 1 章 微型計(jì)算機(jī)系統(tǒng)概述,返回主目錄,第 1 章 微型計(jì)算機(jī)系統(tǒng)概述,學(xué)生在學(xué)習(xí)本書之前,應(yīng)已學(xué)過計(jì)算機(jī)應(yīng)用基礎(chǔ)、數(shù)字電路與邏輯設(shè)計(jì)及某種高級計(jì)算機(jī)語言等課程。可以說,已經(jīng)具備了一些關(guān)于計(jì)算機(jī)的基本知識。但是,在很多情況下 只具備這些基本知識是不夠的,還需要對微型計(jì)算機(jī)的工作原理和應(yīng)用方法有更深入的理解。,計(jì)算機(jī)發(fā)展至今一直有這種趨勢:組成越來越復(fù)雜、功能越來越強(qiáng)、應(yīng)用越來越容易 組成越來越復(fù)雜和功能越來越強(qiáng)不需要解釋,而應(yīng)用越來越容易是指對一般用戶而言的。這里所說的容易是建立在無數(shù)專業(yè)軟件開發(fā)者的艱苦努力所開發(fā)出的大量語言、軟件工具等基礎(chǔ)之上的,使一般用戶具有非常容易的計(jì)算機(jī)應(yīng)用環(huán)境。,本課程學(xué)習(xí)計(jì)算機(jī)的組成邏輯要具體到寄存器的層,次,編程序要面對寄存器編程,這就是匯編語言編程。,在如此深入的層面上理解計(jì)算機(jī)的工作原理,不單純是,為了知識,而是很多應(yīng)用必須建立在這個基礎(chǔ)上,只有,掌握了匯編語言編程技術(shù)才能充分利用計(jì)算機(jī)的潛力。組成一個計(jì)算機(jī)或微型計(jì)算機(jī)系統(tǒng),必須包括,(Hardware)和軟件(Software)。所謂硬件是指組成計(jì)機(jī)的,物理實(shí)體,是看得見摸得著的部分。對于微型計(jì)算機(jī)系,統(tǒng),硬件包括主機(jī)箱及其內(nèi)部的電子器件、機(jī)電元件組,成的電路和鍵盤、鼠標(biāo)、顯示器、打印機(jī)、磁盤驅(qū)動,器等。,大型計(jì)算機(jī)系統(tǒng)相當(dāng)復(fù)雜,組成的硬件常常組裝在若干個大型機(jī)柜中。軟件,簡單地說就是程序,但主要不是指用戶的一般程序。為了使計(jì)算機(jī)用戶感到應(yīng)用,計(jì)算機(jī)容易和方便,許多從事計(jì)算機(jī)開發(fā)的專業(yè)人員編出了多種程序。計(jì)算機(jī)執(zhí)行這些程序并借助這些程序的功能“接待”用戶,從而使用戶在新的更加方便和容易的條件下使用。軟件主要指這些程序。,1.1.1微機(jī)系統(tǒng)中的微處理器和主機(jī),板,主機(jī)板安裝在計(jì)算機(jī)機(jī)箱內(nèi)。主機(jī)板上面的集成電路組成了微機(jī)系統(tǒng)的核心,包括微處理器、主存儲器RAM、存有開機(jī)必須首先運(yùn)行的程序的只讀存儲器ROM、實(shí)現(xiàn)日歷計(jì)時和保存系統(tǒng)配置信息的RT/CMOS RAM以及形成總線上發(fā)出信號和接收總線上外加信號的總線控制邏輯。,1.微處理器和協(xié)處理器,組成計(jì)算機(jī)四大功能部件的運(yùn)算器和控制器都是由數(shù)字電路組成的,合起來稱為中央處理部件,縮寫為CPU(Central Processing Unit)。微型計(jì)算機(jī)系統(tǒng)中的微處理器(Micro Processor),就是全部功能集成于一片超大規(guī)模集成電路的CPU,微處理器完成運(yùn)算器和控制器功能。,當(dāng)前微型計(jì)算機(jī)市場上,大多數(shù)微型計(jì)算機(jī)的微處理器是Intel公司推出的8086微處理器家族成員,有8086、80186、80286、80386、80486、Pentium(80586)、Pentium及Pentium??梢园?8086 微處理器看作基礎(chǔ),以后所推出的 80286 等微處理器雖然都有改進(jìn),但都保持與 8086 兼容,即都具有 8086 的基本邏輯結(jié)構(gòu)。以 8086 微處理器組成的微機(jī)系統(tǒng)是IBM PC/XT及其兼容機(jī),雖然市場上已經(jīng)少見了,但從學(xué)習(xí)的角度出發(fā),它仍然可以作為基本例機(jī)學(xué)習(xí)。80286 及以后推出的微處理器組成的微機(jī)系統(tǒng),并不嚴(yán)格地通稱為高檔微機(jī)。,2.隨機(jī)存儲器RAM和只讀存儲器ROM,RAM和ROM是半導(dǎo)體存儲器中的兩大類型。RAM接受程序的控制,既可以向其中寫入數(shù)據(jù)存儲起來,又可以把其中存儲的數(shù)據(jù)讀出來。可見RAM可以存儲程序,也可以存儲程序運(yùn)行時需要的數(shù)據(jù)、中間結(jié)果和最后結(jié)果。ROM 中存儲的信息是事先寫入的。它接受程序的控制只能從其中讀出事先寫入的數(shù)據(jù)。主機(jī)板上的ROM在系統(tǒng)工作中起著重要作用,因?yàn)槠渲写鎯χ罅康某绦颉4致缘乜蓪⑦@些程序分為兩部分:一部分程序是系統(tǒng)一開機(jī)(加電)就執(zhí)行的程序并借此輸入磁盤里的操作系統(tǒng)程序。,然后執(zhí)行操作系統(tǒng)程序。可見,如果沒有ROM中的這部分程序,系統(tǒng)就難以開始工作。ROM中的另一部分程序是一組精心設(shè)計(jì)的管理和控制常規(guī)外部設(shè)備工作的子程序。操作系統(tǒng)和用戶編制應(yīng)用程序時都可調(diào)用這些子程序,以減輕編程的負(fù)擔(dān)。ROM中的程序,統(tǒng)稱為BIOS(Basic Input Output System)。,3.總線控制邏輯,微型計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的重要特點(diǎn)之一是采用總線(Bus)結(jié)構(gòu)??偩€結(jié)構(gòu)是主體部分與其它部分相連接的一種結(jié)構(gòu)方式。其基本思想是,主體部分與其它多個不同部分都通過同一組精心設(shè)置的連線相連接。在微型計(jì)算機(jī)系統(tǒng)中,有兩級(或兩層)總線,即微處理器級總線和系統(tǒng)級總線。,(3)適應(yīng)外部中斷方式;,(4)適應(yīng)存儲器直接與外部設(shè)備交換信息(即DMA方式)。產(chǎn)生和接受這些操作所需要的信號是總線控制邏輯的任務(wù)??偩€控制邏輯包括多種專用的集成電路,將在第 10 章討論。,4.RT/CMOS RAM,在 80286 及以后的高檔微機(jī)主機(jī)板上,都有一片稱為RT/CMOS RAM(簡稱CMOS)集成電路。它在電池支持下工作,就是說在機(jī)器關(guān)掉電源后它仍在工作。它包括計(jì)數(shù)邏輯和 64 個字節(jié)的可讀寫存儲器,完成兩個功能:一個功能是計(jì)數(shù)和提供實(shí)時的日歷時間,包括年、月、日、時、分、秒;另一個功能是存儲系統(tǒng)配置的信息,例如系統(tǒng)的存儲器、顯示器、磁盤驅(qū)動器等的參數(shù)。,為了保持與XT總線兼容,除保持原來插槽的位置和信號線之外,增加了一個短插槽,接有擴(kuò)展的信號線。80286 以后的微機(jī)系統(tǒng)大多數(shù)都采用PC/AT總線,并把它定為標(biāo)準(zhǔn)總線之一,稱為ISA(Industry Standard Architecture)總線。此外,還有EISA(Extended ISA)總線和MCA(Micro Channel Architecture)總線。,1.1.3輸入輸出接口板,許多外部設(shè)備,例如顯示器、打印機(jī)和磁盤驅(qū)動器等,雖然不同廠家都是遵照某種標(biāo)準(zhǔn)生產(chǎn)的,但是它們的輸入輸出仍不能直接與微機(jī)系統(tǒng)的系統(tǒng)總線相連接。在系統(tǒng)總線與外部設(shè)備之間仍然需要適配邏輯統(tǒng)稱為I/O接口板。實(shí)際上每種外部設(shè)備都有自己的接口板名字,例如顯示器適配器、并行打印接口、磁盤接口板等。,隨著集成電路技術(shù)的發(fā)展,不僅各種設(shè)備的接口邏輯集成為專用的集成電路,而且已有一種趨勢,將多種外部設(shè)備的接口邏輯集成于一片電路中,出現(xiàn)各種多功能接口板。第11 章將討論常用外部設(shè)備接口板的功能和編程方法。,我們知道乘法是連加運(yùn)算,除法的商可在連減的過程中產(chǎn)生,sin(x)等許多函數(shù)可以展開成只含加、減、乘、除基本運(yùn)算的級數(shù)??傊疅o論多么復(fù)雜的運(yùn)算都可以分解為一系列基本運(yùn)算。計(jì)算機(jī)執(zhí)行高級語言的任何一條語句,都是在執(zhí)行了一系列基本運(yùn)算后完成的。,計(jì)算機(jī)能直接完成的兩數(shù)加、減、邏輯乘、邏輯或以及數(shù)的取反、取負(fù)、傳輸?shù)鹊仍S多基本運(yùn)算或操作,每種基本運(yùn)算或操作稱為一條指令。在學(xué)習(xí)微機(jī)原理和匯編語言編程時,指令是最基本最重要的概念。如何理解指令和程序的概念?我們應(yīng)掌握以下要點(diǎn):,(1)一個微處理器所能執(zhí)行的全部指令,就是這個微處理器的指令系統(tǒng)(Instruction Set)。一個微處理器的指令系統(tǒng)是設(shè)計(jì)微處理器時決定的,成為微處理器固有的功能。指令及指令系統(tǒng)所能完成的功能的強(qiáng)弱,是這種微處理器功能強(qiáng)弱的具體體現(xiàn)。,(2)指令在微處理器內(nèi)是以代碼形式出現(xiàn)和施展控制的,任何一條指令都用與其它指令不同的代碼表示。假設(shè)微處理器內(nèi)有寄存器A和寄存器B,又假設(shè)“寄存器A中的數(shù)與寄存器B中的數(shù)相加,其和存入寄存器A”是一條指令,并假設(shè)其指令碼為 00000001,那么微處理器內(nèi)一旦出現(xiàn)了指令碼 00000001,就會按指令功能的規(guī)定執(zhí)行寄存器A與B內(nèi)容相加,和存于A的操作。不同的指令有不同的指令碼。指令碼對操作的控制方法也是不難理解的:,微處理器內(nèi)有專用的寄存器寄存指令碼,這個寄存器稱為指令寄存器,它的輸出控制是專門設(shè)計(jì)的組合網(wǎng)絡(luò),這個組合網(wǎng)絡(luò)能在指令碼控制下,把時鐘脈沖變換成完成該指令操作所需要的控制信號序列,加到ALU等執(zhí)行邏輯,完成指令包含的一系列微細(xì)操作。,(3)按運(yùn)算功能要求把指令排列起來,這就是程序。指令是構(gòu)成程序的基本單元。對于不同型號的微處理器或由不同型號微處理器組成的微型計(jì)算機(jī),可能編出具有相同運(yùn)算功能的程序,例如都有計(jì)算cos(x)的功能,但編程用的指令和指令序列可能是不同的。這是因?yàn)椴煌吞栁⑻幚砥饔胁煌闹噶钕到y(tǒng),而且編程序時不能寫入指令系統(tǒng)中不存在的主觀臆造的“指令”。,可見,這里所說的程序與高級語言編的程序有很大差別,高級語言編程用的語句絕大多數(shù)是不隨微機(jī)型號而改變的,而這里所說的編程序用的指令則完全依賴于微處理器的型號。高級語言易于學(xué)習(xí)掌握,因?yàn)槠湔Z句形式很接近自然語言,而這里所說的指令所指明的操作是計(jì)算機(jī)內(nèi)的基本操作,只有那些有計(jì)算機(jī)原理知識的人才能理解,所以也只能由這樣的人編寫程序。,直接用表示指令的二進(jìn)制代碼編程,稱為用機(jī)器碼語言編程。為了便于記憶和書寫,每條指令的二進(jìn)制代碼可用一組字母或符號表示,用字母或符號表示的指令編程稱為用匯編語言編程。用匯編語言編的程序最終必須變換成機(jī)器碼語言程序才能在計(jì)算機(jī)內(nèi)執(zhí)行。在計(jì)算機(jī)內(nèi),任何信息都必須以二進(jìn)制代碼形式存在。不難想像,高級語言程序中的一條語句的功能都是靠若干條指令的程序段完成的。,(4)機(jī)器碼指令排出的程序在準(zhǔn)備執(zhí)行時,必須存儲于存儲器中。程序存儲于存儲器中,而不是臨時由人工把一條條指令輸入計(jì)算機(jī),這一點(diǎn)成為計(jì)算機(jī)之所以有很強(qiáng)功能的關(guān)鍵之一。這是因?yàn)橐噪娮铀俣葟拇鎯ζ髦腥〕鲋噶钜热斯ぽ斎胫噶羁斓煤芏嗪芏?。大多?shù)計(jì)算器沒有存儲程序的功能,在計(jì)算一個長的算術(shù)式時,要人工一步一步打入“指令”,這就是計(jì)算器與計(jì)算機(jī)的重要區(qū)別之一。,2.計(jì)算機(jī)的基本操作過程,建立了指令和程序的概念之后,不難總結(jié)出計(jì)算機(jī)的基本工作方法。計(jì)算機(jī)的工作就是運(yùn)行程序,未運(yùn)行程序的計(jì)算機(jī)就是未工作、“未上班”的計(jì)算機(jī)。,首先,微處理器、微型計(jì)算機(jī)的“微”字來源于微電子學(xué)的“微”字。集成電路技術(shù)是微電子學(xué)的核心,微處理器為超大規(guī)模集成電路(VLSI),是微電子學(xué)發(fā)展的結(jié)果,微型計(jì)算機(jī)是以微處理器為核心的計(jì)算機(jī),其體積小。,其次,從計(jì)算機(jī)分類來說,計(jì)算機(jī)的出現(xiàn)比集成電路出現(xiàn)早得多。早在復(fù)雜的微處理器出現(xiàn)之前,根據(jù)功能的強(qiáng)弱和體積的大小,計(jì)算機(jī)有大型、中型和小型計(jì)算機(jī)之分。大約70 年代后期微型計(jì)算機(jī)出現(xiàn),體積比小型計(jì)算機(jī)小得多,但這不意味著微型機(jī)的功能也比小型機(jī)弱,今天的IBM PC微型計(jì)算機(jī)比 70 年代的中型計(jì)算機(jī)的功能還要強(qiáng)。,科學(xué)技術(shù)的發(fā)展并不受人為的定義的限制,微電子學(xué)集成電路技術(shù)不可能僅限制用于生產(chǎn)微處理器和微型計(jì)算機(jī)。新的大型、中型和小型計(jì)算機(jī)中采用了大規(guī)模和超大規(guī)模集成電路器件后,功能已經(jīng)遠(yuǎn)遠(yuǎn)超過了 70 年代的大型計(jì)算機(jī)。,1.2微型計(jì)算機(jī)的軟件和操作系統(tǒng),軟件是程序,而且主要是指那些由專業(yè)人員編制的、在計(jì)算機(jī)上運(yùn)行時增強(qiáng)了計(jì)算機(jī)功能的程序。從用戶使用的立場出發(fā),代表計(jì)算機(jī)特征的是它的功能。不但組成計(jì)算機(jī)的硬件可以影響計(jì)算機(jī)的功能,而且計(jì)算機(jī)所具有的軟件也可以影響計(jì)算機(jī)的功能。從對計(jì)算機(jī)功能影響的意義上來看,硬件和軟件的作用是相同的?,F(xiàn)今市場上銷售的計(jì)算機(jī)系統(tǒng),沒有一臺是不帶任何軟件的“計(jì)算機(jī)”。所以軟件是組成微機(jī)系統(tǒng)不可缺少的部分。,計(jì)算機(jī)軟件分為兩大類:系統(tǒng)軟件和應(yīng)用(或用戶)軟件。系統(tǒng)軟件是這樣的一些程序,計(jì)算機(jī)在運(yùn)行這些程序時,為其它程序的開發(fā)、調(diào)試、運(yùn)行等建立一個良好的環(huán)境:能方便地輸入程序,作好執(zhí)行前的準(zhǔn)備處理以及可靠運(yùn)行程序。,系統(tǒng)軟件一般是專業(yè)公司開發(fā)后由計(jì)算機(jī)廠商提供的。應(yīng)用軟件是系統(tǒng)的用戶為解決自己特定問題的需要而開發(fā)的程序或購買的程序。本書的重點(diǎn)之一就是講述如何使用匯編語言開發(fā)應(yīng)用軟件的技術(shù)。,微機(jī)系統(tǒng)接通電源后運(yùn)行的第一個系統(tǒng)軟件是固化在主機(jī)板上 ROM中的BIOS,然后運(yùn)行系統(tǒng)最基本最重要的系統(tǒng)軟件操作系統(tǒng)(Operating System)。屬于系統(tǒng)軟件的還有在操作系統(tǒng)支持下的各種工具和各種語言處理程序等。例如,各種文本編輯程序(Text Edit