文档库 最新最全的文档下载
当前位置:文档库 › 微型计算机原理及应用第三版课后答案

微型计算机原理及应用第三版课后答案

微型计算机原理及应用第三版课后答案【篇一:《微型计算机原理及应用》课后习题答案】

=txt>第一章

1.1 解释题

(1) 微处理器

【解答】由大规模集成电路芯片构成的中央处理器(cpu),叫做微处理器。

(2) 微型计算机

【解答】以微处理器为基础,配以内存储器、输入输出接口电路、总线以及相应的辅助电路而构成的计算机裸机,叫做微型计算机。

(3) 微型计算机系统

【解答】微型计算机系统由硬件系统和软件系统组成。即由微型计算机、配以相应的外部设备(如打印机、显示器、键盘、磁盘机等),再配以足够的软件而构成的系统。

(4) 单板机

【解答】将微处理器、ram、rom以及i/o接口电路,再配上相应的外设(如小键盘、led显示器等)和固化在rom中的监控程序等,安装在一块印刷电路板上构成的微型计算机系统称为单板机。

(5) 运算器

【解答】运算器是直接完成各种算术运算、逻辑运算的部件,主要由alu(arithmetic and logic unit,算术逻辑部件)、通用寄存器、标志寄存器等组成。

(6) 地址总线

【解答】地址总线是cpu对内存或外设进行寻址时,传送内存及外设端口地址的一组信号线。地址总线的条数多少决定了cpu的寻址能力。

(7) 数据总线

【解答】数据总线是cpu与内存或外设进行信息交换时,所用的一组数据信号线。它决定了cpu一次并行传送二进制信息的位数,反映出cpu的“字长”这个重要性能指标。

(8) 控制总线

【解答】控制总线是在cpu与外部部件之间传送控制信息(如读/写命令、中断请求命令等)的一组信号线。

1-2 单片机应包括哪些基本部件?其主要应用于哪些领域?

【解答】一般单片机芯片中包括微处理器、ram、rom、i/o接口电路、定时器/计数器,有的还包括a/d、d/a转换器等。

其主要应用于智能化仪器仪表及工业控制领域。

1-3 按图1-11和图1-12,写出取第二条指令操作码和执行第二条指令的过程。

【解答】

1) ip的值(002h)送入地址寄存器ar;

2) ip的内容自动加1,变为003h;

3) ar将地址码通过地址总线送到存储器的地址译码器,经译码后选中002h单元;

4) 微处理器给出读命令;

5) 所选中的002h单元内容04h送上数据总线db;

6) 数据总线db上的数据04h送到数据寄存器dr;

7) 因是取指操作,取出的是指令操作码04h,即由dr送入指令寄存器ir;

8) ir中的操作码经指令译码器id译码后,通过pla发出执行该指令的有关控制命令。

指令操作码04h 经译码后cpu知道这是一条把al内容和立即数

12h相加的指令。立即数12h在指令的第二字节中,则执行第二条指令就是从内存中取出指令的第二字节送alu的i2端、把al的内容送到i1端,并在alu中做加法运算,然后把运算结果通过alu的o 端再送到al中。

1) ip的值(003h)送入地址寄存器ar;

2) ip的内容自动加1,变为004h;

3) ar将地址码通过地址总线送到存储器的地址译码器,经译码后选中003h单元;

基础知识

所选中的003h单元内容12h送上数据总线db;

db上的数据12h送到数据寄存器dr;

由指令操作码的译码可知,指令要求把第二字节的数据送入alu进行运算,则dr上的数据12h通过内部总线送到alu的i2端;

8) 将al 中的内容送到alu的i1端;

9) 在alu中作加法、然后将运算结果通过内部总线送回到al中。

到此第二条指令执行完毕。

1-4 计算题

【解答】

(1) (17.562) 102

(2) (1101011011.10101) 210

(3) (1000) 1016

(4) (10000) 1016

(5) (3f9) 1610

(6) (1101011011.10101) 216

(7) (5d7.5c)16 2

(8) (497.72) 10bcd

则该数的十进制表示为 +0.82421875 。

-23+127-150 (10)按上题浮点格式,所能表示的最大正数为(1-2)*2,最小负数为-2,最小绝对值为

-150 2。

(11)十进制+123的补码为01111011 ,十进制-123的补码为10000101。

∵[+123]原 =01111011

[+123]反 =01111011

∴[+123]补 =01111011

∵[-123]原 =11111011

[-123]反 =10000100

∴[-123]补 =10000101

(12)十进制数+0.99609375的补码为: [+0.99609375]补

=0.11111111

十进制数-0.99609375的补码为: [-0.99609375]补=1.00000001

(13) 已知x=0.110001,y=-0.001001, 则∵[x]补=0.110001

[y]补=1.110111

∴[x+y]补=[x]补+[y]补=0.110001+1.110111=0.101000

(14) 已知x=0.101100,y=-0.100111, 则∵ [x]补=0.101100

[y]补=1.011001

[-y]补=0.100111

∴ [x-y]补= [x]补+[-y]补=0.101100+0.100111=1.010011

(15) 已知x=0.1001, y=0.1101, 则

∵ [x]补=0.1001

[y]补=0.1101

∴ [x+y]补=[x]补+[y]补=0.1001+0.1101=1.0110 (有溢出)

(16) 已知x=-1110,y=-1100,则[x]补=1.0010

[y]补=1.0100

[x+y]补=[x]补+[y]补

5)

6)

7)

第二章微处理器结构

2-1 解释题

(1) ad0~ad15双重总线

【解答】双重总线就是采用分时的办法复用总线。8086cpu在每一个总线周期的t1时, ad0~ad15用作地址总线传输地址信号,而在总线周期的其它t状态为数据总线,用作传输数据。

(2) 逻辑地址

【解答】在程序中所涉及的地址叫做逻辑地址。逻辑地址由两部分组成,(3) 物理地址

【解答】信息在存储器中实际存放的地址叫做物理地址。物理地址=段基址*16+段内偏移地址。

(4) 溢出

【解答】带符号数的运算结果超出计算机所能表示的数值范围称为“溢出”。

(5) 指令

【解答】控制计算机完成某一个基本操作的命令(如:传送、加、移位、输出、输入等)叫做指令。

(6) 等待周期tw

【解答】当被选中进行读写的存储器或i/o设备,无法在总线周期规定的t状态内完成数据的读写操作时,就由该存储器或外设向cpu 的ready引脚发一个低电平信号,请求延长总线周期,等待它们的读写操作完成。

8086cpu受到该请求后,就在t3和t4之间插入一个等待周期 tw (tw也以时钟周期为单位),加入tw的个数取决于ready的持续时间。在tw期间,总线上的状态一直保持不变。

(7) 空闲周期ti

【解答】在两个总线周期之间,当总线上无数据传输操作时,则系统总线处于空闲状态,此时即执行空闲周期ti,ti也以时钟周期t为单位,至于到底插入多少个ti与8086cpu执行的指令有关。

(8) 指令的寻址方式

【解答】所谓指令的寻址方式是指在指令中操作数的表示方式。

2-2 扼要说明eu和biu的功能

【解答】eu从biu的指令队列中获得指令,然后执行该指令,完成

指令所规定的操作,eu不与外部总线相联系。

biu同外部总线连接为eu完成所有的总线操作,并在∑地址加法器

中形成20位内存物理地址。

2-3 写出寄存器ax、bx、cx、dx、si、di的隐含用法

【解答】

ax:乘除法指令中用作累加器、i/o指令中作为数据寄存器。al还在bcd指令和xlat指令中作累加器。

bx;间接寻址时,作为地址寄存器和基址寄存器。在xlat指令中用

作基址寄存器。

cx:串操作指令和loop指令时用作循环次数计数器。cl在循环和

移位指令中用作循环和移位次数计数器。

dx:字乘、字除指令中用作高字积、被除数高字辅助寄存器。i/o指令间接寻址时作端口地址寄存器。

si:间接寻址时,作为地址寄存器和变址寄存器、串操作时的源变

址寄存器。

di:间接寻址时,作为地址寄存器和变址寄存器、串操作时的目的

变址寄存器。

2-4写出8086cpu的标志寄存器中三个控制位的功能

【解答】

df:方向标志。决定在进行串操作时,每执行一条串操作指令,

df=0时对源、目的操作数地址的修正是递增、df=1时是递减。

if:中断允许标志。表示目前系统是否允许响应外部的可屏蔽中断请求。if=1时允许、if=0时不允许。

tf:陷阱标志。当tf=1时,是“单步工作方式”,常用于程序的调试。微处理器每执行完一条指令便产生一个内部中断,转去执行一个中

断服务程序,可以借助中断服务程序来检查每条指令的执行情况。

tf=0是“连续工作方式”,程序连续执行。

2-5 说明段寄存器的作用

【解答】8086cpu内部数据通道和内部寄存器均为16位,而

8086cpu的地址线有20条,可以寻址1mb空间。为了寻址1mb地址,cpu引入了“分段”管理的概念,把可直接寻址的1mb内存空间

分成了策划能够作“段”的逻辑区域,每个段的最大物理长度为64k,段寄存器就是用来存放段的16位起始地址的。8086 cpu有4个段

寄存器cs、ds、es、ss,分别用来存储代码段、数据段、附加数据段、堆栈段的起始地址。

2-6 执行如下指令后,标志寄存器中各状态位之值

mov ax,32c5h

add ax,546ah

【解答】

根据运算结果分析,各状态位之值: cf=0 pf=0 af=1 zf=0 sf=1

of=1

(2) mov ax,0e453h

add ax,0c572h

根据运算结果分析,各状态位之值: cf=1 pf=1 af=0 zf=0 sf=1

of=0

【解答】8086cpu工作于最小模式时,用于构成小型的单处理机系统,而工作于最大模式时用于构成多处理机和协处理机系统。这两

种模式的主要区别是最大模式系统的控制总线增加了一片专用的总

线控制器芯片8288。 (1)

2-8

说明8086系统中内存储器的物理地址的形成过程。

【解答】8086cpu存储器物理单元的20位物理地址是通过将16位

的“段基址”左移4位和16位的“段内偏移地址”在 ? 20位地址加法

器中相加得到的。“段基址”存放在段寄存器cs、ss、ds、es中,

而“段内偏移地址”由sp、bp、si、di、ip、bx以及上述寄存器的组

合而形成。

2-9有一双字87654321h的地址为30101h,画出其在字节编址的

内存中的存放情况。

【解答】

2-10 说明8086的指令周期、总线周期和时钟周期的区别和关系。【解答】执行一条指令所需要的时间称为指令周期,不同的指令周

期是不等长的。在取指令过程中以及执行指令时取操作数或存运行

结果,都要通过总线,因此一个总线周期中可能由一个或几个总线

周期组成。

cpu从存储器或输入输出端口存取一个字节或字的时间叫做总线周期。8086cpu的总线周期至少由4个时钟周期组成,分别以t1、t2、t3、t4表示。

时钟周期是cpu的时间基准,由计算机的主频决定。例如8086

cpu的主频为5mhz,则一个时钟周期为1/(5*106)=0.2*10-

6s=0.2?s=200ns

2-11 根据8086 i/o的读写时序图,回答下列问题:

(1) 地址信号在哪段时间内有效?

【解答】在读写总线周期的t1时间内有效。

(2) 读与写操作的区别?

【解答】读总线周期中,数据在进入t3状态时才出现在复用总线上,而在写周期中数据在t2状态时就出现在复用总线上。

(3) i/o读写时序同存储器读写时序的区别?

读写操作时,m/io为高电平;而进行i/o端口读写操作时m/io为低

电平。

(4) 什么情况下需要插入等待周期tw?

【解答】当内存或i/o端口存取速度慢,无法在cpu的总线周期内

完成相应操作时,需要插入一个或几个等待周期tw ,以延长相应总

线周期。

2-12 扼要说明80286同8086的主要区别。

【解答】80286是一种高性能的16位微处理器,片内集成有存储管理和保护机构,能用四层特权支持操作系统和任务的分离,能可靠

地支持多用户和多任务系统。它的实地址方式兼容了8086的全部功能,同时它增加了保护虚地址方式。80286有24条地址线,在实地

址方式下只使用20条地址线,有1mb的寻址能力;在保护虚地址

方式下,使用24条地址线,有16mb寻址能力,它能将每个任务的230字节(1gb)的虚地址映射到224字节的物理地址中去。

80286的内部由地址部件au、指令部件iu、执行部件eu和总线部

件biu四大部分组成,和8086的eu与biu组成相比,四个部件的

并行操作,进一步提高了吞吐率、加快了处理速度。

2-13 扼要说明80486同80386的主要区别。

【解答】80486是继80386之后新的32位微处理器,同80386相比,在相同的工作频率下,其处理速度提高了2~4倍。80486采用

了risc(精简指令系统计算机)技术,降低了执行每条指令所需要

的时钟数;80486采用了与80386不同的突发式总线技术,有效地

解决了微处理器同内存之间的数据交换问题;80486内部集成了fpu (浮点部件)和cache(超高速缓冲存储器),cpu和fpu、cpu和

cache之间都采用高速总线进行数据传送,使其处理速度得到极大的提高。

80486的在体系结构上除沿用80386的总线接口部件biu、指令预取部件ipu、指令译码部件idu、执行部件eu、存储器管理部件su 和pu、控制部件外,为提高性能又增加了高速缓存部件cache、高性能浮点处理部件fpu。

2-14扼要说明pentium同pentium pro的主要区别。(略)

2-15扼要说明pentium mmx的特点。(略)

2-16扼要说明pentium Ⅱ同 pentium Ⅲ的特点。(略)

第三章 8086微处理器的指令系统

3-1 指出下列各指令中源操作数和目的操作数的寻址方式,并说明操作数的类型(注:字节数据或字数据)

(1)mov si,1000h

(2)mov bl,[1000h]

(3)mov [bx+0100h],cx

(4)mov byte ptr [bp] [si],100

(5)mov ax,[bx+di+0004h]

【解答】源操作数目的操作数

(1) 立即寻址

(2) 直接寻址

(3) 寄存器寻址

(4) 立即寻址

(5) 基址加变址寻址

3-2 指出下列各非法指令的错误原因寄存器寻址寄存器寻址基址寻址基址加变址寻址寄存器寻址操作数类型字类型字节类型字类型字节类型字类型

(1) mov al,bx

【解答】源与目的操作数类型不一致。

(2) mov cl,200h

【解答】源操作数太大了,cl是8位寄存器,能存储的最大数只能到ffh。

(3) mov cs,ax

【解答】不允许用传送指令给cs赋值。

(4) mov ds,3000h

【篇二:微机原理(第三版)课后练习答案】

、选择题

1.计算机硬件中最核心的部件是( )。 c

a.运算器

b.主存储器

c.cpu

d.输入/输出设备

2.微机的性能主要取决于( )。 a (b——计算机数据处理能力的一个

重要指标)

a.cpu

b.主存储器

c.硬盘

d.显示器

3.计算机中带符号数的表示通常采用( )。 c

a.原码

b.反码

c.补码

d.bcd码

4.采用补码表示的8位二进制数真值范围是( )。 c

a.-127~+127

b.-1 27~+128

c.-128~+127

d.-128~+128

5.大写字母“b”的ascii码是( )。 b

a.41h

b.42h

c.61h

d.62h

6.某数在计算机中用压缩bcd码表示为10010011,其真值为( )。 c

a.10010011b

b.93h

c.93

d.147

二、填空题

1.微处理器是指_cpu_;微型计算机以_ cpu _为核心,配置_内存

和i/o接口_构成;其特点是_(1)功能强 (2)可靠性高 (3)价格低 (4)适

应性强 (5)体积小 (6)维护方便_。p8 p5

2.主存容量是指_ram和rom总和_;它是衡量微型计算机_计算机

数据处理_能力的一个重要指标;构成主存的器件通常采用_dram和prom半导体器件_。p5 p9

3.系统总线是_cpu与其他部件之间传送数据、地址和控制信息_的

公共通道;根据传送内容的不同可分成_数据、地址、控制_3种总线。p9

4.计算机中的数据可分为_数值型和非数值型_两类,前者的作用是_

表示数值大小,进行算术运算等处理操作_;后者的作用是_表示字

符编码,在计算机中描述某种特定的信息_。p12

5.机器数是指_数及其符号在机器中加以表示的数值化_;机器数的

表示应考虑_机器数的范围、机器数的符号、机器数中小数点位置_3

个因素。p15 p16

6.ascii码可以表示_128_种字符,其中起控制作用的称为_功能码_;供书写程序和描述命令使用的称为_信息码_。p18 p19

三、判断题

1.计算机中带符号数采用补码表示的目的是为了简化机器数的运算。( )√

3.计算机地址总线的宽度决定了内存容量的大小。( )√

2 思考与练习题

一、选择题

1.在eu中起数据加工与处理作用的功能部件是( )。

a.alu

b.数据暂存器

c.数据寄存器

d.eu控制电路

2.以下不属于biu中的功能部件是( )。

a.地址加法器

b.地址寄存器

c.段寄存器

d.指令队列缓冲器 a b

3.堆栈操作中用于指示栈顶地址的寄存器是( )。 b

a.ss

b.sp

c.bp

d.cs

4.指令指针寄存器(ip)中存放的内容是( )。 b

a.指令

b.指令地址

c.操作数

d.操作数地址

5.8086系统可访问的内存空间范围是( )。 b

a.0000h~ffffh

b.00000h~fffffh

1620 c.0~2 d.0~2

6.8086的i/o地址空间采用16位数寻址时,可访问的端门数容量为( )。 c

a.16kb

b.32kb

c.64kb

d.1mb

7.8086最大和最小工作方式的主要差别是( )。 d

a.数据总线的位数不同

b.地址总线的位数不同

c.i/o端口数的不同

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

二、填空题

1.8086的内部结构由_eu_和_biu_组成,前者功能是_执行指令_,后者功能是_总线操作_。p24 p26

2.8086取指令时,会选取_cs_作为段基值,再加上由_ip_提供的偏移地址形成20位物理地址。

3.8086有两种外部中断请求线,它们分别是_intr_和_nmi_。p32

4.8086的标志寄存器共有_9_个标志位,分为_6_个_状态_标志位和_3_个_控制_标志位。p28

5.8086为访问1mb内存空间,将存储器进行_分段_管理;其_物理_地址是唯一的;偏移地址是指_相对段基地址的偏移量_;逻辑地址常用于_程序中_。p29 p20 p34 p35

6.逻辑地址为1000h:0230h时,其物理地址是_10230h_,段地址是_1000h_,偏移量是_0230h_。

7.时钟周期是指_cpu基本时间计量单位_,总线周期是指_一次总线操作时间_,总线操作是指_cpu经外部总线对存储器或i/o端口进行一次信息输入和输出的过程_。p37

8.8086工作在最大方式时cpu引脚mn/-mx应接_地_;最大和最小工作方式的应用场合分别是_多处理器和单处理器系统_。p38 p39

三、判断题

2.从内存单元偶地址开始存放的数据称为规则字。( )√

6.8086系统复位后重新启动时从内存地址ffff0h处开始执行。( )√

四、简答题

1.8086微处理器中的指令队列起什么作用(eu从指令队列取指令的

缓冲作用),其长度是多少字节(6个字节)?p26

2.什么是逻辑地址(无符号32位二进制数),它由哪两部分组成(段地

址和偏移地址)? 8086的物理地址是如何形成的(物理地址=段地址

*10h+偏移地址)?p35

3.8086微机系统中存储器为什么要分段(8086系统内的地址寄存器

均是16位,只能寻址64kb;将1mb存储器分成逻辑段,每段不超

过64kb空间,以便cpu操作。),各逻辑段之间的关系如何(可重叠、交叉、紧密连接和分离)?p34

4.i/o端口有哪两种编址方式(统一编址和独立编址),8086的最大

i/o寻址空间是多少(64kb)?p36

5.8086的最大工作模式(8086、8087和8089通过总线控制器8288

产生对总线的控制信号)和最小工作方式(8086直接产生总线控制信号)的主要区别是什么?他们分别应用在何种场合(多处理器和单处理

器系统)?p39

6.简述实地址方式(由段地址和偏移地址计算产生物理地址,其物理

地址可以超过20位)和虚拟8086方式(由段地址和偏移地址计算产生的有效物理地址为20位)的区别。p41

7.简述pentium微处理器的主要特性。p44

五、分析题

1.有一个由10个字组成的数据区,其起始地址为1200h:0120h。试写出该数据区的首末存储单元的实际地址(12120h~12120h+10*2-

1=12133h)。

2.若一个程序段开始执行之前,(cs)=33aoh,(ip)=0130h,试问该

程序段启动执行指令的实际地址是什么(33a00h+0130h=33b30h)?

3.有两个16位的字31dah和5e7fh,它们在8086系统存储器中的

地址分别为00130h和00134h,试画出它们的存储示意图。

地址存储空间

00130h

00131h

00134h

00135h

4.将字符串“good!”的ascii码依次存人从01250h开始的字节单元中,画出它们存放的内存单元示意图。

地址

01250h

01251h

01252h

01253h

01254h

3 思考与练习题

一、选择题

1.寄存器间接寻址方式中,要寻找的操作数位于( )中。

a.通用寄存器

b.内存单元

c.段寄存器

d.堆栈

2.下列指令中正确的是( )。

a.mov al,bx

b.mov cs,ax

c.mov al,cl

d.mov [bx],[si]

3.下列指令中错误的是( )。 b c c

a.mov ax,1234h

b.inc bx

c.srl ax,2

d.push dx

4.设(sp)=1010h,执行pop ax后,sp中的内容为( )。 b

a.1011h

b.1012h

c.1ooeh

d.100fh

5.给定(al)=80h,(cl)=02h,指令shr al,cl执行后的结果是( )。 b

a.(al)=40h

b.(al)=20h

c.(al)=c0h

d.(al)=e0h

6.将ax清零并使cf位清零,下面指令错误的是( )。 a

a.sub ax,bx

b.xor ax,ax

c.mov ax,0(不影响fr)

d.and ax,0oooh

二、填空题

1.计算机指令通常由_操作码字段_和_操作数字段_两部分组成;指

令对数据操作时.按照数据的存放位置可分为_立即数、寄存器操作数、存储器操作数_。

2.寻址的含义是指_寻找操作数的过程_;8086指令系统的寻址方式

按照大类可分为_与操作数有关的寻址方式、与i/o端口有关的寻址

方式_;其中寻址速度最快的是_立即数寻址_。p54~p57

3.指令mov ax,es:[bx+o1ooh]中,源操作数位于_物理地址为

es*10h+bx+0100h的存储单元_;读取的是_附加数据es_段的存储

单元内容。

4.堆栈是一个特殊的_存储器区域_,其操作是以_2字节单元_为单

位按照__先进后出_原则来处理;采用_sp_指向栈顶地址,入栈时地址变化为_sp=(sp)-2_。p57

5.i/o端口的寻址有_直接端口寻址和间接端口寻址_两种方式;采用

8位数端口地址(直接端口寻址)时,可访问的端口地址为_0~255_;采用16位数端口地址(间接端口寻址)时,可访问的端口地址为

_0~65535_。p57~ p58

三、分析计算题

1、析如下指令的正误,对错误指令说明出错误原因并加以收正:

(1)mov [1200],23h (2)mov 1020h,cx

(3)mov [1000h],[2000h](4)mov ip,o00h

(5)push al(6)out cx,al

(7)in al,[80h] (8)mov cl,3300h

(1)mov [1200],23h;未指明数据类型mov byte ptr[1200],23h

(2)mov 1020h,cx ;立即数不能作为目标操作数 mov [1020h],cx

(3)mov [1000h],[2000h] ;两操作数不能均是内存单元mov byte ptr [1000h],2000h

(4)mov ip,000h;ip不能在mov指令中出现jmp 000h

(5)push al ;操作数必须是16位push ax

(6)out cx,al ;cx不能作为端口地址的间接访问寄存器out dx,al

(7)in al,[80h];直接端口地址写法错误in al,80h

(8)mov cl,3300h ;两操作数的数据类型不一致 mov cx,3300h

2.试分析如下程序段执行完后,bx的内容:817fh

mov bx,1030h ;(bx)=1030h

mov cl,3 ;(cl)=3

shl bx,cl ;(bx)=8180h

dec bx ;(bx)=817fh

4 思考与练习题

一、选择题

1.汇编语言程序中可执行的指令位于( )中。 c

a.数据段

b.堆栈段

c.代码段

d.附加数据段

2.以下内容不是标号和变量属性的是( )。 b

a.段属性

b.地址属性

c.偏移属性

d.类型属性

3.dos功能调用中采用屏幕显示单个字符,其值保存在( )寄存器。 c

a.al

b.ah

c.dl

d.dh

4.dos功能调用中,从键盘读取一个字符并回显的是( )。 a

a.01h

b.02h

c.09h

d.0ah

5.循环程序设计中,要考虑的核心问题是( )。 d

a.循环的控制

b.选择循环结构

c.设置循环参数初始值

d.修改循环控

制参数

6.对于宏指令和子程序,下列说法不正确的是( )。 d

a.宏指令不能简化目标程序

b.子程序可以简化目标程序,但执行时间长

c.子程序在执行过程中由cpu处理

d.宏指令在执行时要保护和恢复现场

二、填空题

1.汇编语言是一种面向_cpu指令系统_的程序设计语言,采用_指令

助记符_表示操作码和操作数,用_符号地址_表示操作数地址。p82

2.汇编语言的语句可由_名字、操作符、操作数、注释_四部分组成;其中_操作符_是必须具备的。p83

3.机器指令是指_发送给cpu的命令_,在运行时由_cpu_执行;伪

指令是_发送给汇编程序的命令_,在汇编过程中由_汇编程序_进行

处理;宏指令是指_代表一段源程序_,通常用于_经常用到的一个程

序段_场合。p87、p107

4.子程序的基本结构包括_子程序说明、现场保护及恢复、子程序体、子程序返回_等几个部分;子程序的参数传递有_寄存器、堆栈、存

储器_等方法。p104、p105

5.dos功能调用可完成对_完成对文件、设备、内存_的管理;bios

的主要功能是_外设的控制;如系统加电自检、引导装入及对键盘、

磁盘、显示器、打印机、异步串行通信口等的控制_。

6.给定如下程序段,在每条指令的右边写出指令的含义和操作功能,指出该程序段完成的功能及运行结果:

mov ax,0 ;ax=0

mov bx,1 ;bx=1

mov cx,5 ;cx=5

lp: add ax,bx;ax=ax+bx

add bx,2 ;bx=bx+2

loop lp;cx=cx-1;若cx≠0,转lp

hlt ;停机

(1)该程序段完成的功能是_?2n?1_。

05

(2)程序运行后:(ax)=_36_;(bx)= _11_;(cx)= _0_。

【篇三:最新微机原理与应用习题参考答案(郑学坚)】

列二进制数转换成十进制数和十六进制数

① 11010111 ② 10101001

参考答案:①215d,d7h ②169d, a9h

2.设计算机字长为8位,求机器数e3h分别为有符号、无符号数时

对应的值。参考答案:若e3为有符号数,为-29d;若e3为无符号数,为227d。

3.写出下列字符所对应的ascii 码

(1)‘0’ (2)‘a’ (3)‘a’

参考答案:(1)30h(2)41h(3)61h

1.1 为什么需要半加器和全加器?它们之间的主要区别是什么?

参考答案:在做两个二进制数的加法时,右边第一位(最低有效位)相加时不用考虑进位位,只要用半加器就可实现相加;除此位外,

其它各位相加都要带进位位相加,要用全加器电路。全加器的输入

端有进位输入,而半加器没有。

1.2 用补码法写出下列减法的步骤:

(1)0000 1111b – 0000 1010b = 0000 1111b + 1111 0110b = 1(舍去) 0000 0101b = 5 d

(2)0000 1100b – 0000 0011b = 0000 1100b + 1111 1101b = 1(舍去) 0000 1001b = 9 d

第2章作业

2.1 alu是什么部件?它能完成什么运算功能?试画出其符号。

参考答案:alu是算术逻辑部件,它能完成二进制的加减乘除四则运算,也能进行布尔代数的逻辑运算。

2.4 累加器有何用处?画出其符号。

参考答案:累加器作为alu每次运行结果的暂时存储器,在cpu中

起着存放中间结果的作用。除了能装入及输出数据外,还能使存储

其中的数据左移或右移。

2.5 三态输出电路有何意义?其符号如何画?

参考答案:三态输出电路能使输出电路与总线脱离,使总线结构具

有公共通路的作用。

2.6 何谓l门及e门?它们在总结结构中有何用处?

参考答案:l门即load控制端,是用以使寄存器接受数据输入的控

制门,又称装入门。e门即enable控制端,是三态输出门,用以使

寄存器中的数据输出至总线,又称三态输出门。l门和e门的运用可

以保证数据在共用总线中有序传输互不干扰。

2.8 rom和ram各有何特点和用处?

参考答案:rom为只能读出的存储器,可用以存放固定的程序和数据。由于半导体存储器技术的发展,目前出现了诸如flash rom的

存储器,它可读可写,并且掉电后写入的信息不丢失。rom通常用

于固化生产厂家或开发者的程序或数据,用于启动计算机或控制计

算机的工作。ram为可写入又可读出的存储器,可用以随时写入、

改写或读出数据,也可用以写入随时有可能改变的用户程序。ram

通常用于存储各种动态的输入输出数据、中间结果以及与外部存储

器交换的数据或程序。

2.10 除地线公用处,5根地址线和11根地址线各可选多少个地址?参考答案:5根地址线可选25=32个地址;11根地址线可选

211=2048个地址;

2.11 译码器有何作用?

参考答案:通常有地址译码器和指令译码器两种说法,功能基本类似。地址译码器将地址线翻译成存储单元的地址;指令译码器将指

令代码翻译成控制信号。

第3章作业3.2程序计数器pc的内容是什么意义?参考答案:程序计数器pc的内容是下一条指令所在的存储单元的地址。

3.5环形计数器有何用处?什么叫环形字?

参考答案:环形计数器能产生计算机运行的机器节拍,用于控制多

条电路,使它们依次轮流为高电位,作为顺序控制信号,即产生按

时钟周期来安排每条指令的取指及执行的顺序,从而形成例行程序。如将环形计数器的输出看作是一个字t,则t=t5t4t3t2t1t0就是一个

6位的环形字。

3.6什么叫例行程序?什么叫机器周期、取指周期和执行周期?本章简化式计算机的机器周期包括几个时钟周期(机器节拍)?机器周

期是否一定是固定不变的?

参考答案:例行程序是由控制部件内部的结构确定了的各条指令的

执行步骤。机器周期是一条指令从取指到执行完了所需的时钟周期数。取指周期为从pc开始,prom中的指令进入ir到pc+1为止的

时钟周期数。执行周期为从指令进入控制器执行起至执行完毕的时

钟周期数。本章模型机的机器周期包括6个时钟周期。机器周期在

本章举例中是固定,但对不同的计算机而言,那就不一定是固定的了。

3.7控制部件包括哪些主要环节?各有何用处?

参考答案:包括下列环节:

(1)指令译码器:将来自prom的二进制指令的最高四位译成控

制动作信号送入控制矩

阵。

(2)环形计数器:产生环形字以指挥例行程序的运行顺序。

(3)控制矩阵:将来自环形计数器的时钟节拍及指令译码器的控

制动作信号进行分析而产

生控制字,使整个计算机协调一致地动作。

(4)其它控制电路:包括时钟脉冲发生器、运行/停车触发器、启

动/清除按钮等。

第4章作业4.1 8086cpu与8088cpu有哪些相同之处?又有哪些区别?参考答案:8086cpu与8088cpu内部结构基本相同:内部数据

总线都是16位的,都采用16字进行操作及存储器寻址,两者的程

序代码完全兼容,程序的编制和执行也完全相同。不同之处:8088

的指令队列为4个字节,8086的指令队列为6个字节;8086的外

部数据总线是16位的,而8088的外部数据总线是8位的,因此8088是准16位的cpu,在处理一个16位数据字的外部访问操作时,8088需要两步操作而8086只需要一步,因此对于相同的程序,

8088要比8086有较多的外部存取操作,相应地8088执行得较慢。 4.2 8086cpu从功能上分为几部分?各部分由什么组成?各部分的

功能是什么?

参考答案:8086从功能上分为两大部分:执行部件(eu)和总线接口部件(biu)。执行部件eu由以下4部分组成:

(1)4个通用寄存器:ax,bx,cx,dx;

(2)4个专用寄存器:基址指示器bp,堆栈指示器sp,源变址寄

存器si,目的变址寄存器di;

(3)标志寄存器fr;

(4)算术逻辑运算部件alu。

eu的功能:负责执行所有的指令,向总线接口部件biu提供指令执

行的结果数据和地址,并对通用寄存器和标志寄存器进行管理。

总线接口部件biu由以下部件组成:

(1)4个段寄存器:代码段寄存器cs,数据段寄存器ds,附加段

寄存器es,堆栈段寄存器ss;

(2)指令指示器ip;

(3)地址加法器;

(4)指令队列。

biu的功能:执行外部总线周期,负责存储器与i/o端口的访问,即

负责cpu与存储器及i/o外设之间的信息交换。

4.3 8086cpu由哪些寄存器组成?各有什么用途?标志寄存器和各

标志位在什么情况下置位?参考答案:共有 14 个寄存器,通用寄

存器ax, bx , cx, dx , sp , bp ,si ,di. ax , bx ,cx ,,数据寄存器,段

寄存器,控制寄存器,d x 为数据寄存器,用来保存运算中的中间结果

和有效地址.//ax 用作累计器.//bx 用作基址寄存器,//cx 用作计数器

//,dx 用作数据寄存器.//sp; 堆栈指针寄存器;装栈顶指针偏移量//.bp;

基址指针寄存器;装栈段中一个数据区的基址偏移量//.si;源变址寄存器,装源操作数地址的偏移量//.di; 目的变址寄存器,装目的操作数地

址偏移量(.2)段寄存器 4 个;cs;代码段寄存器,装代码段的起始地址.//ds;数据段寄存器,装数据段的起始地址://ss;堆栈段寄存器,装堆

栈段的起始地址 //es;附加段寄存器,装附加段的起始地址(3)控制

寄存器 2 个;ip,fr. ip;指令指针寄存器;始终存放当前指令的下一条的

起始存储单元的偏移地址//.fr;状态标志寄存器用来存放运算结果和

特征.//16 位寄存器,用 39 位.标志位分为两大类;一类是状态标志,用

来表示算术, 逻辑运算的结果特征 . (cf,pf,af,zf,sf,of)一类是

控制标志;用来表示控制 cpu 的操作特征 . (if,df,tf) .cf:cf=1

为加减运算结果的最高位有进位或有借位,否则 c f=0.pf;pf=1 位操

作结果“1” 的个数为偶数,否则 pf=0.fa:af=1 位运算结果的低 4 位

向高 4 位有进位或有借位,否则 af=0.zf:zf=1 运算结果为 0,否则

zf=0.sf;sf=1 运算结果最高为 0(e)否则 sf=0.of;of=1 在算数运算时,带符号数的运算结果超出数的表示范围.否则 of=0.tf;tf=1cpu 进

入单步工作方式.if;if=1 允许 cpu 响应可屏蔽外部中断请求.if=0 禁

止中断.df;df=1 在字符串操作时使地址指针自动减量.df=0 自动增量.

4.4 8086系统中的物理地址是如何得到的?假如cs=2000h,

ip=2100h,其物理地址就是多

少?参考答案:将存储系统的段地址寄存器的内容左移4位(二进

制位)或乘以16,加上偏移地址,即可得到20位的物理地址。cs:ip=2000:2100h,物理地址为:22100h。

4.5 什么叫总线周期?8086cpu的一个总线周期包括多少时钟周期,什么情况下要插入tw等待周期?插入多少个tw取决于什么因素?

参考答案:8086/8088cpu把biu完成一次访问存储器或外设操作

所需的时间称为一个总线周期。一个总线周期最少包含4个时钟周

期(t1~t4)。当访问存储器(读、写)或外设时,存储器或外设不

能及时地配合cpu传送数据,存储器或外设通过“ready”信号在t3

之前向cpu发一个“数据未准备好”的低电平信号,cpu检测到这个

信号后会在t3之后插入一个或多个等待时钟周期tw。当存储器或外

设准备好数据,通过拉高“ready”电平,发出“准备好”信号,cpu检

测到这个信号后,会自动脱离tw状态进入t4状态,完成总线操作。因此插入多少个tw取决于“ready”信号低电平持续时间。

4.6 什么是锁存器?8086/8088系统中为什么要用地址锁存器?锁存的是什么信息?

参考答案:地址锁存器就是一暂存器,它根据控制信号的状态,将

总线上的地址信息暂存起来。8086cpu的ad0~ad15,8088cpu的ad0~ad7是地址/数据信号分时复用的,当cpu与存储器交换信号时,首先由cpu发送存储器的地址信号,同时发地址锁存允许信号

ale给锁存器,当锁存器接到该信号后将地址/数据总线上的地址锁存在锁存器中,随后才能传送数据信号。对于8086cpu所用的锁存器

锁存的是地址总线的低16位和bhe信号,8088cpu所用的地址锁

存器锁存的是地址总线的低8位信号。

4.10 reset信号来到后,8086/8088cpu的cs和ip分别等于多少?参考答案:高电平的reset信号维持4个时钟周期以上时,cpu结

束当前的操作,并对处理器标志寄存器、ds、ss、es、ip及指令队

列清零,将cs设置为ffffh,由于ip = 0000h,因此当复位信号变为低电平时,cpu从ffff0h的存储单元开始执行程序。第7章作业7.4 设sp = 0040h,如果用进栈指令存入5个数据,则sp = 若又用出栈指令取出2个数据,则sp = 3ah 。

7.8 ax中有一负数,欲求其绝对值,若该数为补码,则用指令码,

则用指令 and ax, 7fffh。

7.9 (2)将cx中间8位取反,其余位不变。

(6)不用乘法指令实现al(无符号数)乘以20。结果存放在ax中。方法一:

mov al,055h ; 给al赋单字节任意数

mov ah,0

shl al,1

rcl ah,1

shl al,1

rcl ah,1

mov bx,ax

shl al,1

rcl ah,1

shl al,1

rcl ah,1

add ax,bx

方法二:

mov al,055h ; 给al赋单字节任意数

mov ah,0

mov cl,2

salax,cl

mov bx,ax

salax,cl

add ax,bx

第10章作业10.1 什么叫中断?采用中断有哪些优点?参考答案:所谓中断就是cpu在正常执行程序的过程中,由于内部/外部事件的触发或由程序的预先安排,引起cpu暂停执行当前的程序,转而去执行为内部/外部事件或程序预先安排的事件的服务子程序,待相应的服务子程序执行完毕后,cpu再返回到被暂停执行的原程序继续执行,这一过程称为中断。采用中断技术,使cpu能够及时处理与外部设备的数据传送和一些突发事件(如故障、非法操作等),不必采用查询方式,从而实现实时操作,提高了cpu的工作效率。

10.2 什么叫中断源?8086/8088一般有哪几种中断源?识别中断源一般有哪几种方法?参考答案:引起中断的原因或者是能够发出中断信号的来源叫中断源。8086系统分为内部中断和外部中断两种,内部中断主要包括指令中断、除法错中断、单步中断、断点中断和溢出中断;外部中断主要有非屏蔽中断(nmi)和外部设备的可屏蔽中断(intr)。识别中断源有两种方法:(1)每个中断源都有一条中断请求信号线,且固定一个中断服务程序的入口地址,cpu一旦检测到某条信号线有中断申请,就进入相应的中断服务程序;(2)采用向量中断。使用向量中断系统的中断源除了能输出中断请求信号外,还能在cpu响应了它的中断请求后输出一个中断向量,cpu 根据这个中断向量能够获得该中断源的中断服务程序的入口地址,从而为其进行中断服务。10.4 什么叫中断向量、中断优先权和中断嵌套?参考答案:所谓中断向量,就是中断服务程序的入口地址。为使系统能及时响应并处理发生的所有中断,系统根据引起中断事

相关文档