微机原理第二版+田辉+课后问题解释1.docx

上传人:b****5 文档编号:5650374 上传时间:2022-12-30 格式:DOCX 页数:69 大小:158.29KB
下载 相关 举报
微机原理第二版+田辉+课后问题解释1.docx_第1页
第1页 / 共69页
微机原理第二版+田辉+课后问题解释1.docx_第2页
第2页 / 共69页
微机原理第二版+田辉+课后问题解释1.docx_第3页
第3页 / 共69页
微机原理第二版+田辉+课后问题解释1.docx_第4页
第4页 / 共69页
微机原理第二版+田辉+课后问题解释1.docx_第5页
第5页 / 共69页
点击查看更多>>
下载资源
资源描述

微机原理第二版+田辉+课后问题解释1.docx

《微机原理第二版+田辉+课后问题解释1.docx》由会员分享,可在线阅读,更多相关《微机原理第二版+田辉+课后问题解释1.docx(69页珍藏版)》请在冰豆网上搜索。

微机原理第二版+田辉+课后问题解释1.docx

微机原理第二版+田辉+课后问题解释1

课后答案网,用心为你服务!

 

大学答案---中学答案---考研答案---考试答案

最全最多的课后习题参考答案,尽在课后答案网(.khdaw.)!

Khdaw团队一直秉承用心为大家服务的宗旨,以关注学生的学习生活为出发点,

旨在为广大学生朋友的自主学习提供一个分享和交流的平台。

爱校园(.aixiaoyuan.)课后答案网(.khdaw.)淘答案(.taodaan.)

 

第1章微型计算机系统概述

 

 

1-1.微型计算机包括哪几个主要组成部分,各部分的基本功能是什么?

答:

微型计算机由CPU、存储器、输入/输出接口及系统总线组成。

CPU是微型计算机的核心部件,一般具有下列功能:

进行算术和逻辑运算。

暂存少量

数据。

对指令译码并执行指令所规定的操作。

与存储器和外设进行数据交换的能力。

提供整

个系统所需要的定时和控制信号。

响应其他部件发出的中断请求;总线是计算机系统各功能

模块间传递信息的公共通道,一般由总线控制器、总线发送器、总线接收器以及一组导线组

成;存储器是用来存储数据、程序的部件;I/O接口是微型计算机的重要组成部件,在CPU

和外设之间起适配作用。

1-2.CPU执行指令的工作过程。

答:

取指令、执行指令。

指令执行的基本过程:

(1)开始执行程序时,程序计数器中保存第一条指令的地址,指明当前将要执行的指令

存放在存储器的哪个单元。

(2)控制器:

将程序计数器中的地址送至地址寄存器MAR,并发出读命令。

存储器根

据此地址取出一条指令,经过数据总线进入指令寄存器IR。

(3)指令译码器译码,控制逻辑阵列发操作命令,执行指令操作码规定的操作。

(4)修改程序计数器的容。

1-3.果微处理器的地址总线为20位,它的最大寻址空间为多少?

20

1-4.处理器、微型计算机和微型计算机系统之间有什么关系?

答:

微处理器是微型计算机的核心部件。

微处理器配上存储器、输入/输出接口及相应的外

设构成完整的微型计算机。

以微型计算机为主体,配上系统软件和外部设备以后,就构成了

完整的微型计算机系统。

1-5.下面十进制数分别转换为二进制、八进制和十六进制数:

128,65535,1024

答:

128,二进制:

10000000B,八进制:

200O,十六进制:

80H

65535,二进制:

1111111111111111B,八进制:

177777O,十六进制:

FFFFH

1024,二进制:

10000000000B,八进制:

2000O,十六进制:

400H

1-6.下面二进制数分别转换为十进制及十六进制数:

1011.1010B,1111101.11B

答:

1011.1010B,十进制:

11.625,十六进制:

B.AH

 

答:

2=1048576=1MB

 

1111101.11B,十进制:

125.75,十六进制:

7D.CH

1-7.(5487)10=(

0101010010000111)BCD=1010101101111B

1-8.设字长为8位,请写出下列数的原码、反码、补码和移码:

15,-20,-27/32

答:

[+15]原=00001111,[+15]反=00001111,[+15]补=00001111,[+15]移=10001111

[-20]原=10010100,[-20]反=11101011,[-20]补=11101100,[-20]移=01101100

[-27/32]原=1.1101100,[-27/32]反=1.0010011,[-27/32]补=1.0010100,

[-27/32]移=0.0010100

 

 

第2章微型计算机系统的微处理器

 

习题

2-1.086/8088CPU的功能结构由哪两部分组成?

它们的主要功能是什么?

答:

8086/8088CPU的功能结构由以下两部分组成:

总线接口单元BIU(BusInterfaceUnit),

执行部件EU(ExecutionUnit)。

总线接口单元BIU的主要功能是:

负责与存储器、I/O端口进行数据传送。

具体讲:

指令:

总线接口部件从存中取出指令后送到指令队列。

预取指令。

配合EU执行指令,存

取操作数和运算结果。

执行部件EU主要功能是:

负责指令执行。

2-2.086CPU指令部件(队列)的作用是什么?

地址加法器的作用是什么?

答:

8086/8088的指令队列分别为6/4个字节,存储预取的指令。

地址加法器用来产生20位物理地址。

8086/8088可用20位地址寻址1M字节的存空间,

而CPU部的寄存器都是16位,因此需要由一个附加的机构来计算出20位的物理地址,这

个机构就是20位的地址加法器。

2-3.据8086CPU的结构,简述程序的执行过程。

答:

设程序的指令代码已存放在存贮器中。

为执行程序,CPU按照时钟节拍,产生一系列控

制信号,有规则地重复进行以下过程。

(1)BIU从存贮器中取出一条指令存入指令队列。

(2)EU从指令队列取指令并执行指令。

BIU利用总线空闲时间,从存取第二条指令

或取第三条指令存入指令队列。

(3)EU执行下一条指令。

如果前面一条指令有写存贮器的要求,则通知BIU把前条指

令结果写到存贮器中,然后再取指令存入指令队列。

(4)如指令执行要求读取操作数,由BIU完成。

(5)EU执行再下一条指令,返回

(1)处继续执行上述操作过程。

所以,程序的执行过

程就是CPU取指令、分析指令、执行指令,再取指令这样一个循环重复过程。

在指令执行过程中,利用EU分析指令操作码和执行指令时不占用总线操作时间的特

点,BIU自动地通过总线读取存贮器中的指令码存入BIU指令队列,从而使BIU与EU并

行工作,提高CPU执行指令的速度。

2-4.什么是总线周期?

8086/8088的基本总线周期由几个时钟周期组成?

若CPU的主

时钟频率为10MHz,则一个时钟周期为多少?

一个基本总线周期为多少?

答:

总线周期:

BIU通过系统总线对存储器或I/O端口进行一次读/写操作的过程称为一个

总线周期。

8086/8088CPU的一个基本总线周期由4个时钟周期(T1~T4)组成,也称4个T状态。

-7

 

若CPU的主时钟频率为10MHz,则一个时钟周期为10s,一个基本总线周期为4×

 

10-7s。

2-5.复位信号RESET到来后,8086/8088CPU的部状态有何特征?

系统从何处开

始执行指令?

答:

8086/8088系统中,复位信号RESET到来后,处理器部的各寄存器和标志寄存器

的容自动设置为:

CSFFFFHDS0000H

SS0000HES0000H

IP0000H指令队列空

FR0000H(禁止中断)

因CS=FFFFH,IP=0000,所以8086/8088将从地址FFFF0H开始执行指令。

2-6.在总线周期的T1~T4状态,CPU分别执行什么操作?

在CPU的读/写总线周期

中,数据在哪个状态出现在数据总线上?

答:

CPU在每个时钟周期完成若干个基本操作,具体是:

T1状态:

CPU向多路复用总线上发送地址信息指出要寻址的存储单元或外设端口地址。

T2状态:

CPU从总线上撤消地址,使总线的低16位置为高阻抗状态,为传输数据作

准备。

总线的高4位输出本总线周期状态信息。

这些状态信息用来表示中断允许状态、当前

正在使用的段寄存器等。

T3状态:

CPU在总线的高4位继续输出总线周期状态信号。

在总线的低16位出现由

CPU写出的数据,或者从存储器或I/O端口读入的数据。

T4状态:

总线周期结束。

在CPU的读/写总线周期中,数据在T3状态出现在数据总线上。

2-7.8086/8088读/写总线周期,微处理器是在(B)时刻采样READY信号,以便决

定是否插入Tw。

A.T2B.T3C.T3下降沿

D.T2上升沿

2-8.8086/8088系统中为什么要有地址锁存器?

需要锁存哪些信息?

答:

因8086/8088系统中地址线、数据线是复用的,所以要有地址锁存器锁存T1状态输出

的地址。

8086系统锁存20位地址及BHE信号,8088系统锁存20位地址。

2-9.8086/8088的最大模式系统配置与最小模式系统配置在结构上有何区别?

总线控

制器8288的作用是什么?

答:

最大模式系统配置在结构上与最小模式系统的主要区别是增加了一个总线控制器8288

和一个总线仲裁器8289。

总线控制器8288的作用是:

对来自8086/8088CPU的总线状态信号S2、S1、S0译

码,与输入控制信号AEN、CEN和IOB相互配合,产生总线命令信号和总线控制信号。

2-10.关于8086最大工作模式的特点描述正确的是(D)。

A.不需要总线控制器8288B.适用于单一处理机系统

C.由编程进行模式设定

D.M/IO引脚不可以直接引用

2-11.8086/8088有最小和最大模式两种工作模式,当(B)时为最小模式。

A.MN/MX=OB.MN/MX=lB.INTR=lD.HOLD="1"

 

 

2-12.8086最小工作模式和最大工作模式的主要差别是(D).

A.地址总线的位数不同

C.数据总线位数不同

B.I/O端口数不同

D.单处理器与多处理器的不同

2-13.PC机中地址总线的作用是(C)。

A.用于选择存储器单元

B.用于选择进行信息传输的设备

C.用于给存储器单元和I/O设备接口电路的选择地址

D.以上都不正确

2-14.设当前SS=C000H,SP=2000H,AX=2355H,BX=2122H,CX=8788H,则

当前栈顶的物理地址是多少?

若连续执行PUSHAX,PUSHBX,POPCX3条指令后,堆

栈容发生什么变化?

AX、BX、CX中的容是什么?

2-15.8086/8088的控制标志位有(C)个。

A.lB.2C.3D.4

2-16.编程人员不能直接读写的寄存器是(C)。

A.DIB.CXC.IPD.SP

2-17.设(AH)=03H,(AL)=82H,试指出将AL和AH中的容相加和相减后,标

志位CF、AF、OF、SF、IF和PF的状态。

答:

(AH)=00000011H

+(AL)=10000010H

10000101

CF=0、AF=0、OF=0、SF=1、IF不确定和PF=0

(AH)=00000011H

_(AL)=10000010H

10000001

CF=1、AF=0、OF=0、SF=1、IF不确定和PF=1

2-18.8086CPU中的标志寄存器FR中有哪些状态标志和控制标志?

这些标志位各有什

么含义?

见教材。

2-19.BHE信号的作用是什么?

简述8086系统中,访问存储器在读写一个字和字节的

过程中,BHE和A0的状态。

答:

高8位数据总线允许/状态复用信号。

总线周期的T1状态,8086在BHE/S7输出低电平,

表示高8位数据总线AD15~AD8上的数据有效。

8086系统中,BHE和AD0结合起来,指出当前传送的数据在总线上将以何种格式出现。

(见教材表2-4-1)

8088系统中,由于数据总线只有8位,不存在高8位与低8位的问题。

所以,该引脚

(第34号)被定义为双功能引脚。

在最大模式时,该引脚恒为高电平;在最小模式中,则

定义为SS0。

2-20.8086向偶地址存储单元0送一个字节数据时,须执行一个总线周期,在第一个T

状态中,ALE为

1

A0为

0

WR为1

 

 

2-21.8086系统中,为什么要对存储器进行分段管理?

其分段管理是如何实现的?

答:

8086/8088地址总线是20位的,CPU中的寄存器是16位的,20位地址无法用16位寄

存器表示,所以必须分段。

通常有代码段、数据段、堆栈段、辅助段。

段地址16位,每个段的大小最大可达64KB;

实际使用时可以根据需要来确定段大小。

2-22.已知某存储单元的段地址为4500H,偏移地址为4500H,该单元的物理地址是多

少?

答:

49500H

2-23.某指令对应当前段寄存器CS=FFFFH,指令指针寄存器IP=FF00H,此时,该指令

的物理地址为多少?

指向这一物理地址的CS值和IP值是唯一的吗?

试举例说明

答:

该指令的物理地址为:

CS+IP

FFFF0H+FF00H=10FEF0H

这一物理地址的CS值和IP值是唯一的吗:

不唯一

2-24.因为8086CPU的字数据既可以存放在存的偶地址单元,也可以安排在奇地址单

元,所以其堆栈指针SP(A)。

A.最好是指向偶地址单元

B.可以指向任何地址单元

C.只能指向偶地址单元

D.只能指向奇地址单元

 

 

第3章8086/8088的指令系统

 

习题

3-1.试举例说明8086/8088微处理器的各种寻址方式。

(略)

3-2.假定DS=1000H,SS=9000H,SI=100H,BX=20H,BP=300H,请指出下列指令的

源操作数是什么寻址方式?

若源操作数位于存储器中,其物理地址是多少?

(1)MOVCX,[1000H]

(3)MOVAX,[BX]

(5)MOVAL,[BP+5]

(2)MOVAX,100H

(4)MOVBL,CL

(6)MOVAL,[BP+SI+2]

答:

(1)中源操作数为直接寻址,其物理地址=DS*16+1000H=11000H;

(2)中源操作数为立即寻址;

(3)中源操作数为寄存器间接寻址,其物理地址=DS*16+(BX)=10020H;

(4)中源操作数为寄存器寻址;

(5)中源操作数为变址寻址,其物理地址=SS*16+(BP)+5=90305H;

(6)中源操作数为基址加变址寻址,物理地址=SS*16+(BP)+(SI)+2=90402H。

3-3.在8088/8086微机的存物理地址34780H处,存放有字节数据58H,已知

DS=3000H,试写指令序列将该字节数据送入AL寄存器。

要求分别采用三种不同的寻址方

式。

答:

(1)直接寻址:

MOVAL,[4780H]

(2)寄存器间接寻址:

MOVBX,4780H

MOVAL,[BX]

(3)变址寻址:

MOVSI,4782H

MOVAL,[SI-2]

3-4.判断下述8086/8088指令的写法是否正确:

(1)MOV[AX],BH

(3)MOV[SP],AX

(5)OUT10H,CL

(7)PUSHAL

(9)MOVES:

[SI],DI

答:

(1)MOV[AX],BH

(2)MOV[BP],AX

(3)MOV[SP],AX

 

(X)

(√)

(X)

(2)MOV[BP],AX

(4)MOV[DI],[SI]

(6)INCWORDPTR[SI]

(8)CMP36H,AL

(10)MOVBYTEPTR[BX],800

 

 

(4)MOV[DI],[SI]

(5)OUT10H,CL

 

(X)

(X)

(6)INCWORDPTR[SI](√)

(7)PUSHAL

(8)CMP36H,AL

(9)MOVES:

[SI],DI

(X)

(X)

 

(√)

(10)MOVBYTEPTR[BX],800(X)

3-5.设有关寄存器及存储单元的容如下:

DS=2000H,BX=0100H,AX=1200H,SI=0002H,[20102H]=33H,[20103]=44H,

[21200]=9BH,[21201H]=99H,[21202H]=0AAH,[21203H]=88H。

问:

下列各条指令单独执行后相关寄存器或存储单元的容为多少?

(1)MOV

(3)MOV

(5)MOV

AX,1800H

BX,[1200H]

[BX+SI],AL

(2)MOV

(4)MOV

(6)MOV

AX,BX

DX,[BX+1100H]

AX,[BX+SI+1100H]

答:

(1)

(2)

(3)

(4)

(5)

(6)

AX=1800H

AX=BX=0100H

BX=999BH

DX=999BH

[20102H]=AL=00H

AX=88AAH

3-6.已知SS=0FF00H,SP=0000H,试编写程序片段将两个16位数1122H和3344H先

后压入堆栈,并画出堆栈区和SP容变化的过程示意图(标出存储单元的地址)。

答:

MOVAX,1122H

PUSHAX

 

0FF00:

0FFFEH

0FF00:

0FFFFH

 

22H

11H

 

SP

 

MOVAX,3344H

PUSHAX

 

 

0FF00:

0FFFCH

0FF00:

0FFFDH

0FF00:

0FFFEH

0FF00:

0FFFFH

 

44H

33H

22H

11H

 

SP

 

3-7.设在数据段偏移地址为2000H单元开始的地方连续存放了0~15的平方值。

试写

出包含有XLAT指令的指令序列,用来查找0~15围的某个数N的平方值(设N的值存

放在CL寄存器中)。

答:

MOVBX,2000H

MOVAL,CL

XLAT

3-8.试用简单的几条指令完成对AL寄存器中的无符号数乘以12的操作。

要求只能用

移位、加法及MOV指令。

答:

MOVAH,0

MOVCL,2

SHLAX,CL

MOVBX,AX

SHLAX,1

ADDAX,BX

;AL左移两位,相当于乘4

;保存

;AL再左移一位,相当于原数乘8

;相当于原数乘12

3-9.已知程序段如下:

MOVAX,1234H

MOVCL,4

ROLAX,CL

DECAX

MOVCX,4

MULCX

问:

执行完每条指令后,AX=?

CF=?

SF=?

ZF=?

(设在执行第一条指令前CF=SF=ZF=0)。

答:

AX=8D00H

CF=0,SF及ZF不确定。

3-10.执行如下三条指令后:

MOVAH,0

MOVAL,7

ADDAL,5

问:

(1)若再执行一条非组合BCD码加法调整指令AAA后,AX的容为多少?

(2)若

题中的三条指令后紧跟的是一条组合BCD码加法调整指令DAA,则执行完DAA后AX的

容为多少?

答:

 

 

(1)AX=0102H

(2)AX=0012H

3-11.已知AX=14C6H,BX=80DCH,问执行下列程序段后,程序转向何处?

ADDAX,BX

JNCL2

SUBAX,BX

JNCL3

JMPL4

若初始AX=B568H,BX=54B7H,情况又如何?

答:

程序转向地址标号L2处。

若初始AX=B568H,BX=54B7H,程序转向地址标号L4处。

3-12.如下程序完成什么功能?

MOVAX,5000H

MOVDS,AX

MOVCX,100

MOVAX,0

MOVSI,AX

START:

ADDAX,[SI+1000H]

ADDSI,2

LOOPSTART

MOV[200H],AX

答:

程序完成存5000H:

1000H开始的连续100个字数据的求和,并将和数存于

5000H:

200H处。

3-13、试写一程序片段,将当前数据段偏移地址为2000H开始的100个字节单元容

与偏移地址为3000H开始的100个字节单元容相交换,即:

偏移地址2000H对应单元

容与偏移地址3000H对应单元容交换,偏移地址2001H对应单元容与偏移地址3001H

对应单元容交换,依此类推。

答:

MOVSI,2000H

MOVDI,3000H

MOVCX,100

REPT0:

MOVAL,[SI]

MOVBL,[DI]

MOV[DI],AL

MOV[SI],BL

INCSI

INCDI

LOOPREPT0

3-14.在数据段中偏移地址分别为1000H及2000H开始的存储区有两个10字节的字

 

 

符串,试编写一段程序来比较这两个字符串。

如果这两个字符串不同,则程序转至

8000H:

1000H处,否则顺序执行。

答:

MOVSI,1000H

MOVDI,2000H

MOVCX,10

CLD

;装入源串偏移地址

;装入目的串偏移地址

;装入字符串长度

;方向标志复位

REPECMPSB

JCXZCONTI

JMP8000H:

1000H

CONTI:

NOP

3-15.利用串操作指令将数据段中偏移地址1000H开始处的100个字节移动到数据段

偏移地址为1050H开始的地方。

答:

MOVCX,100

MOVSI,1000H+99

MOVDI,1050H+99

STD

REPMOVSB

;地址减量方式传送

;数据块传送(串操作)

 

 

第4章汇编语言程序设计

 

习题

4-1.如下定义:

VAR1DB4

VAR2DB10

CNST1EQU12

试指出下列指令的错误原因:

(1)MOVCNST1,CX

(3)CMPVAR1,VAR2

(2)MOVVAR1,AX

(4)CNST1EQU24

答:

(1)目的操作数不能是立即数;

(2)VAR1单元定义为字节类型,而AX为字;

(3)8086/8088中两个存单元不能直接比较;

(4)同一符号名不允许用EQU重复定义。

4-2.某人定义了如下数据段:

DATASEGMENTAT1000H

ORG100H

VAL1DB11H

VAL2DW22H,33H

VAL3DB5DUP(44H)

DATAENDS

试指明该数据段中偏移地址从100H到109H的各存贮单元的容。

答:

100H:

11H

101H:

22H

102H:

00H

103H:

33H

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1