微型计算机原理及应用-习题解答、实验指导及课程设计_第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

提交评论