




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《微机原理与接口技术》李华贵主编
课后习题参考答案
第1章(1.6习题)
1.简述名词的概念:微处理器、微型计算机、微型计算机系统。
答:
(1)微处理器:微处理器(Microprocessor)简称NP或MP,或CPU。CPU
是采用大规模和超大规模集成电路技术将算术逻辑部件ALU(ArithmeticLogic
Unit)、控制部件CU(ControlUnit)和寄存器组R(Registers)等三个基本部分
以及内部总线集成在一块半导体芯片上构成的电子器件。
(2)微型计算机:微型计算机(Microcomputer)是指以微处理器为核心,
配上由大规模集成电路制作的存储器、输入/输出接口电路及系统总线等所组成
的计算机,简称微机。
(3)微型计算机系统:微型计算机系统由硬件与软件两大部分组成,分别
称为硬件(Hardware)系统与软件(Software)系统。其中,硬件(Hardware)
系统由CPU、内存储器、各类I/O接口、相应的I/O设备以及连接各部件的地址总
线、数据总线、控制总线等组成。
软件(Software)系统:计算机软件(Software)是指为运行、维护、管理、
应用计算机所编制的程序及程序运行所需要的数据文档资料的总和。一般把软
件划分为系统软件和应用软件。其中系统软件为计算机使用提供最基本的功能,
但是并不针对某一特定应用领域。而应用软件则恰好相反,不同的应用软件根
据用户和所服务的领域提供不同的功能。
2.简述名词的概念:指令寄存器、地址寄存器、标志寄存器。
答:
(1)指令寄存器:指令寄存器(InstructionRegister,IR)用来保存计算机
当前正在执行或即将执行的指令。当一条指令被执行时,首先,CPU从内存取
出指令的操作码,并存入IR中,以便指令译码器进行译码分析。
(2)地址寄存器:地址寄存器(AddressRegister,AR)被动地接受IP传送给
它的地址值(二进制地址),AR的作用是保持IP送来的地址,并且以并行方式
连接输出到CPU的地址引脚上,以便CPU访问指定的内存单元。
(3)标志寄存器:标志寄存器(Flags,F)是CPU中不可缺少的程序状态寄存
器,因此,也称程序状态字寄存器(PSW),所谓状态是指算术或逻辑运算后,
结果的状态以二进制的0或1在标志寄存器中标识出来,例如,运算结果有进位,
则进位标志位CF=1,否则为0。
3.何谓IA-32处理器?
《微机原理与接口技术》课后习题的参考答案
答:
Intel公司推出了32位结构的80386微处理器后,确定了80386芯片的指令集结
构(InstructionSetArchitecture)为以后开发80X86系列处理器的标准,称其为Intel
32位结构(IntelArchitecture-32,IA-32),后来的80486、Pentium等微处理器统
称为IA-32处理器,或称32位80X86处理器。
4.什么叫总线?总线包括哪三种?
答:
所谓总线,它将多个功能部件连接起来,并提供传送信息的公共通道,能
为多个功能部件分时共享,CPU通过总线连接存储器和I/O接口等,构成了微型
计算机。
这里指的总线(BUS)包括地址总线、数据总线和控制总线三种。
5.地址总线的作用是什么?
答:
地址总线(AddressBus,AB),通常是CPU用来发出地址信息的,用于对
存储器和I/O接口进行寻址。
6.什么叫溢出?判断溢出的方法是什么?
答:
(1)溢出通常指计算机运算的结果超出了计算机所能允许的范围。本章所
讲的溢出是指用补码实现加/减运算后,若参与操作的两数在定义域内,但运算
结果超出了字长范围内补码所能允许表示的值,所计算出的结果产生了错误,
称之为溢出。
(2)力口/减运算判断溢出的方法:
如果把加/减法运算都变成补码相加,则两个正数相加可能产生正的溢出,
两个负数相加可能会产生负的溢出,正负两数相加不会产生溢出。
具体实现的方法是:两个操作数运算后,用最高位和次高位产生的进位位
异或,异或结果为1,则表示有溢出,结果为0,表示无溢出。例如:两个8位数
运算后,溢出标志
OF=C6ffiC7
7.假设四种CPU主存地址分别为16根、20根、24根以及32根,试问每种CPU
可寻址内存多少字节?
I62O2432
解:每种CPU可寻址内存分别是:2=64KB>2=1MB,2=16MB>2=4GBO
8.在一般指令格式中,由哪两部分组成?
答:
由操作码和操作数组成。
9.设字长为16位,将下列十进制数转换成二进制数、十六进制数以及BCD
数。
①65②129③257④513
解:
①65=01000000B=41H=(01100101)BCD
②129=10000001B=81H=(000100101001)BCD
③257=100000001B=101H=(001001010111)BCD
④513=1000000001B=201H=(010100010011)BCD
10.设字长为8位,写出x、y的原码、反码和补码,并且用补码计算x+y,
问是否有溢出?
①x=-78y=35②x=-64y=-66
解:
①x=-78y=35
[X])S=11001110,[X]反=10110001,[X]fl.=10110010
[Y]JS.=00100011,[Y]反=00100011,[Y]fh=00100011
[X]tt+[Y]«.=10110010+00100011=11010101,无溢出。
②x—64y=-66
[X]K1=11000000,[X]fi=10111111,[X]n=11000000
[Y]®=11000010,[Y]反=10111101,[Y]fb=10111110
[X]fr+[Y]ft.=l1000000+10111110=01111110,有溢出。
14.微机中的存储器是如何编址的?
答:
£微机中,存储器均按字节(一字节由8位二进制信息组成)编址,即每个
字节有一个二进制的地址编码。给每个存储单元分配的一个固定地址,称为单
元地址。
15.微型计算机的硬件系统由那些部件组成?
答:
赖型计算机的硬件系统主要由运算器、控制器、存储器、输入设备及输出
设备五大部分组成。
16.计算机的主要性能指标有哪些?
答:字长、CPU的主频、主存储器的容量及外存储器的容量等。
《微机原理与接口技术》课后习题的参考答案
第2章(2.5习题)
1.微型计算机可以工作在哪三种工作模式下?
答:
微处理器可以工作在:实地址模式、保护模式及虚拟8086模式共三种。
4.16位微处理器有哪些通用寄存器?
答:
AX、BX、CX、DX、SLDLSP和BP。
5.16位微处理器有哪4个段寄存器?每个段寄存器的作用是什么?
答:
4个段寄存器分别是代码段寄存器CS、数据段寄存器DS、附加段寄存器ES
及堆栈段寄存器SS。
(1)代码段寄存器CS是一个随机存取存储区,用来保存微处理器使用的程
序代码。在8086系统中,代码段寄存器CS定义了代码段的起始地址。代码段的
最大存储空间为64KB。
(2)数据段寄存器DS也是一个随机存取存储区,用来保存程序执行过程中
所使用的数据及存放程序运行后的结果。数据段寄存器DS定义了数据段的起始
地址,其最大存储空间也是64KB。
(3)附加段寄存器ES是为某些串操作指令存放操作数而附加的一个数据
段。与数据段类似,附加段寄存器ES定义了附加段的起始地址,其最大存储空
间也为64KB。
(4)堆栈段寄存器SS是一个特殊的随机存取存储区,用来临时保存程序执
行过程中有关寄存器的内容、程序的地址信息及传递参数等。堆栈段寄存器SS
与堆栈指针SP共同确定堆栈段内的存取地址。其最大存储空间为64KB。
6.如何理解32位微处理器的通用寄存器与16位的通用寄存器兼容?
答:
虽然32位微处理器将8086原来的8个16位通用寄存器AX、BX、CX、DX、
SLDI、BP、SP均扩展成(Extended)32位的寄存器,即EAX、EBX、ECX、
EDX、ESI、EDLEBP、ESP。但是,它保留了原来的8个16位寄存器和8个8位
的寄存器,仍然可以使用它们编程,当然,所编写的程序仍然可以在32位机上
运行。既可以用32位寄存器编程,还可以用16位及8位寄存器编程,这就实现了
寄存器的兼容。
7.什么叫段基地址?什么叫偏移地址?
答:
编程人员在编程时,只能涉及到逻辑地址,而不能涉及到实际地址。逻辑
4
地址在实模式下,它由段基地址与段内偏移地址组成,习惯上写为“段基地址:
偏移地址”,实模式下,段基地址与段内偏移地址都是16位,段基地址是段起
始地址的高16位,说明每个段在主存中的起始位置,段内偏移地址也称“偏移
量”,是所要访问存储单元距离起始地址之间的字节距离。
在32位段的情况下,偏移量是32位。
9.8086CPU由哪两部分组成?它们的主要功能各是什么?
答:
8086CPU内部结构从功能上看,它由两大部件组成,分为总线接口部件BIU
(BusInterfaceUnit)和执行部件EU(ExecutionUnit)。
(1)总线接口部件BIU的主要功能:它是8086CPU与外部存储器和I/O端口
的接口,提供了16位双向数据总线和20位地址总线,负责CPU与存储器及I/O端
口之间的数据传送操作(包括物理地址的形成)。
(2)执行部件EU主要功能:从BIU中的指令队列获取指令,对指令进行译
码分析并执行,执行指令所需要的操作数和运算结果的存储,是由EU向BIU传
递偏移地址,BIU只要收到EU送来的偏移地址,于是将送来的偏移地址与相应
的段地址组成20位的物理地址,根据现行的20位物理地址,通过执行存储器的
读/写总线周期来完成读/写操作,或者是通过执行I/O端口的读/写总线周期来完
成读/写I/O端口的操作。
10.8086CPU中的标志寄存器FLAGS有哪些状态标志位?在什么情况下置
位?
答:
状态标志有6位:CF、PF、AF、ZF、SF和OF。
①CF(CarryFlag),进位标志位。本次运算中最高位有进位或借位时,
CF=lo
②PF(ParityFlag),奇偶校验标志位。本次运算结果的低8位中1的个数
为偶数时,PF=1。
③AF(AuxiliaryCarryFlag),辅助进位标志位。本次运算结果低4位向高
4位有进位或借位时,AF=lo
④ZF(ZeroFlag),零标志位。若运算结果为0时,ZF=1。
⑤SF(SignFlag),符号标志位。当运算结果的最高位为1,则SF=1。
⑥OF(OverflowFlag),溢出标志位。当运算结果有溢出时,OF=1。
11.什么是逻辑地址?什么是物理地址?如何将逻辑地址转换为物理地
址?
答:从8088/8086开始,CPU内部就有了对存储器的分段机制,每个存储单
《微机原理与接口技术》课后习题的参考答案
元可以看成两种地址:逻辑地址与物理地址。
(1)逻辑地址
逻辑地址是编程时所使用的地址,在实模式下,它由段基地址与段内偏移
地址组成,习惯上写为“段基地址:偏移地址”。
(2)物理地址
物理地址又称为实际地址,它是信息在内存中存放的实际地址,是CPU访问
存储器时实际发出的地址信息。
(3)在实地址方式下,由CPU中的总线接口单元将段基地址左移4位后与16
位的偏移地址相加,生成20位的物理地址。可以访问1MB的存储空间。
12.设X=35H,Y=76H,进行X+Y和X-Y运算后,标志寄存器FLAGS的状态
标志位各是什么?
答:
(1)X+Y=35+76后,CF=0、AF=0、SF=0、OF=0、ZF=0、PF=1。
(2)X-Y=35-76后,CF=1、AF=1、SF=1、OF=0、ZF=0、PF=k
14.请将实模式下逻辑地址转变成物理地址。
(1)FFFFH:0000H(2)0045H:0018H
(3)2000H:4600H(4)B821H:3456H
解:
(1)FFFFH:0000H,物理地址=FFFFHX16+0000H=FFFF0H
(2)0045H:0018H,物理地址=0045HX16+0018H=00468H
(3)2000H:4600H,物理地址=2000HX16+4600H=24600H
(4)B821H:3456H,物理地址=B821HX16+3456H=BB666H
第3章(3.12习题)
3.1按照16位微处理器的寻址方式看,分别指出下列指令中源操作数和
目的操作数的寻址方式。
解:
(1)movax,0;源操作数:立即寻址,目的操作数:寄存器寻址
(2)mov[si],ax;源操作数:寄存器寻址,目的操作数:变址寻址
(3)mov2[di],bx;源操作数:寄存器寻址,目的操作数:相对变址
寻址
(4)mov2[bx+si],dx;源操作数:寄存器寻址,目的操作数:相对基址
(加)变址寻址
(5)movax,[lOOOh];源操作数:直接寻址,目的操作数:寄存器寻址
6
(6)movdx,[bx][si];源操作数:基址(加)变址寻址,目的操作数:
寄存器寻址
(7)movax,[bx];源操作数:基址寻址,目的操作数:寄存器寻址
(8)movdx,[bp+8];源操作数:相对基址寻址,目的操作数:寄存器寻址
3.3指出下列指令的错误原因
解:
(1)inc[si];目的操作数类型不明确
(2)moveax,bx;源操作数和目的操作数类型不匹配
(3)mov2,ax;立即数不能作目的操作数
(4)mov[ebx],[edi];源操作数和目的操作数不能同时为存储器
操作数
z\
(5)
\zmovax,[bx+bp];基址变址寻址方式不能同时为基址寄存器
/\
(6
\7movax,[si+di];基址变址寻址方式不能同时为变址寄存器
z\
(7)
\zmovah,300;300超出了ah可以容纳的数据范围
z\
(8)
\/movcs,lOOOh;cs不能由程序员赋值,它由系统自动赋值
/\
(9J
\Zpushal;push要求操作数为16位或32位
/O
(1
\shlax,8;当移位次数超过1时,先将移位次数送cl,再移
位
(11)movax,bx+di;基址变址寻址方式缺少一对方扩号
(12)movip,bx;ip不能由程序员赋值,它由系统自动赋值
(13)moves,ds;源操作数和目的操作数不能同时为段寄存器
(14)mov[sp],ax;入栈只能用push指令实现
3.6假定(AX)=1234H,(BX)=OOFFH,回答每条指令单独执行后,(AX)=?
(BX)=?
解:
(1)andax,bx;(ax)=0034h(bx)=00ffh
(2)testax,bx;(ax)=1234h(bx)=00ffh
(3)xorax,bx;(ax)=12cbh(bx)=00ffh
(4)xchgax,bx;(ax)=00ffh(bx)=1234h
(5)addax,bx;(ax)=1333h(bx)=00ffh
(6)subbx,ax;(ax)=1234h(bx)=0eecbh
(7)orbx,ax;(ax)=1234h(bx)=12ffh
(8)cmpax,bx;(ax)=1234h(bx)=OOffh
《微机原理与接口技术》课后习题的参考答案
3.8已知(DS)=1000H,(BX)=0100H,(SI)=0004H,存储单元[10100H]〜
[10107H]依次存放11H22H33H44H55H66H77H88H,[10004H]-[10007H]
依次存放2AH2BH2CH2DH,说明下列每条指令单独执行后AX中的内容。
解:
(1)MOVAX,[01OOH];(AX)=2211H
(2)MOVAX,[BX];(AX)=2211H
(3)MOVAX,[0004H];(AX)=2B2AH
(4)MOVAX,[0102H];(AX)=4433H
(5)MOVAX,[SI];(AX)=2B2AH
(6)MOVAX,[SI+2];(AX)=2D2CH
(7)MOVAX,[BX+SI];(AX)=6655H
(8)MOVAX,[BX+SI+2];(AX)=8877H
3.10什么是堆栈?它的工作原理是什么?它的基本操作有哪两个?
答:
堆栈是在内存RAM中开辟的一段空间,利用“先进后出”或“后进先出”
的原则存取数据。如果把数据压入堆栈,则堆栈指针的值是减少的,即所谓
的向下生成堆栈。由SS:SP(16位)或SS:ESP(32位)指向栈底(栈空)或
栈顶(栈不空)地址。它的基本操作有数据入栈指令PUSH和数据出栈指令POP。
3.11设SS=1000H,SP=0100H,指出下列每条指令执行后,(AX)=?(BX)
=?(SP)=?并且回答堆栈中的内容如何?
解:
MOVAX,2233H;(AX)=2233H,(BX)不确定,(SP)=0100H
PUSHAX;(AX)=2233H,(BX)不确定,(SP)=OOFEH
MOVBX,4455H;(AX)=2233H,(BX)=4455H,(SP)=OOFEH
PUSHBX;(AX)=2233H,(BX)=4455H,(SP)=OOFCH
POPAX;(AX)=4455H,(BX)=4455H,(SP)=OOFEH
POPBX;(AX)=4455H,(BX)=2233H,(SP)=0100H
这段指令执行后将AX和BX的值互换。
3.1416位存储器寻址中,分为哪几种寻址方式?
答:
(1)直接寻址
(2)基址寻址(包括相对基址寻址)
(3)变址寻址(包括相对变址寻址)
8
(4)基址(加)变址寻址
(5)相对基址(加)变址寻址
3.16对于立即寻址的指令,有8位、16位及32位的立即寻址的指令,各
列举2条指令(一条是传送指令,另一条是加法指令)。
解:
8位立即寻址指令
(1)MOVAH,2
(2)ADDAL,3
16位立即寻址指令
(1)MOVAX,1234H
(2)ADDDX,3456H
第4章(4.5习题)
6.已知两个字的定义如下,比较这两个字的大小,将较大的数存放到Z
单元,如果两数相等,则把其中任意一数存入Z单元。要求用简化段格式编程:
(1)按照无符号数比较与编程。
(2)按照有符号数比较与编程。
XDW1234H
YDW9678H
ZDW?
解:
(1)按照无符号数比较与编程。
.modelsmall
.386
.data
xdw1234h
ydw9678h
zdw?
.code
.startup
movax,x
movbx,y
.ifax>bx
movz,ax
.else
《微机原理与接口技术》课后习题的参考答案
movz,bx
.endif
.exit
end
(2)按照有符号数比较与编程。
.modelsmall
.386
.data
xdw1234h
ydw9678h
zdw?
.code
.startup
movax,x
movbx,y
.ifswordptrax>swordptrbx
movz,ax
.else
movz,bx
.endif
.exit
end
7.已知两个字的定义如第6题,编程求X-Y,结果存入Z单元。要求用简化
段格式编程,并回答存入Z单元的数是多少?
解:
.modelsmall
.386
.data
xdw1234h
ydw9678h
zdw?
.code
.startup
movax,x
subax,y
movz,ax
.exit
end
io
存入Z单元的数是7bbeh。把指令subax,y改为subswordptrax,y结果不变。
9.什么叫时钟周期?指令周期?总线周期?
答:
(1)指令周期:执行一条指令所需要的时间称为指令周期(Instruction
Cycle),它包括取指令、指令译码和执行等操作,不同指令的指令周期是不相
同的。
(2)总线周期:微处理器通过总线实现一次访问存储器或I/O接口操作所
经历的时间称为总线周期(BusCycle),总线周期可以分为读存储器、写存储
器、读I/O接口、写I/O接口及取出指令等5种基本的总线周期。
(3)时钟周期:时钟周期(ClockCycle,CLK)是指微处理器工作主频脉冲
的周期,早期8086的主频5MHz,则时钟周期为200ns,现在微处理器的主频一
般都可以达到1000MHz,时钟周期为1ns。
第7章(7.5习题)
1.半导体存储器从存取方式上分,可分为哪两类,每类又分为哪一些?
答:
分为RAM与ROM两大类:
(1)RAM
RAM按其工艺结构分为双极型与金属氧化物半导体RAM两类。
①双极型RAM
②MOS型RAM
RAM按其工作方式分,有:
①SRAM(静态RAM)
②DRAM(动态RAM)
(2)ROM
主要分为如下四种:掩膜式ROM、可编程只读存储器PROM(Programmble
ROM)、紫外线擦除的可编程只读存储器EPROM(ErsablePROM)及电擦除
可编程只读存储器EEPROM(Electrical
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030年1.2二溴乙烷行业深度研究报告
- 2025年耳鼻咽喉科手术器械项目可行性研究报告
- 组胚课件呼吸系统学习资料
- 2025年电子琴玩具项目可行性研究报告
- 提升空气质量的有效策略与行动计划
- 科技向善推动创新发展的战略与实践路径
- 风电场项目未来发展潜力分析报告
- 2025年有机饰扣项目可行性研究报告
- 25年公司项目部安全培训考试试题及答案能力提升
- 2025企业员工安全培训考试试题附答案(基础题)
- 海南省省直辖县级各县区乡镇行政村村庄村名明细居民村民委员会
- 简约喜庆元宵节介绍模板 教学课件
- 西藏林芝嘉园小区项目可研(可研发)
- 丧假证明模板
- summary-writing-概要写作-优质课件
- 按期取得毕业证和学位证承诺书
- T∕CIC 049-2021 水泥窑用固体替代燃料
- 部编版高中语文必修下册第八单元《单元导读》教学设计
- 第五章 学校教育的主要活动形式:课堂教学
- 大会—冠脉微循环障碍
- 《办公自动化》教学教案
评论
0/150
提交评论