微机原理课后答案综述.docx

上传人:b****4 文档编号:3735942 上传时间:2022-11-25 格式:DOCX 页数:65 大小:158.97KB
下载 相关 举报
微机原理课后答案综述.docx_第1页
第1页 / 共65页
微机原理课后答案综述.docx_第2页
第2页 / 共65页
微机原理课后答案综述.docx_第3页
第3页 / 共65页
微机原理课后答案综述.docx_第4页
第4页 / 共65页
微机原理课后答案综述.docx_第5页
第5页 / 共65页
点击查看更多>>
下载资源
资源描述

微机原理课后答案综述.docx

《微机原理课后答案综述.docx》由会员分享,可在线阅读,更多相关《微机原理课后答案综述.docx(65页珍藏版)》请在冰豆网上搜索。

微机原理课后答案综述.docx

微机原理课后答案综述

习题二IA-32结构微处理器

主要内容:

主要介绍8086/8088CPU内部结构。

了解80X86CPU的特点。

(1.

2.18086CPU在内部结构上由哪几部分组成?

其功能是什么?

【答】8086的内部结构-成两部分:

总线接口部件BIU,负责控制存储器读写。

执行部件EU,EU从指令队列中取出指令并执行。

8086是16位微处理器,有16根数据线、20根地址线,内部寄存器、算术逻辑部件为16位。

2.28086的总线接口部件有那几部分组成?

【答】8086的总线接口部件主要由下面几部分组成:

4个段寄存器CS/DS/ES/SS,一个16位的指令指针寄存器IP,一个20位地址加法器,6字节的指令队列,内部暂存器以及输入输出电路组成.

2.38086的执行部件有什么功能?

由那几部分组成?

【答】8086的执行部件主要由下面几部分组成:

(1)四个16位通用寄存器AX、BX、CX、DX,四个16位专用寄存器,包括二个指针寄存器SP、BP,二个变址寄存器SI、DI,算术逻辑单元ALU,标志寄存器。

2.48086CPU状态标志和控制标志又何不同?

程序中是怎样利用这两类标志的?

8086的状态标志和控制标志分别有哪些?

【答】标志分两类:

状态标志(6位),反映刚刚完成的操作结果情况,包括零标志ZF、符号标志SF、奇偶标志PF、进位标志CF、辅助进位标志AF、溢出标志OF。

控制标志(3位),在某些指令操作中起控制作用,包括单步运行标志TF、方向标志DF与中断允许标志IF。

利用状态标志可以掌握当前程序操作的结果,例如了解是否产生进位,是否溢出等。

2.58086/8088和传统的计算机相比在执行指令方面有什么不同?

这样的设计思想有什么优点?

8086CPU执行转移指令时,指令队列寄存器内容如何变化?

【答】传统的计算机一般按照取指令、指令译码/执行指令的步骤工作。

在8086/8088中,指令的提取与执行分别由总线接口部件BIU与执行部件EU完成,8086/8088可以在取指令同时又可以执行指令,这种并行工作方式有力的提高了CPU的工作效率。

2.6将两数相加,即01001100加01100101,CF、PF、AF、ZF、SF、OF各为何值?

【答】01001100+01100101=10110001

CF=0,PF=1,AF=1,ZF=0,SF=1,OF=1

2.7存储器的逻辑地址由哪几部分组成?

存储器的物理地址是怎样形成的?

一个具有20位地址线的CPU,其最大物理地址为多少?

【答】存储器的逻辑地址由段地址与段内偏移地址组成。

存储器的物理地址:

将16位段地址左移4位后加上16位段内偏移地址,形成20位物理地址。

一个具有20位地址线的CPU,其最大物理地址为

=1MB。

2.8现有6个字节的数据分别为11H,22H,33H,44H,55H,66H,已知它们在存储器中的物理地址为400A5H~400AAH.若当前(DS)=4002H,请说明它们的偏移地址值。

如果要从存储器中读出这些数据,需要访问几次存储器,各读出哪些数据?

【答】由于:

物理地址=400A5H=段地址*16+偏移地址=40020H+偏移地址

偏移地址=400A5+40020=85H

从奇地址400A5H中读出:

11H;从偶地址400A6H读出一个字:

22H,33H;从偶地址400A8H读出一个字:

44H,55H;从偶地址400AAH中读出:

66H。

共读4次。

2.9已知当前数据段中存有如下图所示的数据,现要求将最后两个字节改成ODH,OAH,请说明需给出的段基值和偏移地址值,并说明其写入过程。

【答】数据段段地址=150AH,偏移地址=0004H。

CPU的总线接口部件根据数据段寄存器的内容150AH,左移4位,在加上偏移地址0004H,形成20位物理地址150A4H,由总线接口送出,选中物理存储单元150A4H、150A5H,数据0DH通过数据总线送入150A4H,数据0AH通过数据总线送入150A4H。

2.10在8088/8086中,逻辑地址FFFF∶0001,00A2∶37F和B800∶173F的物理地址分别是多少?

2.11在8088/8086中,从物理地址388H开始顺序存放下列三个双字节的数据,651AH,D761H和007BH,请问物理地址388H,389H,38AH,38BH,38CH和38DH6个单元中分别是什么数据?

【答】物理地址388H~38DH单元中的数据如下表:

地址

388H

389H

38AH

38BH

38CH

38DH

数据

1AH

65H

61H

D7H

7BH

00H

 

2.128086CPU的形成三大总线时,为什么要对部分地址线进行锁存?

用什么信号控制锁存?

【答】为了确保CPU对存储器和I/O端口的正常读/写操作,要求地址和数据同时出现在地址总线和数据总线上。

而在8086CPU中AD0~AD15总线是地址/数据复用的,因此需在总线周期的前一部分传送出地址信息,并存于锁存器中,而用后一部分周期传送数据。

8086CPU中是通过CPU送出的ALE高电平信号来控制锁存的。

2.13段寄存器CS=1200H,指令指针寄存器IP=4000H,此时,指令的物理地址为多少?

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

【答】此时,指令的物理地址为16000H;这一物理地址的CS值和IP值不是唯一的,例如:

CS=1000H,IP=6000H。

2.1480386最重要的技术特点是什么?

【答】

(1)速度大大提高:

时钟达12MHZ/16MHZ,

(2)寻址空间大大扩展:

4GB物理空间,64TB(64GGB)虚拟空间,(3)除了保持80286的实地址方式和保护方式外,增加了虚拟8086方式。

(4)80386设置了转换检测缓冲器,大大加快了存储器访问速度。

2.1580386的内部有哪些部件?

【答】80386功能部件包括总线接口部件BIU、指令预取部件IPU、指令译码部件IDU、指令执行部件EU、存储器管理部件MMU:

即分页部件PU与分段部件SU。

2.1680386CPU有几种工作方式?

【答】80386的实地址方式、80386的虚拟保护方式与虚拟8086方式。

2.17简述80386CPU的实地址方式特点。

【答】80386上电或复位时,处于实地址方式,主要为80386进行初始化工作。

特点:

(1)实地址方式采用类似8086体系结构,寻址机构、存储器管理与中断处理机构与8086一样。

(2)操作数默认长度为16位,但允许访问80386的32位寄存器组,在使用时指令中要加上前缀以表示越权存取。

(3)存储器寻址空间最大1M字节。

(4)实地址方式下,存储器中保留两个固定区域,一个为初始化程序区:

FFFF0~FFFFFH,另一个为中断向量区00000~003FFH。

(5)80386具有4个特权级,实地址方式下,程序在最高级(0级)上执行。

2.18简述80386的虚拟保护方式特点。

【答】80386的存储器的虚拟保护方式:

80386上电或复位后,先进入实地址方式完成初始化,然后转到保护方式。

在保护方式,虚存空间可达4GB×16K=64MMB=64GB。

程序员借助于存储管理部件(MMU)功能将磁盘等存储设备映射到内存,使逻辑地址大大超过实际物理地址空间。

在保护方式,可以使用80386的4级保护功能,为多任务操作系统提供支持。

2.19虚拟8086方式有什么特色?

为什么要设置这种方式?

【答】

(1)可以执行8086的应用程序。

(2)段寄存器的用法和实地址方式时一样,即段寄存器内容左移4位加上偏移量为线性地址。

(3)存储器寻址空间为一兆字节,但可以使用分页方式,将一兆字节分为256个页面,每页4K字节。

在80386多任务系统中,可以使其中一个或几个任务使用虚拟8086方式。

此时,一个任务使用的全部页面可以定位于某个物理地址空间,另一个任务的页面可以定位于其他区域,即每个虚拟8086方式下的任务可以转换到物理存储器的不同位置。

(4)虚拟8086方式中,程序在最低特权级(3级)上运行,因此,80386指令系统中的一些特权指令不能使用。

虚拟8086方式是80386中很重要的设计特点,可以使大量的8086软件有效的与80386保护方式下的软件并发运行。

2.2080386有哪两种模拟8086的方式?

【答】80386有两种模拟8086的方式,一种是实地址方式,一种是虚拟8086方式。

80386上电或复位时,处于实地址方式。

在保护方式下,可以通过软件切换到虚拟8086方式,运行8086程序。

2.2180386采用几种描述符表?

这些表的设置带来什么优点?

【答】80386共设计三中描述符表即:

全局描述符表,局部描述符表,中断描述符表。

采用描述符表带来如下三方面的优点:

1.可以大大扩展存储空间;2.可以实现虚拟存储;3.可以实现多任务隔离。

2.2280386在3种工作方式下,"段"的长度有什么差别?

实地址方式,段的大小固定64K字节。

保护方式,段的大小是可以选择的,从1字节到4千兆字节。

虚拟8086方式,对程序员来说,段长度固定为64K。

2.23Intel86系列CPU是从哪一种芯片开始采用RISC技术的?

你能说说RISC技术最重要的特点和优点吗?

【答】80486是首次采用RISC技术的。

80486把80386和浮点运算协处理器80387及8KB的超高速缓存器集中到一个芯片中,且支持二级Cache。

80486能在一个时钟周期执行一条指令。

2.2480486和80386相比,有什么技术特点?

【答】

(1)80486是首次采用RISC技术的;

(2)采用片内高速缓存和片内浮点运算协处理器;(3)80486采用一种突发式总线方式实现CPU和内存的高速数据交换;(4)80386可以模拟多个8086来实现多任务功能。

2.25Pentium有哪些技术特点?

你认为在Pentium基础上主要应从哪几个方面可再作改进?

【答】①采用超标量双流水线结构,每个流水线包含5个步级。

②内部采用2个彼此独立的8KB数据高速缓存,这两个高速缓存可以同时被访问。

③Pentium内部数据总线为32位,但是cpu和内存进行数据交换的外部数据总线为64位,使一个总线周期的数据传输量提高一倍。

④采用36位地址总线,扩展了寻址空间。

⑤对mov、push、dec、inc等常用指令不用微程序而用硬件实现;⑥采用分支预测技术提高流水线效能。

⑥采用分支预测技术提高流水线效能。

⑦浮点运算执行过程分为8个流水步级。

pentium也存在一些缺点,如功耗大,达15w,浮点运算功能仍低于一些RISC处理器。

2.26选择题

(1)80386共有()个引脚信号,采用()封装。

A.128,PGAB.132,LCCC.132,PGAD.128,LCC

【答】C

(2)80386内部可以分为()个部件。

A.8B.6C.4D.2

【答】B

(3)80386有()条地址信号线和()条数据信号线

A.32,32B.32,24C.24,32D.20,32

【答】A

(4)外部CLK2的频率是80386内部时钟信号频率的()倍.

A.5B.4C.3D.2

【答】D

(5)80386的HLDA信号是对()的应答信号

A.HOLDB.BUSRQC.INTRD.DMARQ

【答】A

(6)80386的流水线方式请求信号是()。

A.ND#B.NC#C.NB#D.NA#

【答】D

(7)80386的执行部件可分为()子部件。

A.控制部件B.数据部件

C.保护测试部件D.A和B

E.B和CF.A.B和C

【答】F

(8)80386在保护模式下工作时,可以有()个特权级

A.5B.4C.3D.2

【答】B

习题三8086指令系统

主要内容:

8086指令系统。

主要介绍8086的基本数据类型、寻址方式和指令系统,重点掌握8086指令系统的寻址方式、堆栈操作指令、算术运算指令及其对标志位的影响,串操作指令,控制传送指令。

3.1下面这些指令哪些是正确的?

哪些是错误的?

如是错误的,请说明原因。

XCHGCS,AX()

MOV[BX],[1000]()

PUSHCS()

POPCS()

INBX,DX()

3.2单选题:

(1)执行下面指令序列后,结果是()。

MOVAL,82H

CBW

A、AX=0FF82HB、AX=8082HC、AX=0082HD、AX=0F82H

【答】A

(2)与MOVBX,OFFSETVAR指令完全等效的指令是()。

A、MOVBX,VARB、LDSBX,VAR

C、LESBX,VARD、LEABX,VAR

【答】D

(3)编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有

()。

A、CMPB、SUBC、ANDD、MOV

【答】D

(4)下面指令执行后,改变AL寄存器内容的指令是()。

A、TESTAL,02HB、ORAL,AL

C、CMPAL,BD、ANDAL,BL

【答】D

(5)设DH=10H,执行NEGDH指令后,正确的结果是()。

A、DH=10HCF=1B、DH=0F0HCF=0

C、DH=10HCF=0D、DH=0F0HCF=1

【答】D

(6)设DS=8225H,DI=3942H,指令NEGBYTEPTR[DI]操作数的物理地址是()。

A、85B92HB、86192HC、BB690HD、12169H

【答】A

(7)检查BUF的内容是否为正偶数,如是正偶数,则0TAL。

下面程序段正确的是()。

A、MOVAL,BUF

JSK1

SHRAL,1

JNCK1

MOVAL,0

K1:

……

B、MOVAL,BUF

ANDAL,11

JNZK2

MOVAL,0

K2:

……

C、MOVAL,BUF

TESTAL,81H

JNZK3

MOVAL,0

K3:

……

D、MOVAL,BUF

JNPK4

TESTAL,80H

JNZK4

MOVAL,0

K4:

……

【答】C

(8)下列指令中,执行速度最快的是()。

A、MOVAX,100B、MOVAX,[BX]

C、MOVAX,BXD、MOVAX,[BX+BP]

【答】C

3.3已知(DS)=091DH,(SS)=IE4AH,(AX)=1234H,(BX)=0024H,(CX)=5678H,

(BP)=0024H,(SI)=0012H,(DI)=0032H,[09226]=00F6H,[09228]=1E40H,

[lE4F6]=091DH,试求单独执行下列指令后的结果?

(l)MOVCL,20H[BX][SI];

【答】由于源操作数有效地址EA=20H+0024H+0012H=0056H,

其物理地址PA=DS*16+EA=091DH*16+56H=09226H,因此(CL)=F6H

(2)MOV[BP][DI],CX;

【答】由于目的操作数有效地址EA=0024H+0032H=0056H,

目的操作数物理地址PA=SS*16+EA=1E4A0H+0056H=1E4F6H,因此[1E4F6]=5678H

(3)LEABX,20H[BX][SI]

MOVAX,2[BX]

【答】第一条指令:

源操作数物理地址PA=091D0H+(20+0024H+0012H)=09226H,因此(BX)=0056H

第二条指令:

源操作数物理地址PA=091D0H+(2+0056)=09928H,因此(AX)=1E40H

(4)LDSSI,[BX][DI]

MOV[SI],BX

【答】第一条指令:

源操作数物理地址PA=091D0H+(0024H+0032H)=09226H

因此(SI)=00F6H,(DS)=1E40H

第一条指令:

目的操作数物理地址PA=1E400H+00F6H=1E4F6H

因此1E4F6H单元的内容为0024H,即[1E4F6H]=0024H

(5)XCHGCX,32H[BX]

XCHG20[BX][SI],AX

【答】同理可得:

(CX)=00F6H(AX)=00F6H,[09226H]=1234H

3.48086CPU执行如下指令后

MOVAL,01100100B

SUBAL,58H;(AL)=0CH,AF=1,CF=0

DAS;(AL)=06,AF=1,CF=0

【答】首先用TD调试验证上面的结果;自己定义两个数据,重新验证,写出结果。

3.5设(IP)=3D8FH,(CS)=4050H,(SP)=0F17CH,当执行CALL2000:

0094H后,试求出IP、CS、SP、[SP]、[SP+1][SP+2]和[SP+3]的内容?

【答】(IP)=0094H,(CS)=2000H,(SP)=F178H

[SP]=8FH,[SP+1]=3DH,[SP+2]=50H,[SP+3]=40H,[SP+3]=40H

3.6设(DS)=2000H,(BX)=1256H,(SI)=528FH,TABLE的偏移量=20A1H,[232F7H]=3280H,[264E5H]=2450H,执行下述指令

(1)JMPBX;IP=1256H

(2)JMPTABLE[BX];IP=3280H

(3)JMP[BX][SI];IP=2450H

3.7分别用一条语句实现下述指明的功能

(1)栈顶内容弹出送字变量DI。

(POPDI)

  

(2)双字变量AYD存放的地址指针送ES和SI。

(LESSI,AYD)

  (3)不允许中断即关中断。

(CLI)

  (4)子程序返回调用程序。

(RET)

  (5)AX的内容加1,要求不影响CF。

(INCAX)

(6)BX的内容加1,要求影响所有标志位。

(ADDBX,1)

(7)若操作结果为零转向标号GOON。

(JZGOON)

3.88086/8088用什么途径来更新CS和IP的值?

【答】执行CALL、JMP、INT指令,可以改变CS和IP中的值,即改变程序走向。

3.9字节扩展指令和字扩展指令用在什么场合?

举例说明。

【答】需要对带符号数字节扩展为字时,要预先执行CBW指令。

需要对带符号数字扩展为双字时,要预先执行CWD。

【答】例:

求-503/267=?

将商存1000H单元.

MOVAX,-503

MOVBX,267

CWD

IDIV

MOV[1000H],AX

HLT

3.10设DS=2100H,SS=5200H,BX=1400H,BP=6200H,说明下面两条指令所进行的具体操作:

MOVWORDPTR[BP],2000

MOVWORDPTR[BX],2000

3.11以下是格雷码的编码表

0——0000,1——0001,2——0011,3——0010,4——0110

5——0111,6——0101,7——0100,8——1100,9——1101

请用换码指令和其他指令设计一个程序段,实现格雷码往ASCII的转换。

【答】

格雷码

ASCII码

0000

30H

0001

31H

0010

33H

0011

32H

0100

37H

0101

36H

0110

34H

0111

35H

1000

0

1001

0

1010

0

1011

0

1100

38H

1101

39H

TABLESEGMENT

TAB_DADB30H,31H,33H,32H,37H,36H,34H,35H,0,0

DB0,0,38H,39H

GRADB05H

ASCII_DADB?

TABLEENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

TABLE

START:

MOVAX,TABLE

MOVDS,AX

MOVBX,OFFSETTAB_DA

MOVAL,GRA

XLAT

MOVASCII_DA,AL

CODEENDS

ENDSTART

3.128086状态标志寄存器中,作为控制用的标志位有(3)个,其中,不可用指令操作的是(DF、IF、TF)

3.13设当前的SP=1000H,执行PUSHF指令后,SP=(0FFEH),若改为执行INT20H指令后,则SP=(0FFAH)。

【答】执行PUSHF指令后,SP=(0FFEH)。

执行INT20H指令后,则SP=(0FFAH)。

3.14设当前SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少?

当执行PUSHBX指令后,栈顶地址和栈顶2个字节的内容分别是什么?

【答】当前栈顶指针(SP)=2FF00H,物理地址=20100H+FE00H=2FF00H

当执行PUSHBX指令后,栈顶指针(SP)=FE00-2=FDFEH,栈顶物理地址=2FDFEH,栈顶2个字节的内容分别57H,34H。

3.15HLT指令用在什么场合?

如CPU在执行HLT指令时遇到硬件中断并返回后,以下应执行哪条指令?

【答】HLT用在使CPU处于暂停状态而等待硬件中断的场合。

在执行HLT指令遇到硬件中断并返回后将执行HLT后面的一条指令。

3.16为什么用増量指令或减量指令设计程序时,在这类指令后面不用进位标志作为判断依据?

【答】増量指令或减量指令不影响进位标志CF。

3.17用普通运算指令执行BCD码运算时,为什么要进行十进制调整?

具体讲,在进行BCD码的加、减、乘、除运算时,程序段的什么位置必须加上十进制调整指令?

【答】在BCD码中,采用4位二进制数对一个十进制数的编码,只允许0-9这10个数字出现,但CPU运算结果一般会超过此范围,因此要进行十进制调整。

进行加、减法或乘法运算时,调整指令必须紧跟在算术指令后面,在进行除法运算时,调整指令放在除法指令之前。

3.18中断指令执行时,堆栈的内容有什么变化?

中断处理子程序的人口地址是怎样得到的?

【答】中断指令执行时,堆栈内容变化如下:

标志寄存器被推入堆栈,且SP减2,然后CPU将主程序的下一条指令地址即断点地址推入堆栈,即段值CS推入堆栈且SP减2,偏移量推入堆栈,且SP减2。

中断处理子程序的

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

当前位置:首页 > 求职职场 > 简历

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

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