微型計算機原理及應用-習題解答、實驗指導及課程設計_第1頁
微型計算機原理及應用-習題解答、實驗指導及課程設計_第2頁
微型計算機原理及應用-習題解答、實驗指導及課程設計_第3頁
微型計算機原理及應用-習題解答、實驗指導及課程設計_第4頁
微型計算機原理及應用-習題解答、實驗指導及課程設計_第5頁
已閱讀5頁,還剩36頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

21世紀普通高等教育規劃教材

微型計算機原理及應用

-習題解答、實驗指導及課程設計

主編許立梓

副主編何小敏

主審黃元梅

?

機械工業出版社

*“是。機減L業出版社用版的由許匯科3痂0的《做型H輯機此

理及網用>B配恁住用的輔助教村.由習題孵符.一驗痛通和凄程設

計一冊分卻成.習趣都答瀚分足*微第il卯機燃用及同川,教材中九d

習過的全面解存,為教師和學生提供種習儂解答的叁專與案:文監貓》

師分足林機螟理及雨川說程的武的梅才15.為叢木實驗及自「實驗兩部

分,共8個4啟高】6個學時14命設番力西安尚都同期儀器公“”F發的

TDN(86/HR)矣到兼學實驗系統建卷改計就分是由機凱州以島川像網

的現打設計指》書.設對設計包括理論設“及綜介認:驗兩修分,可供I-

2用設計使IH.

本書與鐲t型計和機以理及應用》-的結仆,為犍機蟻理攝祖冊課

國的制授教學.作業.實臆和讖程設計等教學必局環甘提供Tft科書及學

習舟號回本書可作為教帥及卑類H:計W機」業學牛學習的參考節.

圖書在版編目(C1P)數據

曲型“中機原理及應用;習髭解谷.*冷擊導我說引我計,許立粹I:

麻—北京,機械匚業出版社.20044

21世紀件通高等教行現劃教材

ISBN7-111-14123-7

I.次...—..加做超計聯機"『;,枝-教學與丐崗制

|\W36

中m版東圖書mCIP做據快j:(20M)第017252、

機械業用取社,:北京“百萬”:人也22U幗政說眄1000371

出仃編料:費電勤版式履計,第水明火任校對?小秋嚷

M而設計,張?或仟印制:于研

北京機I:即刷廠印喇?新華書廟北京電行所發行

2MMft4JJ?I版?第I次印刷

787“,”xtmimiii1?-9.25卬張?225T7

定價114.00K

凡購本書,如“映貞.倒貞.脫貞,由東社發行部謝楨

依社購%熱線電詁(010)68993821>88379646

耳刖無防偽標的為選版

第1部分習題解答

習題解答部分與《微型計算機聯理及應用》傳出配套.為莒中各尊習題的種解答方

案.學生進%習甩練習,也是種.實踐,是教學壞"中的一環.習題練習可分為哥次陶授后的

課外作業及課堂練習.課外作業是教觸為鞏囿本次面授知識而布設的.教師可根據砧序漸進

及與教學同步的原則布置作業,學生刷住而技后抓^復習.學生住rfii授時接受ill識的白分比

IAI人而異,向IL知離Ifll授時何間間隔愈長衰減她快.課堂練習一般在完成個教學階段后用

■個或兩個學時完成.牧帥利用這個時間示范典型習題.以他學1:模仿.同時也他此貼近學

牛,「解學牛課堂接受知武耨況,以便因人向抖斛決些課堂卜無法解決的特殊問題.

(一)習題一解答

1.?釋卜列術語:

(I)微處理器.微計織機和微計算機系統.

(2)單片機、能板機和多板機.

(3)微計書機系統的硬件和軟件.

(4)總線.

(S)機據語育、力編語.';和高級語--

答:(I)微處理瑞由算術邏輯單兀*控制器、當夕罌陣列等組成:俄計算機由微處理符、內

存儲曙、I">接”電路及拓統總線等組成:俄計算機系統由硬件(包括微計算機、外國設備等)

和軟件(包括系統軟件、程序設計語言,應用軟件等)等也成.

(2)劃果把和處理招、內存儲器J")接L1電路等這些部件都集成4個芯片I.用個芯

片構成一臺計算機,稱之為單片計算機:如果把I.述衿部件安裝在塊卬制電路板上向組成撤

空計算機?稱之為單板計算機:如果將處理瑞、存儲器以及I/O接u電路安裝「不同的卬制電

路板上,由若1塊這樣的電路板組合而成的計律機.稱之為多板計馀機.

(3)俄計算機系統的硬件包括微計算機、外圍設笈部.微計葬機系統的軟俏包括系統軟

件、程序設計語自、應用軟件等.

(4)總線是微機中用來進行俏息傳遞的族公共俳號線.按傳送他息種類的不同可分為

地川.總線、數據總線和控制總線.

2.畫出典型的8位戰機的組成推圖,說明各組成部分的作用.

解:8位.散機的組成.圖如圖14-2所示.

各組成邰分的作用為:

CPI,先成用術和邏輯運算以及控制和協調各部件I.作.

■>

存儲器:存儲器用來存放數據和程序:

外圍設備:包括錨人和輸出設備.完成G總的輸入和輸出:

接u電路:外圍設備叮系統總線之間的銀沖區.

圖1-1-28位微機的組成-圖

3.求出卜列各補碼表示的進制數的真值:

(1)00000000(2)01111110(3)11111111(4)10000000

答:(1)0(2)+126(3)-1(4)-128

4.卜列.迸制數若為無符號數,它們的值是多少?n為帶符號數,它們的貨是多少?用

卜進制表示”

(I)OII01110(2)01011001(3)10001101(4)11111001

(1)01101110若為無符號數,其值為110:若為懵符號數.其住為110.

(?)01011()01著為兄符號數,其值為89;若為帶符號數.其值為89.

(3)10001101行為Jc符號數,其值為141:r;為帶符號數,式值>J-115.

(4)HlllWl行為無符號數,其仇為24%并為帶符號數.其值為-7

5.己知卜列進制數碼.'寸出它們的原碼、反碼和.FJ.

(1)00000000(2)01111KM)(3)10000010(4)H111111

答:<I)00000000的原碼、反碼和沖礙都為00000000

(2)0111I10()的原碼.反碼和補科都為0111I100

(3)10000010的原硯、反碼和補碼分別為10000010JI111101、llII1110

(4)11111111的原碼、反碼和補碼分別為I111III1>10000000、10()0000」

6.卜列各數均為用卜六進制發示的?位進制數.M說明巧它們分別被{]-作是撲碼表示

的數或字符的ASCH時,它們所表示的I邊制數及字符是什么?

(1)4FII(2)7311(3)2BH(4)6CH

答:3)79?<>?(2)115(3)43*+*(4)108T

7.試丐出卜列字符甲的ASCII碼值:

Forexample

ThisisamitnlxT1997

答:卜,“八um”,?的ASCII碼值:46H6PH72H20H65H78H61H6l>H70H6CH65H

Thi>.unumber1997的ASCII碼值-4H68H691173H20H69H73H20H61H20H

6EH751161)1162H651172Fl20H311139H39H37H

8.卜列各數均為卜進制數.試用8位.進制補碼計算F列各題.將運瓶/果用兩位1?六

進制敷表示并說明運算結果是否溢出.

<I)(-85)+76(2)85+(-76)(3)(-85)-76(4)S5-(-76)

答:(I)10101011

01001100

11110111

運免結吸0E7H.即(-9)".無溢出.

(2)01010101

101101()0

000。1001

運位結梟09H.無溢出

(3)10101011

101I010()

01011111

(-85)-76的卜進制運算結果為-161,超出1-128,發4溢出..進制運旨結果為

5Hl.為錯誤結果.

(4J01010101

0100I100

1010(MNII

85-<-76)的卜進制建算結果為161,超出了127.發生溢出.進制近齊結果為0AIH,

為一錯誤結果.

9.完成K列-進制-的運算.成轉換為卜班制數進行校檢:

(1)10011010-t-00101101(2)1100000-00001101

(3)I101x1010(4)11000011+1001

答:(I)1(X)11010+(X)101101=11000111或154+45=199

(2)1100(X)0()-00001101=10110011或192-13=179

(3)1101x1010=10000010或13x10=130

(4)01011010-r1(M)1=I0H)或90+9=1()

(二)習題二解答

I.住卜列各項中.選出8086/8088的EI:和B1U的缸成部件.將所選部件的編:;旭J/n:

BHJ____________

(1)標志甯存ss(2)段布存器組

(3)ALU(4)指令指針

(5)指令隊列(6)20位地址加法器

(7)通用寄存器組(8)EU控制/

(9)斜存器(10)總線控制電路

答心(I)(3)(7)(K)(9)

BlI(2)(4)(5)(6)UO)__________

2.8086/8088CPI內部有哪些寄存器?它們的七要作用各是什么?

笞:8086/8088CPU內部仃以卜寄存器:

⑴一據褥存器包括AX'BX"X和DX.通常用來存放16位的數據和地址它們中的

每個乂可以分為島字…H和低字,節L-存涔.即AH、HH、CH、DH及AL、BL、CL、DL兩俎.

用來存放8位數據.它們均可獨立尋址,獨江使用.

(卻指針寄存器和變址尋存器包括SP.BP.S1和1)1“它們都是i六位寄存器.可以存放

數據據!通常用來存放邏輯地址的偏移址.是形成2Q位物理地址碼的其中邰分.在任何情況

卜.它們都不能獨立地形成訪M內存的地加碼.

(3)段寄存器8086/8088GPU的BII中行4個16位段寄存器.用來存放段起始地址(段

娃址)的高16位.8086/8088的指令能宜接訪問這4個段.4個段寄存器是t代碼段商存器

CS(C?leS-gmrnl)存放節前執行程序所在段的段基址:數據段寄存器OSHDataSegm由)存放

節前使用的數據段的段基址,通常數據段用來存放數據和變量:堆找段寄存磐SS(StuckSeg.

menl)存放當前堆找段的段基址而加段寄存器ESC&draSegment)存放附加數搟段的段基址.

(4)控制寄存器組包括個16位的指令指fl1P機個16位標志寄存器.指令指什1P

(Insi,uction[“inter)總是存放有下次要取出指令的偏移地址:標志寄存器只用79俏,其中

仃6位是反映前次涉及ALI用作結果的狀態標志,其余3位是控制CPI操作特征的控制標

志.

3.8086/808HCI'I中的標志存存瑞行兒個標志位?各標志位在什么情況卜置位?

答:8086/8088CPL設立T個16位寄存翳.用了其'P9位作標志位仃6個是反映前

次涉及ALI操作結果的狀態標志.其余3個是控制(:PU煤作特征的控制標志.

6個狀態標志是:

CF<CarryHag)進位標志;加法時的最高位(字節操作是1).位.字操作是%位)產生進位

或戰法時段而包產T信位.則CF=I.否則CF=0.

\F(AuxiliaryCarryFlag)輔助進‘位標志:加法時I),位.仃進位或減6時I),位仃借位.則AF

=I.否則AF=0這個標志只供BCD嗎幻術運球時使用

<>K<herflowFlag)溢出標志:帶符號也在進行算術運肆時?其結果徑出X位或16位帶符

號數所能表示的以fi'i范圍,產生溢出.則()F=I,否WUOF=0.

ZF(ZeroFlag)v標志:運算結果各位都為&.則ZF=I,內則ZK=O?

SI-<SigllHug)符號標志:運蛻結里為負數UII結果的屬高位為1.則SE=1.看則S卜=0.

PKI'uriis”曄)奇偶標志:操作結果的低?位中含偶數個I,則PF=I.否則1年=0.

控制標志位的狀態由程序設置或由程序消除.

3個控制標志是:

DFChirrrtionRug)方向標志:用來控制數據串操作指令的毋進方%DF=I時,數據串指

令將以地址的遞減咂序對數據串中的數據進行處理:DF=0時,數據串指令則從低位地址到高

位地址作白動遞增處理.

(Interrupt4juihl^Flag)中斷允許標志:IF為I時為開中斷,CPI<4響應可加敝中斷請

求;升為。時為關中斷.CPI不響應可屏蔽中斷請求

TF(T”F1城陷阱標志:它是為方使程序調試而設駒.當TF為I時.CPI處于尊步執行

令的方式.集執力條指令就門動產上個內部中斷,H去執行式中斷服務程序.使操作

檸能夠逐條指令地檢ft個程序的執行情況.當TF為0時.C1H正常執行程序.

4.川fM)86CPI.已知(l)S)=0150H.?:S)=(1640H.(SS)=1200H,問:

(1)在數據段中可存放的數據最多為多少字打?背本地址各是什么?

⑵堆機段中可存放多少個16位的不?濘木地如作是什么?

<3)代碼段最大可存放多少個字節的程序?f'lK地址各是什么?

答:⑴在數據段中可存放的數據最影為64KH,首地址為01500H.末地址為U4FFH.

⑵?堆棧段中可存放32K個16位的字?.首地址為I2000H.一地址為21FHH

(3)代碼段中埴大可存放64KB的程序.首地ill為06400H..地址為163EFH.

5.仃隼由27個字。組成的數據區,其起始地川為BA00H:I3A0H,試寫出談數據區的

許末單兒的實際地址.

答:數據區的首地址為BA0011x101!+1UA01I=BBBA01I

數據區的.地址為BUBA0H+1BH-1=BBBBA1I

&若代碼段方存器(CS)=200011.指令指針UP)=2()0011.試問指令的實際地M是什么?

答:指令的實際地址為2000Hx10H+2000H=220(X)11.

7.己知當前數據段位j存儲器的A1000H-80ITFH他用內.何DS等J多少?

答:因為數據段的范圍為A1(X)()H-H0HI-H.數據段其有64KB.II式末地址為BOHFH.

所以DS等于AIOOH

8.有兩個」6位的字ABCUHA234H.它們在8U86系統存儲器中的地址分別是00100H

及00105H.iA師出它們小存儲器中存放東意圖.

答:這兩個『在存儲器中的存放示意圖如卜:

OOKMIH?h

001OiH\ll

00105Hu

00106H12

9.8086/8088最小L作〃式與果大■作方式有什么不同?用什幺方法將8086/8088置為

上述兩種L作方式?

答:力把8OS6/8O88的MN/K衣引腳接到+5"時,CPI就處廣展小1:作方式.所謂最小T

作方式,就是系統中只仃個微處理器8086或8088.在這種系統中,所仃的總線控制為號都

直接由8086或8088產']:.系統中總線控制邏軾電路被減小到皎小,這種方式適合廣較小規模

系統的應用.

當把8O86/8O88CPU的MN/忘引腳接地時.CPI一處J最大工作方武.最大「作方式用

君要利用8086/80的:Pl構成中等或較大<.相對于(小方式)系統時,在盛大方式系統中.

可以只有一余微處理器,也可以仃兩個或兩個以卜.的微處理器,其中8086或8088為上處理

器.凡他處理器稱為后援處理巖,用來協助上處理器處理某右而的匚作.8個優處理器構成的

系統稱多處理器系統.

1().試指出8086/8088系統總線結構中.8284A時鐘產生涔.8282地址鋤存蕭.8286收發

6

踹及82X8總線控制器的作用

答:時神發生器8284A提供頗率恒定的他相時鐘脈沖CLK給(:PI,除此之外.還具仃錢統

乜位4;號RESET產生電路和準備好川號READY控制電路.

8282用來鈍存8086/8088訪.向存儲器或I/O-U時.廣總線周期T,狀態卜發出的地川不1

號.”鎮存后的地址信號可以在整個周期內保抑穩定不變.系統中而要用幾片8282.要根據

地址的位數來決定.

82M是?一同相收發端.它仃8路雙向緩沖電路,兩組數據引腳是對稱的它用來加強

數據總稅曲次我脆力.

8288運808678088i:Pl工作于最大方式時,用來代杼CPU提供總線控制和命令你號的總

線控制器.

11.試敘述8086最小工作方式卜總線讀寫操作過程

答:8086在最小方:或卜總線讀操作的時序如圖1-2-11(I)所示.

V1-2-11(I)80H6在被小方式卜總找讀擇伴的時序

操作過程如卜,

(1)T,狀態

DCPU根據執訂的是訪問存儲需還是訪問1人)端口指令,在記線上發」效電平.若

為讀存儲器,發高電平:并為讀1/()謂.則為低電平,此俏號將持續城個周期..

2)讀取的存儲單元或I/O端LJ的20位地加.號通過多路攵用總線輸出,其中A4位地川

通過地址/狀態續送出,低16位地址通過地址/數據線Al)”-0,送出.這類

例號在T,狀態開始送出似只找純個狀態,因此必須及時愀住,以供整個總線助助使用,

3)為了像存地址俏號,CPI他在兀狀態從ALE引腳上愉出個正脈沖作地址微存器

8282的地址鉞存俏號.在U.E的卜降沿到來之前.而和地址殘號均己仃效.8282正是用

AI.E的卜降沿對地址進行領存.

4)而召;,號也在7,狀態通過而包S.用腳送出.而?和地地分別用來對奇.偶地川庫

進行尋址.

5)使DT/R變為低電卡.控制數據總統收發器8286為接收數據狀態

(2)r:狀態

I)\W/S?-Alft/S,線上由地址。;息變成狀態。,息S?-S,.BHE/S由布市變為狀態。I息

S.,.直持續到北.

2)Aft1,~.AI)?線上的地址俗號洞大.進入高陽狀態.為讀入數據作準備

3)而五億號開始變為仃效,低電產),開放8286總線收發湍.BEST范持仃效到T,的中期才

結束.

4)而信號開始變為仃效的低電f.控制被地址制號選中的存儲單兀域1/0端I】打開數據

輸出緩沖器二以使將數據送上數據總線.

5)D“iT州:續保外低電平,使8286處r接收狀態.

(3)T,狀態存儲單幾或I/O端U將數據送到數據總線A%-AD?.供8286畿沖后向

CPI1輸入.

(4)7;狀態節系統所用的存儲黑或外諛的工作座度依慢.不能在城本總線周期現定的

四個狀態完成讀操作時.它們物通過8284A時鐘發牛瑞送出HEA1八傳號給CPI.CPI在兀

的前沿(卜降沿)采樣HEAD、.當采到READY為低電平卜數榭準備就結)時.(:Pl就會在T,

和T,之間自動插入等侍狀態/;,幾可以是個或多個.CPU在兩個晨的前卜僚沿又去采

樣READY,直到HEADY為面電平(數據準備就緒)時,在木T,狀態結束后進入T,狀態住

呆%;個人狀態,數據肯定已經出現在數據總統I:.因此.這時的總統操作和他本總線M|期

中的7;狀態中完全樣.

(5)Tt狀態在Tt狀態和前個狀態交界的卜降沿處J:Pl讀取數據總線上的數據.

8086最小方式卜的總物與操作時序如圖1-2T1⑵所不基本寫操作用劇也包括4個T

狀態r,、r:.r,和〃.巧存儲器或外設速度較慢時,住兀和兀之同插入i個或七個底.備狀

態卜的掾作如卜:

(I)乙狀態與讀掾作樣":M/記線上發仃效電T.確定是訪問存儲器還是訪問i/o

那U.同時物20位地址和畝正臨出.ALE引腳上的正脈沖的卜路沿把2()位地址及而夏狀態鋤

存到8282名存器中.DT/正為局電平.

(2)7,狀態而為低電平,井在AD線上艇去地址價號后,立即將數據輸出到AD”-

AD“I:..不君像造周期書要維外個狀態的浮空以作級沖.DT/IF維持高電平.礪變為低

電平.8286處:發送狀態.\,“G-\,/S,AiiHE/S,變為狀態輸出.

(3)7;狀態各倍號維持Tz時的狀態不變.與該同期憚.在r的同卜降沿采樣

READ、.若就插入T*狀態則嚴4晨從而進入等待狀態,否則轉入〃狀態,。狀態.與傷號

也維抖不變.

(4)7;狀態在Tt狀態而IW.而變無效并撤除數據總線I:的數據:在T,后

8

年1-2-11l:l8086府小方式下的總找篤操作叫不

變無效.此時麗也變為高電平.從llU關閉8286收發器.

12.試敘述H0?b1A大「作方式卜.訊J/訐“,而斤F;引腳的作用.

答:8086/8()88在最大方式卜.引腳而>無,和麗ET提供的幻歲稱為總統清求/總線允

許/總線杯放信號.它們可分別連接到兩個其他的總線主模塊(例如數值協處理蹺和1/()處理

器)KQ/GT,,fllHQ/CT,均為雙向低電平仃效,而各優先級高J后齊.8086/8088最大方式

卜的總線諳求/允許/祁放的操作時序如圖1-2-12所示.

由圖可見,CPI在域個時鐘周I9J的上升沿對面>正引腳進衽■檢測,當檢測到外部向CP(

送來個“請求”負膿沖時(寬電為一個時鐘周期).則在下個7,狀態或7,狀態從同引腳

上由CPI向請求曲線假對權的土模塊發回個“允許”他脈沖(空度仍為個時鐘周期),并

便具仃二態的輸出^.AD,-\1)?山/%-A/S,、而.UM:K、S:.S,島fl)BHE/S都處「浮空

狀態,CPU物時七總線斷開.

請求總線使用權的上模塊收到這個“允許”脈沖時.?獲得了總線的控制權.可以對總線

占用?個或兒個總線周期,當它要科放總線時.他乂從而線I.發個“穢放”貨膿沖(寬度仍

為個時鐘周期).CPI檢測到樣譬沖后.髭過兩個四周期的:延遲.才能重新荻得總線的

控制權,君要汴意的是,由;而/而,優先破跖r而/FF,,。兩個小腳都同時向(;w發出總

線請求時.<TI譽光在麗麗,上發允許值號.等到CPU再次得到總繾控制權時.才去響應

麗/而用腳上的請求.不過.“一接卜麗而I:的總線卜模塊得到「總線控制權.就要等

到鏢1模塊科放r屈悔,£PU乂收回了總線控制權后,才會人喇同麗而,引腳上的總躡盾

求.w外.勺最小方大卜執行總線保持語求/保珞響應操作樣.在<:網止出r總線的控制權

g

圖1-2-128086/8088I&K斤八一―,線俯?/允iV并放的操代時不

后,CPI內部的執行部件EI仍可維續執行指令隊列中的指令.宜到遇到條需執行總線操作

周期的拊令或指令隊列已空為止.

(三)習題三解答

1.8086語,;指令的Jill方式仃啷兒類?用嘯種?址方式的指令執行速度最快■!

答:8OS6/8O88提伊.了8種尋址方式對操作數尋址,它們是:迨含尋址、立即敷?址、-存

器尋址、鼠接尋址,寄存器間接尋址"止存器相對尋址、基址變址尋址和相對珞址變址尋址.濟

存瑞d址的指令執行速度最快.

2一用寄存器送"間接J址方式時分別計對什么情況來使用?用這4個寄

仔器分別組合進行間搜尋址時.物理地址是怎樣計算的?舉例說明.

答:當指令中指定用BX、W或DI為何址寄存器,則操作數在數據段中.這時以段寄存器

DS的內容為段隔川:.操作數的物理地址為:

.(BX).

I'A=(1)S)x16+J(SI),

I(hi),

源操作數的偏移地址存放JSI中,所以稱SI為源變址數存器:目的操作數的偏移地址存

放J1)1中,所以稱D1為II的變址禍存器,

例如;著已知(DS)=2000H.(BX)=4000H.則源操作數的物理地址PA=(DS)*16+

(BX)=24O(X)H.

若己知⑴S)=2000H.(SD=500QH,則源操作數的物理地址PR=(DS)xIft+(SI)=

25000H.

若已知己5)=2000H.Bl):<6000H.則源操作數的物理地址PA=(DS)x16+(IM)=

26000H.

BP稱幅ill指針.用卜存放一于堆棧段中的個數據I<格址的偏移地址.若指令中指定

BP為何址寄存器,則操作數放在班伐段中.這時.以段寄存器SS中的內容為段儂川.操作數

的物理地址為:用A=(SS)x!6+(BP).

例如:苻已知(S9)=3000H.(Bl?)=4000H.則源操作數的物I理地址PA=(SS)x16+

(BP)=34OWH.

3.設(IJS)=2000H,(SS)=1500H.(SI)=00A0H.<BX)nOlOOH.數據變顯VAL的偏移

1()

地址為0050H.試指出以卜指令的源操作數是什么J址方式?若為存儲器操作數,箕物理地址

足多少?

(I)MOVAX.DABH

(2)M(>\AX.[10011|

(3)MOVAX.VAL

(4)MOVUX.[SI]

(5)MO\AL,\AL|BX]

(6)MOVCL.[BX][SI]

答:0)源操作我是立鄴數尋址.

⑵源操作數是直接尋址,存效地址EA是個-即數,或物理地址是:

PA=(OSx10H)+EA=(2(X)0llxI0H)+100H=2010011

(3)源操作數-H接4址,有效地址EA是個符號地址.K物理地址是:

l'A=(DSx1011)+EA=(2000Hx10H)+0050H=20050H

(4)操作數是寄存器間接尋址,或物理地址是:

l'\=(IN)x10H+(SI)=(20(K)Hx10H)+00A0H=200A0II

(5)源操作■是寄存涔相對才址,其物理地址是:

PA=(DS)x1011+(BX)+\AL=(20(U)ilx10H)+O1(K)H+0050H=2015011

(6)源操作數是地址變址4址,其物理地址是:

PA=(DS)xlOH+(SI)+(BX)=(2000HxI0H)+OOAOH+0100H-20!AOH

4.指出下列指令中哪些是正確的?哪些是錯誤的?若一錯誤的.請晚叫原因.

(I)MOVAH.BX

(2)MO\[BX],[SI]

(3)MOVAX.[SI][DI]

(4)M()\[BX].[1000H]

(5)XCH<;CS.AX

(6)\(:H<;BX.1P

(7)PISHCS

(8)POPCS

答:3)錯誤.源和11的操作數的類型(長度)不致.

(2)錯誤.源和11的操作政不能同為存儲器操作數.

(3)錯誤用、1)1不能同時出現伺源操作數中.

(4)錯誤指令中源和II的操作數不能同為存儲器操作數.

⑸錯快.交換指令不能使用段寄存轉.

(6)惜促.交換指令不能使用1P.CS和IP的值股只能在執行轉移指令時改變.

(7)正確,CS可作源操作數.

<8)錯誤.CS不叫作II的操作數.

5.已知(DS)c20()0H.(BX)=0300H.(SI)=()0()2H.(20300H)=12JH,(2O3OIH)=34II.

(20302H)=56H.(20303H)=78H.(214OOH)=2AH.(2I4OIH)=4CH.(214O2H)=B7H.

⑵4O3H)=65H.試說明下列各條指令執行先后\X潛存器的內容.

Il

(1)M()\AX.1400H

(2)MOVXX,BX

?3)M<)\AX.[14(X)H]

(4)M()\AX.[BX]

(5)M()\AX.IHX)H[BX]

(6)MOVAX.[BX][SI]

(7)MO\\\,11(K)H|BXJ[SI|

答:⑴(AX)=I400H

⑵(AX)=(BX)=030011

(3)物理地址PA=(2000Hx10H)+I4WH=21400H.(AX)=412AH

(4)物理地址PA=(200011x10H)+0300H=2O3OOH.(AX)=341211

(5)物理地址PA=(200()11x10H)+U(K)H+O300H=214OOH.(AX)=4<2AH

(6)物理地址PA=(2000Hx1011)+U3OOH+OOO2H=2030211.(AX)=785611

(7)物現地川PA=<2000Hx10H)+11(10H+0300H+0(X)2H=21402H.(AX)=65B7H

6.根據以卜要求.狀寫出相應的匯編洛不指令.

(1)把BX寄存器和DX?存器的內容相加,耕果存入BX寄存器中.

(2)用寄存器BX和7的展址變抵尋址方式把存儲泄中的個字節號AL寄存器的內容

相加.并把結果送到AL潛存器中.

(3)用寄存圈BX和位移址OB2H的寄存器相對J址方式把在確器中的,個字和CK.

加,并把結果送回存儲罌中.

(4)用傳移儂為0524H的rt接學址方式把存儲端中的個一一立即數3c5AH相加.并把

解果送回潺存儲單元中.

解:相應的匯編用育指令如卜:

(1)ADDBX.DX

(2)ADDAL.[BX][SI]

(3)ADD[B\+00B2H].CX

⑷Al”)ViOHl)PI'RI;0524H].3(:5AH

7.已知堆枝段寄存器SS的內容是OFFOAIL維棧指針SP的內容工0008H.先執行兩條把

8057HfliOHCll分別送棧的PlSH指令,再執行條P()l?BX指令.試畫出堆棧區和SP的內

容過程變化小意圖(標出存儲單兀的物理地址).

解:堆校區和7P的內容變化過程不就如圖1S-7所示.

8:字節擴展指令和字擴展指令用在什么場點?舉例說叨.

答:80%/8(用8的除法要求被除數的位數為除數的2倍,即字行除法時要求被除數為16

何,字根除時要求披階數為32位.如果破除敷不滿足此要求時,對卜無符號數.將席位補考即

可:但對F帶符號數,不能面單地將被除數的高位部分填0,必須按照破除數的符號來擴展.

*為正數時,A位部分各位補0:'-)為負數時,同位部分各位補1為此,8086/8088提供T專

門的符號擴展指令C”D和(:B”.方領用廣擴展,

13

例:求帶符號數-47/5的商機余數,

M(八:被除數-47的林碼送AL

VHHBL.05II;除數+5送BL

CBU:AL中符號擴屣到\11中,使AXHOFFIMH

IDIVBL:AX/BL.(Al.)=$711(曲).(All)=I-EII(余數)

9.寫出執行以卜計律的指令序列.其中X、Y、Z、R、W均為存放16位帶符號數碓元的地

址.

(I)Z-W+(Z-X)

⑵Z-“-(X+6)-(|{+9)

(3)Z4-CWxX)/(Y+6).R-余數

(4)Z—(7-X)/5xY)x2

解:疥令序列加卜:

(1)MO\AX.Z

SIBA\.X

XI>I)AX.W

MOVZ.AX

(2)MOVAX.W

MOVBX.X

MOVl)X,K

\nnBX.6

\i)l)DX,9

SIBAX.BX

SBBAX.DX

MOVZ.AX

(3)MOVAX,W

IMlLX

MOVBX.、

\I>DB\.6

B)I\BX

MOVZ.AX

MO\H.I)X

(4)MOVAX,?

SUBAX-X

MOVBL.5

IDIVBL

CB\X

IMLLY

SALAX.I

KGL1)\.1

12

OFFO^OH

OFIrOAOH

OHDAIH

OFFX>AIH

<)rniA2H

0FT0A2II

OHM3H

UFTWH

0FF0A4H

0FFVA4H

0FE0A5H

ObFOASH

0FHH6H

0FF0A6H

0PRU7H

0FF0A7H80H

(HIOAgH

0FF0A8H

0KDA9H

、%徵0FF0A9H

執行杷和”H人代的

指令執行前的塘蜴般PUSH力爭后

(IFFQAOil

UIIOAIH

0FF0A2H

0FTXIA3H

7CW0FF0A4H

UFHOFHtASH

80110FT0A6H

57H(WWA7H

OFFOA&H

0FT0A9H

執行把0F7CH人線的

PUSH指令行后lux)one”

圖13?7堆枚!.<利SP的內容華化過“小&

H

溫馨提示

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

評論

0/150

提交評論