微型計(jì)算機(jī)系統(tǒng)與接口習(xí)題詳解_第1頁(yè)
微型計(jì)算機(jī)系統(tǒng)與接口習(xí)題詳解_第2頁(yè)
微型計(jì)算機(jī)系統(tǒng)與接口習(xí)題詳解_第3頁(yè)
微型計(jì)算機(jī)系統(tǒng)與接口習(xí)題詳解_第4頁(yè)
微型計(jì)算機(jī)系統(tǒng)與接口習(xí)題詳解_第5頁(yè)
已閱讀5頁(yè),還剩103頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《微型計(jì)算機(jī)系統(tǒng)與接口》

習(xí)解

習(xí)題1

1.1電子計(jì)算機(jī)按其邏輯元件的不同可分為哪兒代?微型計(jì)算機(jī)是哪一代

電子計(jì)算機(jī)的分支?

答:電子計(jì)算機(jī)按其邏輯元件的不同可分為4代,即真空管,晶體管,集成

電路和超大規(guī)模集成電路。微型計(jì)算機(jī)是第四代電子計(jì)算機(jī)向微型化方向發(fā)展的

一個(gè)非常重要的分支。

1.2第五代人工智能計(jì)算機(jī)研究的重點(diǎn)是什么?

答:第五代計(jì)算機(jī)的研究重點(diǎn),只要是放在人工智能計(jì)算機(jī)的突破上,它的

主攻目標(biāo)是實(shí)現(xiàn)高程度上的模擬人腦的思維功能。

1.3計(jì)算機(jī)按其處理數(shù)據(jù)的方式可分為哪幾類?計(jì)算機(jī)按其外形大小又可

分為哪兒類?

答:計(jì)算機(jī)按其處理數(shù)據(jù)的方式可分為模擬式計(jì)算機(jī),數(shù)字式計(jì)算機(jī),混合

式計(jì)算機(jī)。計(jì)算機(jī)按其外形大小又可分為超級(jí),大型,小型和個(gè)人(微型)以及

便攜式(筆記本)5種。

1.4計(jì)算機(jī)有哪些主要的應(yīng)用領(lǐng)域?

答:計(jì)算機(jī)的主要應(yīng)用領(lǐng)域包括科學(xué)計(jì)算,計(jì)算機(jī)控制,測(cè)量和測(cè)試,信息

處理,計(jì)算機(jī)輔助設(shè)計(jì)/計(jì)算機(jī)輔助制造/計(jì)算機(jī)輔助教學(xué)(CAD/CAM/CAI)、人工

智能、計(jì)算機(jī)模擬。

1.51971年,世界上第一片微處理器是由哪個(gè)公司開(kāi)發(fā)的?當(dāng)時(shí)開(kāi)發(fā)的目

的是什么?至今,共開(kāi)發(fā)了幾代微處理器?

答:第一片微處理器是由inter公司開(kāi)發(fā)的。當(dāng)時(shí)開(kāi)發(fā)的目的是作為高級(jí)袖

珍計(jì)算器。從20實(shí)際70年代初至今,已推出7代微處理器產(chǎn)品。

1.6推動(dòng)微處理器迅速更新?lián)Q代的根本原因是什么?舉例說(shuō)明。

答:邏輯元件的技術(shù)創(chuàng)新。例如,集成電路上的晶體管集成度大約每隔兩年

就會(huì)翻一番,芯片的性能也隨之提高一倍,而價(jià)格降低一般,這就是著名的“摩

爾定律”,也是微型計(jì)算機(jī)技術(shù)的一個(gè)最顯著的特點(diǎn)。這一統(tǒng)計(jì)遞增規(guī)律已持續(xù)

了40年,至今仍無(wú)減緩之勢(shì)。正是在這一原動(dòng)力的帶動(dòng)下,使cpu處理器、大

容量的存儲(chǔ)器,--級(jí)靈巧多樣的多媒體外圍設(shè)備等獲得了驚人的發(fā)展。

1.7微處理器、微型計(jì)算機(jī)以及微型計(jì)算機(jī)系統(tǒng)的基本定義分別是什么?

答:

(1)微處理器是指由一片或者兒片大規(guī)模集成電路組成的具有運(yùn)算器和控制

器功能的中央處理器部件,又稱為微處理器。

(2)微型計(jì)算機(jī)就是以微處理器為核心,配以存儲(chǔ)器、輸入輸出電路及系統(tǒng)

總線所組成的計(jì)算機(jī)。

(3)微型計(jì)算機(jī)系統(tǒng)是以微型計(jì)算機(jī)為中心,配以相應(yīng)的外設(shè)、電源和輔助

電路以及智慧微型計(jì)算機(jī)工作的系統(tǒng)軟件構(gòu)成的系統(tǒng)。

1.8微型計(jì)算機(jī)可分為哪些主要的類型?

答:?jiǎn)纹瑱C(jī)、單板機(jī)、個(gè)人計(jì)算機(jī)、多用戶系統(tǒng)、微型計(jì)算機(jī)網(wǎng)絡(luò)。

1.9微型計(jì)算機(jī)硬件技術(shù)發(fā)展的最顯著的特點(diǎn)是什么?

答:微型計(jì)算機(jī)硬件技術(shù)發(fā)展的最顯著的特點(diǎn),即集成電路上的晶體管繼承

度大約每隔兩年就會(huì)翻一番,芯片的性能也隨之提高一倍,而價(jià)格降低一半。

1.10微型計(jì)算機(jī)硬件發(fā)展的主要趨勢(shì)有那些?

答:微型計(jì)算機(jī)硬件技術(shù)發(fā)展的主要趨勢(shì)如下。

(1)芯片技術(shù)將繼續(xù)發(fā)揮原動(dòng)力作用;

(2)寬帶網(wǎng)絡(luò)環(huán)境下的多媒體計(jì)算機(jī)技術(shù)與通信技術(shù)將加速發(fā)展;

(3)計(jì)算機(jī)硬件與軟件將更加緊密地融合在一起;

(4)筆記本計(jì)算機(jī)在個(gè)人計(jì)算機(jī)中的應(yīng)用比例將逐漸上升。

1.11微處理器、微型計(jì)算機(jī)和微型計(jì)算機(jī)系統(tǒng)之間有何聯(lián)系與區(qū)別?

答:微處理器是微型計(jì)算機(jī)的中央處理器,微型計(jì)算機(jī)是微型計(jì)算機(jī)系統(tǒng)硬

件部分的核心部件。

1.12微機(jī)硬件系統(tǒng)由哪兒部分組成?一個(gè)流行的實(shí)用微機(jī)硬件系統(tǒng)包括

那些主要部件?

答:微型計(jì)算機(jī)硬件系統(tǒng)一般都是由主機(jī)板(包括CPU、CPU外圍芯片組、主

存儲(chǔ)器RAM、BIOS芯片與總線插槽)、外設(shè)接卡口、外部設(shè)備(如硬盤(pán)、光驅(qū)、顯

示器、打印機(jī)、鍵盤(pán)、調(diào)制解調(diào)器與鼠標(biāo))以及電源等部件所組成。

流行的實(shí)用微機(jī)硬件系統(tǒng)包括主板、CPU、內(nèi)存、聲卡、顯示器、硬盤(pán)、光

驅(qū)、鍵盤(pán)、調(diào)制解調(diào)器、鼠標(biāo)、機(jī)箱以及電源等。

1.13微機(jī)軟件系統(tǒng)主要包括哪些組成部分?它和硬件系統(tǒng)之間的關(guān)系如

何?

答:系統(tǒng)軟件和用戶軟件。硬件系統(tǒng)和軟件系統(tǒng)是相輔相成的,共同構(gòu)成微

型計(jì)算機(jī)系統(tǒng),缺一不可?,F(xiàn)代的計(jì)算機(jī)硬件系統(tǒng)和軟件系統(tǒng)之間的分界線并不

明顯,其趨勢(shì)是兩者統(tǒng)一融合,在發(fā)展商相互促進(jìn)。人是通過(guò)軟件系統(tǒng)與硬件系

統(tǒng)發(fā)生關(guān)系的。通常,由人使用程序設(shè)計(jì)語(yǔ)言編制應(yīng)用程序,在系統(tǒng)軟件的干預(yù)

下使用硬件系統(tǒng)。

1.14微機(jī)中有哪兒股信息流?相應(yīng)地可將系統(tǒng)總線分為哪兒種?

答:微機(jī)中有3股信息流(地址信息流、數(shù)據(jù)信息流和控制信息流)在

流動(dòng)??煞譃榈刂房偩€、數(shù)據(jù)總線、控制總線。

1.15線結(jié)構(gòu)按其組織方式可分為哪兒種類型?它們個(gè)適用于什么應(yīng)

用范圍?

答:根據(jù)總線結(jié)構(gòu)組織方式的不同,目前采用的總線結(jié)構(gòu)可分為單總線、

雙總線和雙重總線3類。但總線結(jié)構(gòu)適用于大部分中低檔微機(jī),雙總線結(jié)構(gòu)

適用于高檔微機(jī),雙重總線結(jié)構(gòu)適用于各種高檔微機(jī)和工作站。

1.16一個(gè)簡(jiǎn)單的微處理器內(nèi)部結(jié)構(gòu)主要由哪3部分組成?

答:一個(gè)簡(jiǎn)單的微處理器主要由運(yùn)算器、控制器和內(nèi)部寄存器陣列3個(gè)

基本部分組成。

1.17位模型微處理器的內(nèi)部寄存器部分包括哪些基本的寄存器?它

們的主要功能是什么?

答:

(1)累加器A:具有雙重功能,運(yùn)算前,用來(lái)保存一個(gè)操作數(shù);運(yùn)算后,

用來(lái)保存結(jié)果;

(2)數(shù)據(jù)寄存器(DR):用來(lái)暫存數(shù)據(jù)或指令;

(3)程序計(jì)數(shù)器(PC):中存放著正待取出的指令的地址;

(4)地址寄存器(AR):用來(lái)存放正要取出的指令的地址或操作數(shù)的地

址;

(5)標(biāo)志寄存器F:用來(lái)積存執(zhí)行指令時(shí)所產(chǎn)生的結(jié)果或狀態(tài)的標(biāo)志信

號(hào)。

1.18說(shuō)明程序計(jì)數(shù)器(programcounter,PC)在程序執(zhí)行過(guò)程中的具

體作用與功能特點(diǎn)。

答:PC中存放著正待取出的指令的地址。根據(jù)PC中的指令地址,準(zhǔn)備

從存儲(chǔ)器中取出將要執(zhí)行的指令。通常,程序按順序逐條執(zhí)行。任何時(shí)刻,

PC都指示要去的下一個(gè)字節(jié)或下一條指令(對(duì)單字節(jié)指令而言)所在的地址。

因此,PC具有自動(dòng)加1的功能。

1.19說(shuō)明位、字節(jié)以及字長(zhǎng)的基本概念及三者之間的關(guān)系。

答:每個(gè)二進(jìn)制代碼0或1就叫做1位信息;8位二進(jìn)制代碼作為一個(gè)

字節(jié);2個(gè)字節(jié)組成一個(gè)字,1個(gè)字長(zhǎng)=2個(gè)字節(jié)=16個(gè)位。

1.20若有3種微處理器的地址引腳數(shù)分別為8條、16條、20條以及32

條,則這3種微處理器分別能尋址多少字節(jié)的存儲(chǔ)單元?

答:這3中微處理器分別能尋址2*B=258B,2lfiB=64KB,22OB=1MB,2-ZB=4GB

的存儲(chǔ)單元。

1.21說(shuō)明存儲(chǔ)器讀操作和寫(xiě)操作的步驟和特點(diǎn)有何區(qū)別。

答:

(1)進(jìn)行讀操作時(shí),假定CPU要讀出存儲(chǔ)器04H單元的內(nèi)容10010111,即

97H,則:

①CPU的地址寄存器(AR)先給出地址04H并將它放到地址總線上,經(jīng)地址譯

碼器譯碼選中04H單元。

②CPU發(fā)出讀控制信號(hào)給寄存器,指示他準(zhǔn)備把被尋址的04H單元中的內(nèi)容

97H放到數(shù)據(jù)總線上。

③在度控制信號(hào)作用下,存儲(chǔ)器將04H單元中的內(nèi)容97H放到數(shù)據(jù)總線上,

經(jīng)它送至數(shù)據(jù)寄存器(DR),然后由CPU取走該內(nèi)容作為所需要的信息使用。

(2)進(jìn)行寫(xiě)操作時(shí),假定CPU要把數(shù)據(jù)寄存器(DR)中的內(nèi)容00100110,

即26H寫(xiě)入寄存器08H單元,即:

①CPU的地址寄存器(AR)先把地址08H放到數(shù)據(jù)總線上,經(jīng)譯碼器選中08H

單元;

②CPU把數(shù)據(jù)寄存器中的內(nèi)容26H放到數(shù)據(jù)總線上;

③CPU向寄存器發(fā)送寫(xiě)控制信號(hào),在該信號(hào)的控制下,將內(nèi)容08H寫(xiě)入被尋

址的08H單元。

讀操作完成后,04H單元中的內(nèi)容97H仍保持不變這種特點(diǎn)稱為非破壞性讀

出。因此他允許多次獨(dú)處同一內(nèi)容。寫(xiě)入操作將破壞該單元中原來(lái)存放的內(nèi)容,

即由新內(nèi)容26H代替了原內(nèi)容,原內(nèi)容被清除。

1.22馮?諾依曼型計(jì)算機(jī)體系的基本思想是什么?按此思想設(shè)計(jì)的計(jì)算機(jī)

硬件系統(tǒng)由哪些部分組成?各起什么作用?

答:馮.諾依曼型計(jì)算機(jī)體系的基本思想是存儲(chǔ)程序概念,由運(yùn)算器、控制

器、存儲(chǔ)器、輸入設(shè)備和輸出設(shè)備5大基本部件組成計(jì)算機(jī)系統(tǒng)。運(yùn)算器用來(lái)進(jìn)

行算數(shù)或邏輯運(yùn)算以及位移循環(huán)等操作;控制器用來(lái)產(chǎn)生取指令和執(zhí)行指令所需

的操作控制信號(hào);存儲(chǔ)器是微機(jī)中的儲(chǔ)存和記憶部件,用來(lái)儲(chǔ)存數(shù)據(jù)(包括原始

數(shù)據(jù)、中間結(jié)果與最終結(jié)果)和程序;輸入設(shè)備是想計(jì)算機(jī)提供需要處理的各種

數(shù)據(jù)信息;輸出設(shè)備是將計(jì)算機(jī)中的信息以某種形式表現(xiàn)出來(lái)。

1.23執(zhí)行--條指令包含哪兩個(gè)階段?

答:執(zhí)行一條指令包含取指令與執(zhí)行指令兩個(gè)基本階段。

1.24假設(shè)傳送指令MOVA,84H的機(jī)器碼為BOH84H,結(jié)合8位模擬機(jī)簡(jiǎn)述

該條指令執(zhí)行的示意過(guò)程。

答:假設(shè)他存放在存儲(chǔ)器的最前面兩個(gè)單元里,則該程序?qū)⒄加袕?0H至

01H這兩個(gè)單元。

①把PC的內(nèi)容00H送到地址寄存器(AR)

②一旦PC的內(nèi)容可靠地送入AR后,PC自動(dòng)加1,即由00H變?yōu)镺lHo注意,

此時(shí)AR的內(nèi)容00H并沒(méi)有變化。

③把地址寄存器(AR)的內(nèi)容00H放到地址總線上,并送至存儲(chǔ)器,經(jīng)地址

譯碼器譯碼,選種相應(yīng)的00H單元。

④CPU發(fā)出讀命令。

⑤在讀命令控制下,把所選中的00H單元中的內(nèi)容,即第一條指令的操作碼

B0H讀到數(shù)據(jù)總線上。

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

⑦取指階段的最后一步是指令譯碼。

因?yàn)槿〕龅氖侵噶畹牟僮鞔a,故數(shù)據(jù)寄存器(DR)把它送到指令寄存器(IR),

然后再送到指令譯碼器(ID),經(jīng)過(guò)譯碼,CPU"識(shí)別”出這個(gè)操作碼B0H就是

M0VA,n指令,于是,它”通知“控制器發(fā)出執(zhí)行這條指令的各種控制命令。這

就完成了這一條指令的取指階段。然后轉(zhuǎn)入執(zhí)行指令的階段。經(jīng)過(guò)對(duì)操作碼B0H

譯碼后,CPU就”知道“這是一條把下一指令第2字節(jié)中的操作數(shù)84H取出來(lái)。

取指令第2字節(jié)的過(guò)程如下:

①把PC的內(nèi)容01H送到地址寄存器(AR)。

②當(dāng)PC的內(nèi)容可靠地送到AR后,PC自動(dòng)加1,變?yōu)?2H,但這時(shí)AR中的內(nèi)

容01H并未變化。

③地址寄存器(AR)通過(guò)地址總線把地址01H送到存儲(chǔ)器的地址譯碼器,經(jīng)

過(guò)譯碼選中相應(yīng)的01H單元。

④CPU發(fā)出讀命令。

⑤在讀命令控制下,將選中的01H單元的內(nèi)容84H讀到數(shù)據(jù)總線DB上。

⑥通過(guò)DB把讀出的內(nèi)容送到數(shù)據(jù)寄存器(DR)。

⑦因CPU根據(jù)該條指令具有的字節(jié)數(shù)已知這時(shí)讀出的是操作數(shù),且指令要求

把它送到累加器A,故由數(shù)據(jù)寄存器(DR)取出的內(nèi)容就通過(guò)內(nèi)部數(shù)據(jù)總線送到

累加器A。于是,第一次執(zhí)指階段完畢操作數(shù)84H被取入累加器A中。

1.25說(shuō)明指令MOVA,21H與指令MOVA,[21H]這兩條指令的尋址方式和

執(zhí)行過(guò)程與結(jié)果有何不同。

答:MOVA,21H為直接尋址方式,結(jié)果是累加器A中的數(shù)據(jù)為21H。

MOVA,[21H]為間接尋址,結(jié)果將DS段中偏移地址為21H的內(nèi)存單元的數(shù)

據(jù)給累加器A。

1.26什么是微機(jī)系統(tǒng)的最佳整體性能評(píng)估?它與最佳購(gòu)買性能評(píng)估有什么

不同?

答:目前對(duì)微機(jī)系統(tǒng)的整體性能測(cè)試,是按性能、可用性、特征、技術(shù)創(chuàng)新、

實(shí)施效果和價(jià)格等5個(gè)方面來(lái)度量的,其中性能一項(xiàng)的權(quán)重最高,達(dá)67%可用

性為17%;特征為8%,技術(shù)創(chuàng)新與價(jià)格各占4虬它與最佳購(gòu)買性能評(píng)估相比,

其評(píng)估的項(xiàng)目基本相同,但各項(xiàng)的權(quán)重不同,最佳購(gòu)買性能評(píng)估價(jià)格占有重要地

位,上升為50%,性能占30%,可用性和特征各占10%。

1.27流行主板的結(jié)構(gòu)有哪些基本類型?主板按照CPU在它上面安裝結(jié)構(gòu)形

式的不同又可分為哪兩大類?加以簡(jiǎn)單比較和說(shuō)明。

答:現(xiàn)在主板的結(jié)構(gòu)主要有AT主板與ATX主板兩種基本類型,最新結(jié)構(gòu)的

主板為NLX;主板按照CPU在他上面安裝結(jié)構(gòu)形式的不同可分為Socket和Slot

兩大類。

Socket結(jié)構(gòu)類的主板可支持的CPU包括Intel的Pentium、新版Celeron(賽

場(chǎng))、AMD的K5/K6系列、Cyrix的6x86系列等。Slot結(jié)構(gòu)最先由Intel公司為

配合PentiumII微處理器而推出的CPU接插結(jié)構(gòu),它又分為Slot1和Slot2oIntel

目前主流的PentiumII和部分Celeron微處理器均采用Slotl結(jié)構(gòu)。Slot2主要

用于PentiumH與PentiumlllXeon至強(qiáng)CPU。Socket結(jié)構(gòu)的成本比Slot的成本

要低。

1.28主板的主性能指標(biāo)有哪些?

答:主板的主要性能指標(biāo)有以下兒項(xiàng):

(1)微處理器支持的能力,包括CPU插槽類型,CPU種類、外頻范圍、電

壓范圍;

(2)系統(tǒng)芯片組的類型;

(3)是否集成顯卡、聲卡、調(diào)節(jié)解壓器(modem)、網(wǎng)卡;

(4)支持內(nèi)存和高速緩存(cache)的類型與容量;

(5)系統(tǒng)BIOS的版本、功能,是否支持即插即用;

(6)擴(kuò)充插槽及I/O接口的數(shù)量、類型;

(7)主板的電壓輸出范圍。

1.29簡(jiǎn)要說(shuō)明8位、16位、32位及Pentium系列32位微處理器的指令系

統(tǒng),在性能上最主要的提升之處。

答:是指令的增加和完善,使之能完成從簡(jiǎn)單到復(fù)雜,單任務(wù)到多任務(wù)及多

媒體信息處理的功能。

1.30評(píng)價(jià)微型計(jì)算機(jī)的運(yùn)算速度有哪3種方法?

答:評(píng)價(jià)微型計(jì)算機(jī)的運(yùn)算速度的方法如下。

(1)根據(jù)不同類型指令在計(jì)算過(guò)程中出現(xiàn)的頻繁程度,呈上不同的系數(shù),

求得系統(tǒng)平均值,這是指的是平均速度;

(2)以執(zhí)行時(shí)間最短的指令的標(biāo)準(zhǔn)來(lái)計(jì)算速度;

(3)直接給出每條指令的實(shí)際執(zhí)行時(shí)間和機(jī)器的主頻。

1.31硬盤(pán)的主要性能指標(biāo)有哪些?提高硬盤(pán)容量的關(guān)鍵技術(shù)如何?

答:硬盤(pán)的主要性能指標(biāo)包括容量、速度和安全性。提高硬盤(pán)容量的關(guān)鍵技

術(shù)在于提高磁頭的靈敏度。

1.32一個(gè)基本的微機(jī)系統(tǒng)通常要配置哪兒類常用外設(shè)?常用的微機(jī)系統(tǒng)總

線有哪幾種?總線的性能指標(biāo)有哪些?

答:一個(gè)基本的微機(jī)應(yīng)用系統(tǒng)通常需要配置3種常用外設(shè):一類是常規(guī)的

人機(jī)交互設(shè)備,有鍵盤(pán)、鼠標(biāo)、顯示器、打印機(jī)等;另一類是常用通信設(shè)備,如

網(wǎng)卡和調(diào)制解調(diào)器;第3類是掃描儀。常用的微機(jī)系統(tǒng)有ISA、EISA、PCI和AGPo

總線的主要性能指標(biāo)包括總線的寬度、總線的位置、總線的工作頻率。

1.33完成下列各進(jìn)制數(shù)之間的轉(zhuǎn)換:

(1)將十進(jìn)制數(shù)548.375D轉(zhuǎn)化成二進(jìn)制、八進(jìn)制、十六進(jìn)制和BCD數(shù);

(2)將十六進(jìn)制數(shù)D.58H轉(zhuǎn)換成為上述其他進(jìn)制。

答:

(1)

(548.375)D=(1000100100.011)B=(1044.3)Q=(224.6)H

=(010101001000.001101110101)BCD

(2)

(D.58)H=(1101.01011)B=(15.26)Q=(13.34475)D=(13.34375H)BCD

1.34計(jì)算(10101.01)B+(10101.01)BCD+(15.4)H=()D

答:21.25+15.4+21.25=57.9

1.35有3位和2位十六進(jìn)制數(shù)X和Y,X=34AH,Y=8CHo問(wèn):(1)若X,Y

是純數(shù)(無(wú)符號(hào)數(shù)),則X+Y=()H;X-Y=()H。(2)若X,Y是有符號(hào)數(shù),

則X+Y=()H;X-Y=()Ho

答:

(1)若X,Y是無(wú)符號(hào)數(shù),都用3位十六進(jìn)制數(shù)表示,X=34AH,Y=08CH,

X+Y=34AH+08CH=3D6H

X-Y=34AH-08CH=2BEH

(2)若X,Y是有符號(hào)數(shù),都用3位十六進(jìn)制數(shù)表示,

[X]補(bǔ)=34AH,[Y]^b=F8CH,[-Y]補(bǔ)=074H,

[X+Y]補(bǔ)=[X]補(bǔ)+[Y]補(bǔ)=34AH+F8CH=2D6H

氏-丫]補(bǔ)=矍]補(bǔ)+[-Y]#=34AH+074H=3BEH

即X+Y=[[X+Y]補(bǔ)]補(bǔ)=26DH;

X-Y=[[X-Y]補(bǔ)]補(bǔ)=3BEH。

1.36若X=-107,Y=+74,按8位二進(jìn)制可寫(xiě)出:[X]補(bǔ)=(),[Y]補(bǔ)=(),

以+丫]補(bǔ)=(),2-丫]補(bǔ)=()

答:

[X]#=10010101,[Y]#=01001010,[-Y]#=10110110

按補(bǔ)碼運(yùn)算規(guī)則:

[X+Y]#=[X]#+[Y]#=01001010+10110110=11011111

--丫]補(bǔ)=[幻補(bǔ)+[-丫]補(bǔ)

=10010101+10110110=101001011=4BH,結(jié)果溢出。

1.37選字長(zhǎng)n為8位,用補(bǔ)碼計(jì)算下列各式,回答是否i溢出?若有溢出,

是正溢出還是負(fù)溢出?

(1)01111001+01110000

(2)-01111001-01110001

(3)01111100-0111111

(4)-01010001+01110001

答:

(1)正溢出

(2)負(fù)溢出

(3)無(wú)溢出

(4)無(wú)溢出

習(xí)題2

2.18086CPU有多少根數(shù)據(jù)線和地址線?它能尋址多少內(nèi)存地址單元和I/O

端口?8088CPU又有多少根數(shù)據(jù)線和地址線?為什么要設(shè)計(jì)8088CPU?

答:8086CPU有16根數(shù)據(jù)線,20根地址線;能尋址1MB內(nèi)存和64KBI/O

端口。8088CPU有8根數(shù)據(jù)線,20根地址線。設(shè)計(jì)8088CPU主要是為了與Intel

原有的8位外圍接口芯片直接兼容。

2.28086CPU內(nèi)部按功能可分為哪兩部分?它們各自的主要功能是什么?

答:8086CPU內(nèi)部分為執(zhí)行單元(EU)與總線接口單元(BIU)兩部分;EU

負(fù)責(zé)執(zhí)行指令;BIU負(fù)責(zé)對(duì)存儲(chǔ)器或I/O外設(shè)進(jìn)行存取操作。

2.38086CPU內(nèi)部的總線接口單元(BIU)由那些功能部件組成?他們的基

本操作原理是什么?

答:8086CPU的BIU由指令隊(duì)列緩沖器地址加法器和段寄存器與16位指令

指針(IP)組成。指令隊(duì)列緩沖器是暫存計(jì)算機(jī)即將要執(zhí)行的指令的機(jī)器碼。地

址加法器用于執(zhí)行“段加偏值”的尋址機(jī)制,既完成段基址加偏移地址的操作。

段寄存器(CS,DS,SS,ES)存放16位段地址(簡(jiǎn)稱段值),用于地址加法器中

左移生成20位的段起始地址(簡(jiǎn)稱段基址)。IP具有自動(dòng)加一的功能,在執(zhí)行

程序執(zhí)行時(shí)指向下一條指令(字節(jié))的偏移地址。

2.4什么叫微處理器的并行操作方式?如何理解8086CPU具有并行操作的

功能?在什么情況下8086的執(zhí)行單元(EU)才需要等待總線接口單元(BIU)提

取指令?

答:微處理器的并行操作方式是指上一條指令執(zhí)址操作可以與下一條指令的

取址操作并行重疊操作?8086CPU由于將EU與BIU按功能分離成兩個(gè)相加獨(dú)立

的單元,故EU在執(zhí)行上一條指令的執(zhí)址操作時(shí),可以由BIU同時(shí)進(jìn)行下一條指

令的取址操作此即并行操作原理。當(dāng)8086CPU需要對(duì)存儲(chǔ)器或I/O設(shè)備存取操作

數(shù)時(shí),EU才需要等待BIU提取指令。

2.5邏輯地址和物理地址有何區(qū)別?段加偏移的基本含義又是什么?舉例

說(shuō)明。

答:邏輯地址是程序中的地址由段地址和偏移地址組成。物理地址是由地址

加法器送到地址總線上的20位地址?!岸渭悠啤钡幕竞x是指段基址加偏

移地址。例如:設(shè)CS=2000H,IP=3000H,則由“段加偏移”形成的物理地址

PA=CS*10H+IP=23000Ho又如:DS=4000H,EA=6180H,則PA=46180H。

2.68086CPUDE基址寄存器(BX)和基址指針(BP)(或基址指針寄存器)

有何區(qū)別?

答:BX通常用于存放尋址數(shù)據(jù)段中某內(nèi)存單元距段基地址的偏異地址;BP

則用于存放尋址堆棧段中某內(nèi)存單元距棧頂?shù)钠频刂贰?/p>

2.7基址指針(BP)和堆棧指針(SP)在使用中有何區(qū)別?

答:BP與SP都用于存放尋址堆棧的偏移地址,但SP存放的是距棧頂?shù)钠?/p>

移地址,而SP存放的是距堆棧首地址的偏移地址。兩者是既有聯(lián)系又有區(qū)別的

地址值。

2.8段地址和段起始地址相同嗎??jī)烧呤鞘裁搓P(guān)系?

答:段地址是指存放在段寄存器中的16位地址值,而段起始地址是指將16

位段地址在地址加法器中左移4位后形成的20位地址值

2.98086的段起始地址就是段基地址嗎?它是怎樣獲得的?

答:8086的段起始地址也稱段基地址,它是在地址加法器中將16位段地址

左移4位形成的20位地址值。

2.10微處理器在實(shí)模式下操作時(shí),段寄存器的用途是什么?

答:用于獲得段起始地址。

2.11在實(shí)模式下,若段寄存器中裝入如下數(shù)值,寫(xiě)出每個(gè)段的起始地址和

結(jié)束地址。

(1)1000H

(2)1234H

(3)EOOOH

(4)ABOOH

答:

(1)10000H-1FFFFH

(2)12340H-2233FH

(3)EOOOOH-EFFFFH

(4)ABOOOH-BAFFFH

2.12微處理器在實(shí)模式下操作,對(duì)于下列CS:IP組合,計(jì)算要執(zhí)行的下

一條指令的存儲(chǔ)器地址。

(1)CS=1000H和IP=2000H

(2)CS=2400H和IP=1AOOH

(3)CS=1AOOH和IP=BOOOH

(4)CS=3456H和IP=ABCDH

答:

(1)PA=12000H

(2)PA=25A00H

(3)PA=25000H

(4)PA=3F12DH

2.138086在使用什么指令時(shí),用那個(gè)寄存器來(lái)保存計(jì)算值?

答:使用LOOP指令時(shí),用CX保存計(jì)算值。

2.14IP寄存器的用途是什么?它提供的是什么信息?

答:IP用于尋址代碼段存儲(chǔ)區(qū)內(nèi)的下一條指令(字節(jié)),它提供的是自動(dòng)加

1后的下--條指令(字節(jié))的偏移地址。

2.158086的進(jìn)位標(biāo)志位由哪些運(yùn)算指令來(lái)置位?

答:8086的CF由加減法運(yùn)算指令來(lái)置位。

2.16如果帶符號(hào)數(shù)FFH與01H相加,會(huì)產(chǎn)生溢出嗎?

答:不會(huì)產(chǎn)生溢出。

2.17某個(gè)數(shù)包含5個(gè)1,它具有什么奇偶性?

答:PF位為0.

2.18某個(gè)數(shù)位全0,它的零標(biāo)志位為0嗎?

答:ZF=1.

2.19用什么指令設(shè)置哪個(gè)標(biāo)志位,就可以控制微處理器的INTR弓|腳?

答:用STI或CLI指令設(shè)置IF標(biāo)志位即可。

2.20微處理器在什么情況下才執(zhí)行總線周期?一個(gè)基本的總線周期有幾

個(gè)狀態(tài)組成?在什么情況下需要插入等待狀態(tài)?

答:當(dāng)微處理器對(duì)存儲(chǔ)器進(jìn)行存取操作時(shí),需要其BIU執(zhí)行一個(gè)總線周期。

一個(gè)總線周期由4個(gè)狀態(tài)(T1-T4)組成。在T3時(shí),若檢測(cè)到READY=0,則在T3

之后將插入一個(gè)至幾個(gè)Tw狀態(tài)。

2.21什么叫做非規(guī)則字,微處理器對(duì)非規(guī)則字是怎樣操作的?

答:非規(guī)則字是以奇數(shù)單元為起始地址開(kāi)始存放(低字節(jié)在前)的字。微處

理器對(duì)非規(guī)則字的存取操作需要兩個(gè)總線周期才能完成。

2.228086對(duì)1MB的存儲(chǔ)空間是如何按高位庫(kù)和低位庫(kù)進(jìn)行選擇和訪問(wèn)

的?用什么控制信號(hào)來(lái)實(shí)現(xiàn)對(duì)兩個(gè)庫(kù)的選擇?

答:8086的1MB存儲(chǔ)空間實(shí)際上分為兩個(gè)512KB的存儲(chǔ)體,即高位庫(kù)和低

位庫(kù)。低位庫(kù)與數(shù)據(jù)總線D:?D。相連,該庫(kù)中每個(gè)地址均為偶數(shù)地址;高位庫(kù)與

數(shù)據(jù)總線g?九相連,該庫(kù)中每個(gè)地址均為奇數(shù)地址。地址總線品?AJ可同時(shí)

對(duì)高、低位庫(kù)的存儲(chǔ)單元尋址,A。或痂則用于庫(kù)的選擇,分別接到庫(kù)選擇端無(wú)

±o當(dāng)A°=0時(shí),選擇偶數(shù)地址的低位庫(kù);當(dāng)頡=0時(shí),選擇奇數(shù)地址的高位

庫(kù)。利用A。和雁這兩個(gè)控制信號(hào)可以實(shí)現(xiàn)對(duì)兩個(gè)庫(kù)進(jìn)行讀寫(xiě)(即16位數(shù)據(jù)),

也可以單獨(dú)對(duì)其中的一個(gè)庫(kù)進(jìn)行讀寫(xiě)。8086是用A?;蛲蠓謩e對(duì)低位(偶數(shù))

庫(kù)和高位(奇數(shù))庫(kù)進(jìn)行選擇和訪問(wèn)的。

2.23堆棧的深度由哪個(gè)寄存器確定?為什么說(shuō)一個(gè)堆棧的深度最大為

64KB?在執(zhí)行一條入棧或出棧指令時(shí),棧頂?shù)刂穼⑷绾巫兓?/p>

答:堆棧的深度由SP決定,由于16位的SP=FFFFH可最大尋址64KB,故深

度最大為64KB。當(dāng)字?jǐn)?shù)據(jù)出棧時(shí),高8位放入由SP-2尋址單元,然后SP-2;當(dāng)

字?jǐn)?shù)據(jù)出棧時(shí),低8位從SP尋址的單元彈出,高8位從SP+1尋址的單元彈出,

然后SP+2o

2.24什么叫做微處理器的程序設(shè)計(jì)模型?為什么要提出程序設(shè)計(jì)模型這

-概念?

答:程序設(shè)計(jì)模型即程序員編程時(shí)所需要的計(jì)算機(jī)模型,它主要指CPU內(nèi)的

寄存器組體系結(jié)構(gòu)。提出程序設(shè)計(jì)模型概念是使復(fù)雜的問(wèn)題簡(jiǎn)單化,便于程序設(shè)

計(jì)。

2.2580386-Pentium4微處理器相對(duì)于8086和80286擴(kuò)展了哪些可見(jiàn)寄

存器?

答:擴(kuò)展了8個(gè)16位通用寄存器及IP與FLAGS為32位;還增加了兩個(gè)16

位的段寄存器FS和GS。

2.26擴(kuò)展的IP寄存器被尋址時(shí)寫(xiě)成什么?它的用途是什么?

答:擴(kuò)展的IP寫(xiě)成EIP。它用于尋址代碼段內(nèi)當(dāng)前指令的下一條指令。

2.27在80286微處理器的16位標(biāo)志寄存器FLAG中,相對(duì)于8086的9個(gè)標(biāo)

志位增加了哪兩個(gè)標(biāo)志位?它們的含義是什么?反映了80286的什么新增功

能?

答:80286比8086新增了IOPL與NT標(biāo)志位。IOPL為I/O特權(quán)級(jí)(0~3

級(jí)),用于指定當(dāng)前任務(wù)中I/O操作處于哪級(jí)的特權(quán)級(jí)。NT為任務(wù)嵌套標(biāo)志,在

保護(hù)模式下,當(dāng)NT=1時(shí),表明當(dāng)前任務(wù)正嵌套于另一個(gè)任務(wù)中,執(zhí)行完該任務(wù)

后,可用IRET返回到原任務(wù),它們反映了新增的保護(hù)功能及多任務(wù)功能。

2.28在80386微處理器的32位標(biāo)志寄存器EFLAG中,相對(duì)于80286增加了

哪兩位標(biāo)志位?它們的含義是什么?反映了80386的什么新增功能?

答:80386比80286新增了RF與VM標(biāo)志位。BF為恢復(fù)標(biāo)志,它與調(diào)試寄存

器一起使用,用于控制下一條指令后恢復(fù)程序的執(zhí)行。VM為虛擬方式標(biāo)志,用

于在保護(hù)模式系統(tǒng)中選擇虛擬操作方式。

2.29在80486微處理器的32位標(biāo)志寄存器EFLAG中,相對(duì)于80386增加了

哪位標(biāo)志位?它的含義是什么?反映了80486的什么新增功能?

答:80486比80386新增了AC標(biāo)志位。AC位地址對(duì)齊檢查標(biāo)志,當(dāng)尋址…

個(gè)字或雙字時(shí),地址不在字或雙字的邊界上對(duì)齊,則AC位被激活。

2.30Pentium系列微處理器比80486新增了那些標(biāo)志位?它們各是什么含

義?

答:VIF為虛擬中斷標(biāo)志,它復(fù)制中斷允許標(biāo)志位。VIP為虛擬中短暫掛標(biāo)

志,它提供有關(guān)虛擬方式中斷信息,用于多任務(wù)環(huán)境下,為操作系統(tǒng)提供虛擬中

斷標(biāo)志和中斷暫掛信息。ID為CPU標(biāo)識(shí)標(biāo)志,它是通過(guò)CPUID指令系統(tǒng)提供有

關(guān)Pentium系列未處理的信息(版本號(hào)和制造商)。

2.31在實(shí)模式下尋址時(shí),所有存儲(chǔ)器地址都可以看成是哪兩個(gè)地址的組合

尋址?所允許訪問(wèn)的存儲(chǔ)器最大地址為多少?

答:實(shí)模式下尋址寄存器的機(jī)制就是“段加偏移”,這里,段即段寄存器指

定的段基地址,偏移是指有指令直接給定或由寄存器與位移量計(jì)算的偏移地址。

所允許訪問(wèn)的存儲(chǔ)器最大地址為IMBo

2.3280486與80386相比,主要的改進(jìn)是什么?

答:片內(nèi)含cache,且指令執(zhí)行單元也采用了流水線結(jié)構(gòu)。

2.33在80486CPU中,堆棧操作指令是多少位的數(shù)據(jù)傳送指令?

答:16位或32為。

2.34在80386以上微處理器中,堆棧存儲(chǔ)器由哪個(gè)段寄存器加哪個(gè)偏移地

址的組合來(lái)尋址?

答:SS和ESP的組合。

2.35當(dāng)Pentium4在實(shí)模式下操作時(shí),給出下列寄存器組合所尋址的儲(chǔ)存單

元的值:

(1)DS=2000H和EAX=00003000H

(2)DS=lA00H和ECX=00002000H

(3)DS=C000H和ESI=0000A000H

(4)SS=8000H和ESP=00009000H

答:

(1)23000H

(2)1C000H

(3)CA000H

(4)89000H

2.36什么叫做程序和數(shù)據(jù)塊的重定位?為什么8086以上微處理器具有重定

位的特性?

答:重定位是指一個(gè)完整的程序塊或數(shù)據(jù)可以在存儲(chǔ)器所允許的內(nèi)存空間內(nèi)

任意浮動(dòng)并定位到一個(gè)新的可尋址區(qū)域.8086以上Intel系列微處理器由于采用

了分段技術(shù)和“段加偏移”的尋址機(jī)制,故能通過(guò)改寫(xiě)段寄存器內(nèi)容實(shí)現(xiàn)重定位。

2.3780486支持哪兒種地址方式?

答:實(shí)地址方式、保護(hù)虛擬地址方式和虛擬8086。

2.3880386/80486工作于保護(hù)虛擬地址方式時(shí),段的最大長(zhǎng)度可達(dá)多少?

答:4GBo

2.3980386DXCPU在保護(hù)模式工作時(shí),當(dāng)虛擬地址到物理地址的轉(zhuǎn)換采用

只分段時(shí),段的大小為多少?當(dāng)分段又分頁(yè)時(shí),每頁(yè)又為多少字節(jié)?

答:段的大小為IB^IMB;每頁(yè)為4KBo

2.4080386/80486的CR寄存器中,PE位分別為0,1時(shí),80486將各處于

什么地址模式?

答:PE為0時(shí),80486處于實(shí)地址模式,PE為1時(shí),80486處于保護(hù)虛擬地

址模式。

2.4180386DX工作在保護(hù)方式時(shí),虛擬地址(邏輯地址)由哪兩部分組成?

這是所確定的虛擬地址空間為多少自己?將其轉(zhuǎn)換為物理地址時(shí),如果只分段不

分頁(yè),代碼/數(shù)據(jù)段的基地址、界限和屬性等由什么提供?

答:由段選擇符和偏移地址地址兩部分組成;虛擬地址空間為64TB;代碼/

數(shù)據(jù)段的基地址、界限和屬性等由段描述符提供。

2.4280386/80486工作在保護(hù)虛擬地址方式時(shí),它所具有的虛擬地址空間

是由哪個(gè)因素決定的?

答:頁(yè)式存儲(chǔ)器單元是否啟動(dòng)。

2.43為實(shí)現(xiàn)在保護(hù)模式地址方式下工作,80386/80486設(shè)置了哪3個(gè)描述

符?

答:全局描述符(GDT)、局部描述符(LDT)和中斷描述符表(IDT)O

2.44比較80386/80486的保護(hù)虛擬地址方式行虛擬8086方式有什么聯(lián)系和

區(qū)別?

答:兩者都是虛擬存儲(chǔ)器管理和保護(hù)機(jī)制下支持多任務(wù)的工作方式。兩者的

主要區(qū)別在于:訪問(wèn)的物理地址空間不同;對(duì)邏輯地址的解釋方法不同。

2.45在80386?Pentium4處理器中,用哪個(gè)寄存器控制分頁(yè)機(jī)制?

答:用CR0與CR3寄存器控制分頁(yè)。

2.4680386-Pentium系列微處理器的一個(gè)寄存器頁(yè)內(nèi)包含多少個(gè)字節(jié)?頁(yè)

目錄中存放多少個(gè)32位地址?

答:4KB;1024。

2.47如果微處理器將線性地址00200000H送到分頁(yè)機(jī)制,則哪個(gè)頁(yè)目錄項(xiàng)

被訪問(wèn)?哪個(gè)頁(yè)表項(xiàng)被訪問(wèn)?

答:頁(yè)目錄000H;頁(yè)表項(xiàng)200H。

2.48Pentium4目前最高的主頻是多少?它采用了那些相關(guān)技術(shù)?

答:3.66HZ以上。它采用了快速執(zhí)行引擎與雙倍算術(shù)邏輯單元構(gòu)架,4倍爆

發(fā)式總線,SSE2指令集以及指令跟蹤緩存等新技術(shù)。

2.49Itanium(安騰)是多少位CPU?它采用了哪些主要的關(guān)鍵技術(shù)?適合

于什么應(yīng)用領(lǐng)域?

答:Itanium(安騰)為64位CPU,采用了EPIC(完全并行指令計(jì)算)指令組

和內(nèi)部結(jié)構(gòu),以及0.09um制造工藝,12MB三級(jí)緩存等最新技術(shù),適用于服務(wù)器

應(yīng)用領(lǐng)域。

習(xí)題3

3.1指出下列指令中源操作數(shù)的尋址方式,并說(shuō)明指令操作的結(jié)果。

(1)MOVBX,'BC'

(2)MOVAX,DATA

(3)MOVDX,[BX]

(4)MOVAL,[BX+DI]

(5)MOVCL,LISTtBX]

(6)MOVAX,FILE[BX+DI+200H]

(7)DAA

(8)XLAT

(9)INAX,DX

(10)INT21H

答:

(1)立即尋址。操作結(jié)果是把ASCH碼CB(4342H)傳送到BX.

(2)使用AX的直接尋址。操作結(jié)果是把數(shù)據(jù)段存儲(chǔ)單元DATA1與DATA1+1

的字內(nèi)容復(fù)制到AX中。

(3)寄存器間接尋址。把數(shù)據(jù)段由BX間接尋址的存儲(chǔ)單元的字內(nèi)容復(fù)制

至IJDX中。

(4)基址加變址尋址的尋址方式。操作結(jié)果是把由BX+DI尋址的數(shù)據(jù)段

存儲(chǔ)單元的字的內(nèi)容復(fù)制到AL。

(5)寄存器相對(duì)尋址。操作結(jié)果是把數(shù)據(jù)段由LIST+BX尋址的字節(jié)內(nèi)容

送CL。

(6)相對(duì)基址加變址的尋址方式。操作結(jié)果是把由BX+DI+200H尋址的數(shù)

據(jù)段存儲(chǔ)單元的字內(nèi)容送入AXo

(7)源操作數(shù)為寄存器(AL)尋址。它是把AL中的兩位BCD碼加法運(yùn)算

的結(jié)果調(diào)整為兩位壓縮型十進(jìn)制數(shù),仍保留在AL中。

(8)源操作數(shù)為寄存器(BX)相對(duì)尋址。操作結(jié)果是把由BX+AL指定的

內(nèi)容表格中的字節(jié)代碼內(nèi)容送AL。

(9)源操作數(shù)為寄存器(DX)間接尋址。它是把DX和DX+1所指定的兩

個(gè)端口地址的字的內(nèi)容送入AXo

(10)源操作數(shù)為直接尋址,直接尋址地址為21Hx4,21HX4+2o操作結(jié)

果是把21Hx4?21Hx4+3內(nèi)存單元中的雙字分別送到IP與CS。

3.2寫(xiě)出把首地址為DATA的字?jǐn)?shù)組和第4個(gè)字送到AX寄存器的指令。要求

使用寄存器相對(duì)尋址與基址加變址尋址兩種尋址方式。

答:使用寄存器相對(duì)尋址方式如下。

LEABX,DATA

MOVAX,[BX+4*2]

或者:

MOVBX,4*2

MOVAX,DATA[BX]

使用基址加變址尋址方式如下:

LEABX,DATA

MOVSI,4*2

MOVAX,[BX][SI]

3.3判斷下列指令中哪些是錯(cuò)誤的,并說(shuō)明錯(cuò)的原因。

(1)MOVBL,AX

(2)MOVAL,BX

(3)MOVAL,BL

(4)MOVBP,BYTEPTR[BX]

答:(1)(2)和(4)均是錯(cuò)誤的,因操作數(shù)類型不匹配。

3.4說(shuō)明下列指令中不合法的原因。

(1)MOV64H,CL

(2)MOVCL,100H

(3)MOVCL,256

(4)MOVSS,6180H

(5)MOVCS,WORDPTR[BX]

(6)MOVDS,SS

(7)XCHGAL,40H

(8)XCHGES,AX

(9)IN160H,AL

(10)CMP[SI],[BX]

(11)MOVDS,1000H

(12)POPCS

答:

(1)錯(cuò)在立即數(shù)64H作目標(biāo)操作數(shù)。

(2)和(3)錯(cuò)在目標(biāo)操作數(shù)均超過(guò)了字節(jié)范圍。

(4)錯(cuò)在立即數(shù)直接傳送給段寄存器。

(5)錯(cuò)在把存儲(chǔ)器操作數(shù)作數(shù)送CS,這可能引起系統(tǒng)運(yùn)行紊亂。

(6)錯(cuò)在兩個(gè)段寄存器之間直接傳送。

(7)錯(cuò)在用立即數(shù)作交換指令的操作數(shù)。

(8)錯(cuò)在用段寄存器作交換指令的操作數(shù)。

(9)錯(cuò)在當(dāng)端口地址超過(guò)FFH時(shí)還在用直接尋址端口號(hào)。

(10)錯(cuò)在用兩個(gè)存儲(chǔ)器操作數(shù)做比較。

(11)錯(cuò)在將立即數(shù)直接傳送到CS,必須先傳送到某個(gè)寄存器,再經(jīng)過(guò)寄

存器傳送到CS.

(12)錯(cuò)在將存儲(chǔ)器堆棧中的數(shù)據(jù)直接彈出到CS。

3.5若堆棧段駐留在存儲(chǔ)器地址20000H-2FFFFH處,為了能尋址20FFFH

地址的棧頂,問(wèn)應(yīng)裝入棧指針(SP)的值是多少?

答:裝入SP的值為1000H。

3.6說(shuō)明PUSHF與POPF兩條指令的操作過(guò)程與結(jié)果。

答:執(zhí)行PUSH指令時(shí),先使SP-2-SP,再將16位標(biāo)志寄存器F的內(nèi)容存

入堆棧。執(zhí)行POPF指令時(shí),先將棧頂上的16位內(nèi)容傳送到標(biāo)志寄存器F中,再

將SP+2-*SPo

3.7說(shuō)明下列指令的操作結(jié)果。

(1)LEAAX,NUMB

(2)LEAEAX,NUMB

(3)LDSDI,LIST

(4)LESBX,CAT

答:

(1)操作結(jié)果是將NUMB符號(hào)地址的16位偏移值裝入AXo

(2)操作結(jié)果是將NUMB符號(hào)地址的32位偏移值裝入EAXo

(3)操作結(jié)果是將存儲(chǔ)在數(shù)據(jù)段存儲(chǔ)位置LIST的32位數(shù)據(jù)裝入DI和

DSo

(4)操作結(jié)果是將存儲(chǔ)在數(shù)據(jù)段存儲(chǔ)位置CAT的32位數(shù)據(jù)裝入BX和ES。

3.8執(zhí)行LEABX,TAB指令與執(zhí)行MOVBX,OFFSETTAB指令的功能相

同嗎?哪條指令執(zhí)行的效率高?為什么?

答:兩條指令的功能相同,都是將變量TAB的偏移地址送入BX,但執(zhí)行MOV

BX,OFFSETTAB的指令較快,所以效率高。原因是由匯編程序計(jì)算出了TAB的

偏移地址,而LEA指令是CPU執(zhí)行時(shí)才計(jì)算的。

3.9執(zhí)行LEABX,[DI]指令和執(zhí)行MOVBX,DI指令,哪條指令執(zhí)行較

快?

答:執(zhí)行MOVBX,DI指令比執(zhí)行LEABX,[DI]指令要快。

3.10執(zhí)行LEASI,[BX+DI]指令時(shí),若BX=1000H,DI=FF00H,則執(zhí)行該指

令后,送入SI的偏移地址是多少?自動(dòng)丟失

答:送入SI的偏移地址為t

(SI)=BX+DI=1000H+FF00H=10F00H=0F00H

3.11比較MOVAX,[SI]與LEAAX,[SI]兩條指令在功能上是否相同?

為什么?

答:兩條指令的功能有本質(zhì)區(qū)別,前一條是傳送存儲(chǔ)單元[SI]的內(nèi)容至AX,

而后一條指令是傳送SI所指的偏移地址至AXo

3.12是否能寫(xiě)出與MOVPOIN,OFFSETBUF等效的LEA語(yǔ)句LEAPOIN,,

BUF?為什么?

答:不能寫(xiě)出與MOVPOIN,OFFSETBUF等效的LEA語(yǔ)句LEAPOIN,BUF。

因?yàn)镻OIN是指定某存儲(chǔ)單元的變量,即符號(hào)地址;而此句的目標(biāo)操作數(shù)要求一

定是寄存器。

3.13說(shuō)明下面兩條語(yǔ)句的功能:

CMPAX,0

JNET

答:前一條語(yǔ)句是將AX的內(nèi)容與0做比較,后一條語(yǔ)句是根據(jù)前一條語(yǔ)句

的比較結(jié)果決定是否跳轉(zhuǎn):若AXW0,則轉(zhuǎn)至標(biāo)號(hào)T處執(zhí)行;否則,順序執(zhí)行。

3.14閱讀下列程序段,指出它完成何種運(yùn)算。

CMPAX,0

JGEEXIT

NEGAX

EXIT:'

答:該程序段是判斷AX的內(nèi)容是否20。若AX20,則跳轉(zhuǎn)至EXIT;若AX<0,

則實(shí)現(xiàn)將此負(fù)數(shù)補(bǔ)碼表示變?yōu)榻^對(duì)值相同的正數(shù),完成求補(bǔ)運(yùn)算。

3.15若用64H減去AL中的內(nèi)容,是否能用SUB64H,AL指令?為什么?

如果不能,應(yīng)使用什么指令?

答:不能用SUB64H,AL指令,因?yàn)闇p法指令中不能用立即數(shù)作目標(biāo)操作數(shù)。

應(yīng)使用下列指令:

NEGAL;AL-(AL)

ADDAL,100

3.16下列程序段完成什么功能?

MOVCL,04

SHLDX,CL

MOVBX,AH

SHLAX,CL

SHRBL,CL

ORDL,BL

答:把DX和AX中的雙字長(zhǎng)數(shù)乘16,即把32位字左移4位。

3.17若要把DX和AX中的雙字長(zhǎng)數(shù)擴(kuò)大16倍,寫(xiě)出完整此功能的程序段。

答:

MOVCL,04

SHLDX,CL

MOVBL,AH

SHLAX,CL

SHRBL,CL

ORDL,BL

3.18寫(xiě)出實(shí)現(xiàn)DX=BL-CL的程序段。假定BL=5,CL=10,相乘以后把乘積

從AX傳送到DX。

答:

MOVBL,5;裝入數(shù)據(jù)

MOVCL,10

MOVAL,CL;裝入數(shù)據(jù)

MULBL;相乘

MOVDX,AX;傳送乘積

3.19解釋IMULWORDPTR[SI]指令的操作功能。

答:該指令的操作功能是把AX乘由SI尋址的數(shù)據(jù)段存儲(chǔ)單元的字內(nèi)容,所

得有符號(hào)的32位積放入DX和AX中。

3.20編寫(xiě)一短程序段:用存儲(chǔ)單元NUMBI中的無(wú)符號(hào)字節(jié)數(shù)去除存儲(chǔ)單元

NUMB中的無(wú)符號(hào)字節(jié)數(shù),將所得的商存入單元ANSQ,而余數(shù)存入單元ANSR中。

答:先將被除數(shù)從存儲(chǔ)單元NUMB中取出,然后將零擴(kuò)展成16位無(wú)符號(hào)格式

的數(shù)。程序段如下:

MOVAL,NUMB;取變量NUMB中的字節(jié)數(shù)

MOVAH,0;零擴(kuò)展

DIVNUMBI;被NUMBI除

MOVANSQ,AL;保存商

MOVANSR,AH;保存余數(shù)

3.21若在3.20題中將無(wú)符號(hào)數(shù)變?yōu)橛蟹?hào)數(shù),編寫(xiě)帶符號(hào)除法指令的程

序段。

答:先將被除數(shù)從存儲(chǔ)單元NUMB中取出,但要用CBW指令將AL的符號(hào)擴(kuò)展

到AH,而不用零擴(kuò)展。程序段如下:

MOVAL,NUMB;取NUMB

CWB;符號(hào)擴(kuò)展

IDIVNUMBI;被NUMBI除

MOVANSQ,AL;保存商

MOVANSR,AH;保存余數(shù)

3.22閱讀下列程序段,假定AX=T10,CX=+8,執(zhí)行該程序后,問(wèn)AX,DX

分別是多少?

MOVAX,-110

MOVCX,8

CWD

IDIVCX

答:AX=-13(商),DX=-6(余數(shù))

3.23假定DX和BX中包含4位壓縮BCD數(shù)(1234和5678),將DX和BX

中的BCD數(shù)相加且將和數(shù)存入CX,編寫(xiě)一短程序段。并求出CX是多少?

答:程序段如下:

MOVDX,1234H;裝入1234

MOVBX,5678H;裝入5678

MOVAL,BL;低字節(jié)之和

ADDAL,DL

DAA;低字節(jié)調(diào)整

MOVCL,AL;和數(shù)低字節(jié)送CL

MOVAL,BH;高字節(jié)及進(jìn)位之和

ADCAL,DH

DAA;高字節(jié)調(diào)整

MOVCH,AL;和數(shù)高字節(jié)送CH

CX=6912

3.24用BCD碼計(jì)算下列各式,并寫(xiě)出程序段.

(1)27+45=?

(2)7+5=?

(3)8X7=?

(4)46+5=?

答:

(1)

MOVAL,27H;裝入加數(shù)27H

ADDAL,45H;AL=27H+45H=6CH

DAA;加6調(diào)整AL=72H

(2)

MOVAL,07H;BCD數(shù)9

MOVBL,05H;BCD數(shù)4

ADDAL,BL;AL=07H+05H=0CH

AAA;AL=0CH+06H=02H(高4位清零);AH=1;CF=1

(3)

MOVAL,08H;裝入被乘數(shù)8

MOVBL,07H;裝入乘數(shù)7

MULBL;AX的結(jié)果是38H

AAM;調(diào)整AX=0506H

(4)

MOVAX0406H;AX=0406H,即非壓縮BCD數(shù)46

MOVBL,5;BL=05H,即非壓縮BCD數(shù)5

AAD;AX=04HX0AH+06H=002EH

DIVBL;AH=1,AL=9,即結(jié)果為商9余1

3.25編寫(xiě)一短程序段,將AX中的16位二進(jìn)制轉(zhuǎn)換成4位ASCII碼字符串。

若AX=32510,則完成轉(zhuǎn)換后,AX,DX分別是多少?

答:先將DX清零,然后將AX和DX內(nèi)容除以100。用AAM指令調(diào)整后,將

AX中的4位十六進(jìn)制數(shù)和3030H相加,轉(zhuǎn)換為ASCII的低兩位。再用同樣的方

法,將DX中的4位十六進(jìn)制數(shù)轉(zhuǎn)換為ASCII的高兩位。程序段如下:

XORDX,DX;清DX寄存器

MOVCX,100;DX,AX除以100

DIVCX

AAM;調(diào)整,把商變?yōu)锽CD

ADDAX,3030H;商轉(zhuǎn)換為ASCH碼

XCHGAX,DX;重復(fù)變換一遍余數(shù)

AAM;調(diào)整,把余數(shù)變?yōu)锽CD

ADDAX,3030H;余數(shù)變?yōu)锳SCH碼

完成轉(zhuǎn)換后,AX=3,DX=25o

3.26對(duì)下列程序中各匯編語(yǔ)句的功能進(jìn)行注釋,并畫(huà)出數(shù)據(jù)段中的數(shù)據(jù)在

主存中的存放形式。

DATASEGMENT

①ADW1122H,3344H

②BEQUBYTEPTRA

③BUFDB100DUP(O)

④BUF1EQUWORDPTRBUF

DATAENDS

⑤MOVAX,A

⑥MOVBL,B

⑦M(jìn)OVBUF,BL

⑧MOVBUF1+2,AX

答:

①變量A被定義為字類型;

②將以變量A為首地址的字存儲(chǔ)區(qū)改定義為以變量B為首地址的字節(jié)存儲(chǔ)

區(qū);

③定義了以變量BUF為首地址的100個(gè)字節(jié)的數(shù)據(jù)存儲(chǔ)區(qū),各字節(jié)單元的

初值均為0;

④將以上字節(jié)數(shù)據(jù)存儲(chǔ)區(qū)改定義為字類型,首址變量另定義為BUF1;

⑤(A)=1122HfAX;

⑥(B)=22HfBL;

⑦(BL)=22H-BUF;

⑧(AX)=1100H-BUFl+2o

(2)數(shù)據(jù)段中的數(shù)據(jù)在主存中的存放形式如圖1所示。

圖1數(shù)據(jù)庫(kù)主存中的存放形式

3.27閱讀下列一段程序,試問(wèn):AX,BX,CX分別是多少?

I

I

I

A=10

MOVAX,A

I

I

I

A=10-20

MOVBX,A

A=1OH

A=30H

MOVCX,A

答:AX=1O,BX=0FF6H,CX=30H.

3.28編寫(xiě)實(shí)現(xiàn)下列有符號(hào)除法運(yùn)算的程序段。程序執(zhí)行后,商數(shù)和余數(shù)各

為多少?

(1)4003H4-4(2)-4003H4-4

答:

(1)

MOVAX,4003H

CWD;DX被擴(kuò)展延伸

MOVCX,4

IDIVCX

程序執(zhí)行后,AX=1OOOH,DX=3?

(2)

MOVAX,-4003H

CWD;DX被擴(kuò)展延伸

MOVCX,4

IDIVCX

程序執(zhí)行后,AX=OFOOOH,DX=OFFFDH?

3.29編寫(xiě)一段程序段,將AX中的高4位移至DX的低4位。

答:

MOVCX,4;置循環(huán)次數(shù)4

NEXT:SALAX,1

RCLDX,1;將AX中的最高位移入DX的最低位

DECCX

JNENEXT;若CXWO,則循環(huán)

3.30編寫(xiě)一段程序段,將AX中的低4位移至DX的高4位。

答:

MOVCX,4置循環(huán)次數(shù)4

NEXT:SHRAX,1

RCRDX,1將AX中的最低位移入DX的最高位

DECCX,

JNENEXT若CXXWO,則循環(huán)

3.31根據(jù)圖2所示存儲(chǔ)單元中的數(shù)據(jù),寫(xiě)出下列程序段中①?⑧各語(yǔ)句執(zhí)

行后,有關(guān)寄存器中的內(nèi)容,并指出源操作數(shù)所采用的尋址方式。

①M(fèi)OVBX,OFFSETSTR1+3

②MOVSI,OFFSETSTR2

③MOVCL,COUNT

④MOVDX,WORDPTRNUMB

⑤MOVBP,NUMW+2

⑥MOVAL,3[SI]

⑦M(jìn)OVAH,[SI+BX+1]

⑧MOVCH,BYTEPTRNUMW+3

答:

①BX=3,立

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論