文档库 最新最全的文档下载
当前位置:文档库 › 微机原理习题参考答案

微机原理习题参考答案

微机原理习题参考答案
微机原理习题参考答案

《微机原理与接口技术》李华贵主编

课后习题参考答案

第1章(1.6 习题)

1.简述名词的概念:微处理器、微型计算机、微型计算机系统。

答:

(1)微处理器:微处理器(Microprocessor)简称μP或MP,或CPU。CPU是采用大规模和超大规模集成电路技术将算术逻辑部件ALU(Arithmetic Logic Unit)、控制部件CU (Control Unit)和寄存器组R(Registers)等三个基本部分以及内部总线集成在一块半导体芯片上构成的电子器件。

(2)微型计算机:微型计算机(Microcomputer)是指以微处理器为核心,配上由大规模集成电路制作的存储器、输入/输出接口电路及系统总线等所组成的计算机,简称微机。

(3)微型计算机系统:微型计算机系统由硬件与软件两大部分组成,分别称为硬件(Hardware)系统与软件(Software)系统。其中,硬件(Hardware)系统由CPU、内存储器、各类I/O接口、相应的I/O设备以及连接各部件的地址总线、数据总线、控制总线等组成。

软件(Software)系统:计算机软件(Software)是指为运行、维护、管理、应用计算机所编制的程序及程序运行所需要的数据文档资料的总和。一般把软件划分为系统软件和应用软件。其中系统软件为计算机使用提供最基本的功能,但是并不针对某一特定应用领域。而应用软件则恰好相反,不同的应用软件根据用户和所服务的领域提供不同的功能。

2.简述名词的概念:指令寄存器、地址寄存器、标志寄存器。

答:

(1)指令寄存器:指令寄存器(Instruction Register,IR)用来保存计算机当前正在执行或即将执行的指令。当一条指令被执行时,首先,CPU从内存取出指令的操作码,并存入IR中,以便指令译码器进行译码分析。

(2)地址寄存器:地址寄存器(Address Register,AR)被动地接受IP传送给它的地址值(二进制地址),AR的作用是保持IP送来的地址,并且以并行方式连接输出到CPU的地址引脚上,以便CPU访问指定的内存单元。

(3)标志寄存器:标志寄存器(Flags,F)是CPU中不可缺少的程序状态寄存器,因此,也称程序状态字寄存器(PSW),所谓状态是指算术或逻辑运算后,结果的状态以二进制的0或1在标志寄存器中标识出来,例如,运算结果有进位,则进位标志位CF=1,否则为0。

3.何谓IA-32处理器?

《微机原理与接口技术》课后习题的参考答案

答:

Intel公司推出了32位结构的80386微处理器后,确定了80386芯片的指令集结构(Instruction Set Architecture)为以后开发80X86系列处理器的标准,称其为Intel 32位结构(Intel Architecture-32,IA-32),后来的80486、Pentium等微处理器统称为IA-32处理器,或称32位80X86处理器。

4.什么叫总线?总线包括哪三种?

答:

所谓总线,它将多个功能部件连接起来,并提供传送信息的公共通道,能为多个功能部件分时共享,CPU通过总线连接存储器和I/O接口等,构成了微型计算机。

这里指的总线(BUS)包括地址总线、数据总线和控制总线三种。

5.地址总线的作用是什么?

答:

地址总线(Address Bus,AB),通常是CPU用来发出地址信息的,用于对存储器和I/O 接口进行寻址。

6.什么叫溢出?判断溢出的方法是什么?

答:

(1)溢出通常指计算机运算的结果超出了计算机所能允许的范围。本章所讲的溢出是指用补码实现加/减运算后,若参与操作的两数在定义域内,但运算结果超出了字长范围内补码所能允许表示的值,所计算出的结果产生了错误,称之为溢出。

(2)加/减运算判断溢出的方法:

如果把加/减法运算都变成补码相加,则两个正数相加可能产生正的溢出,两个负数相加可能会产生负的溢出,正负两数相加不会产生溢出。

具体实现的方法是:两个操作数运算后,用最高位和次高位产生的进位位异或,异或结果为1,则表示有溢出,结果为0,表示无溢出。例如:两个8位数运算后,溢出标志OF=C6⊕C7

7.假设四种CPU主存地址分别为16根、20根、24根以及32根,试问每种CPU可寻址内存多少字节?

解:每种CPU可寻址内存分别是:216=64KB、220=1MB、224=16MB、232=4GB。

8.在一般指令格式中,由哪两部分组成?

答:

由操作码和操作数组成。

9.设字长为16位,将下列十进制数转换成二进制数、十六进制数以及BCD数。

①65 ②129 ③257 ④513

- - 2

解:

①65=01000000B=41H=(0110 0101)BCD

②129=10000001B=81H=(0001 0010 1001)BCD

③257=100000001B=101H=(0010 0101 0111)BCD

④513=1000000001B=201H=(0101 0001 0011)BCD

10.设字长为8位,写出x、y的原码、反码和补码,并且用补码计算x+y,问是否有溢出?

①x=-78 y=35 ②x=-64 y=-66

解:

①x=-78 y=35

[X]原=11001110,[X]反=10110001,[X]补=10110010

[Y]原=00100011,[Y]反=00100011,[Y]补=00100011

[X]补+[Y]补=10110010+00100011=11010101,无溢出。

②x=-64 y=-66

[X]原=11000000,[X]反=10111111,[X]补=11000000

[Y]原=11000010,[Y]反=10111101,[Y]补=10111110

[X]补+[Y]补=11000000+10111110=01111110,有溢出。

11.试用8位二进制写出以下数、字母以及控制命令的ASCⅡ码,还要写出它们各自的奇校验、偶校验、标记校验及空格校验的ASCⅡ码。

① B ②8 ③CR ④NUL

解:各自对应的奇校验、偶校验、标记校验及空格校验的ASCⅡ码如表1所示。

表1 数、字母以及控制命令的ASCⅡ码

12.设两个BCD数X=1000 1001,Y=0111 0101,试用列竖式的方法计算X+Y,注意要做加6修正运算。

解:

1000 1001

0111 0101

1111 1110 结果不正确

110 个位加6修正

- -

3

《微机原理与接口技术》课后习题的参考答案

1 0000 0100 结果还不正确

+ 110 十位加6修正

1 0110 0100 结果正确

13.若规格化32位浮点数N的二进制存储格式为41360000H,求其对应的十进制数值。

解:

41360000H=0 10000010 01101100000000000000000B

N=(-1)S×(1.M)×2E-127=(-1)0×(1.011011)×2130-127

=1.011011×23=1011.011=11.375D

14.微机中的存储器是如何编址的?

答:

在微机中,存储器均按字节(一字节由8位二进制信息组成)编址,即每个字节有一个二进制的地址编码。给每个存储单元分配的一个固定地址,称为单元地址。

15.微型计算机的硬件系统由那些部件组成?

答:

微型计算机的硬件系统主要由运算器、控制器、存储器、输入设备及输出设备五大部分组成。

16.计算机的主要性能指标有哪些?

答:字长、CPU的主频、主存储器的容量及外存储器的容量等。

第2章(2.5 习题)

1.微型计算机可以工作在哪三种工作模式下?

答:

微处理器可以工作在:实地址模式、保护模式及虚拟8086模式共三种。

2.如何从实模式转变到保护模式?

答:

通过对CPU中的控制寄存器CR0中的b0位置1,即保护允许位PE置1,于是系统进入保护模式。这是由操作系统程序来实现的。

3.实模式有哪些特征?

答:

实地址模式(Real-Address Mode)也称实模式,简单地说,是指80286以上的微处理器所采用的8086的工作模式。在实模式下,采用类似8086 CPU的体系结构,其寻址机制,尤

- - 4

其是存储器寻址,以及中断处理机制均和8086相同。在实模式下,关键是CPU寻址空间只有1MB(00000H~FFFFFH),也是采用分段管理存储器的方式,将存储器分成四种类型的段,每段存储空间最大为64KB。将1MB的存储空间保留两个区域:一个是中断向量表区(00000~003FFH),这是1KB的存储空间,用于存放256个中断服务程序的入口地址(中断向量),每个中断向量占4字节。

4.16位微处理器有哪些通用寄存器?

答:

AX、BX、CX、DX、SI、DI、SP和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、SI、DI、BP、SP均扩展成(Extended)32位的寄存器,即EAX、EBX、ECX、EDX、ESI、EDI、EBP、ESP。但是,它保留了原来的8个16位寄存器和8个8位的寄存器,仍然可以使用它们编程,当然,所编写的程序仍然可以在32位机上运行。既可以用32位寄存器编程,还可以用16位及8位寄存器编程,这就实现了寄存器的兼容。

7.什么叫段基地址?什么叫偏移地址?

答:

编程人员在编程时,只能涉及到逻辑地址,而不能涉及到实际地址。逻辑地址在实模式下,它由段基地址与段内偏移地址组成,习惯上写为“段基地址:偏移地址”,实模式下,段基地址与段内偏移地址都是16位,段基地址是段起始地址的高16位,说明每个段在主存中的起始位置,段内偏移地址也称“偏移量”,是所要访问存储单元距离起始地址之

- -

5

《微机原理与接口技术》课后习题的参考答案

间的字节距离。

在32位段的情况下,偏移量是32位。

8.段寄存器与32位偏移地址寄存器的固定搭配如何?

答:

固定搭配如表2所示。

表2 段寄存器与32位偏移地址寄存器的固定搭配

9.8086 CPU由哪两部分组成?它们的主要功能各是什么?

答:

8086 CPU内部结构从功能上看,它由两大部件组成,分为总线接口部件BIU(Bus Interface Unit)和执行部件EU(Execution Unit)。

(1)总线接口部件BIU的主要功能:它是8086 CPU与外部存储器和I/O端口的接口,提供了16位双向数据总线和20位地址总线,负责CPU与存储器及I/O端口之间的数据传送操作(包括物理地址的形成)。

(2)执行部件EU主要功能:从BIU中的指令队列获取指令,对指令进行译码分析并执行,执行指令所需要的操作数和运算结果的存储,是由EU向BIU传递偏移地址,BIU只要收到EU送来的偏移地址,于是将送来的偏移地址与相应的段地址组成20位的物理地址,根据现行的20位物理地址,通过执行存储器的读/写总线周期来完成读/写操作,或者是通过执行I/O端口的读/写总线周期来完成读/写I/O端口的操作。

10.8086 CPU中的标志寄存器FLAGS有哪些状态标志位?在什么情况下置位?

答:

状态标志有6位:CF、PF、AF、ZF、SF和OF。

①CF(Carry Flag),进位标志位。本次运算中最高位有进位或借位时,CF=1。

②PF(Parity Flag),奇偶校验标志位。本次运算结果的低8位中1的个数为偶数时,PF=1。

③AF(Auxiliary Carry Flag),辅助进位标志位。本次运算结果低4位向高4位有进位或借位时,AF=1。

④ZF(Zero Flag),零标志位。若运算结果为0时,ZF=1。

- - 6

⑤SF(Sign Flag),符号标志位。当运算结果的最高位为1,则SF=1。

⑥OF(Overflow Flag),溢出标志位。当运算结果有溢出时,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=1。

13.什么叫存储器地址交叉?微机的存储器为什么要用存储器地址交叉技术?

答:

(1)在一个物理存储芯片内部所有存储单元的地址编号都不是连续的,而在相邻存储芯片之间的物理地址是相连接的,例如,16位的微处理器8086/80286把内存地址分为偶地址的字节数据、奇地址的字节数据,因此,分为偶字库和奇字库,即在一个物理存储芯片内所有存储单元的地址编号都是奇地址,另一物理存储芯片内所有存储单元的地址编号都是偶地址,这就称为地址交叉。

(2)偶地址存储体与数据总线的低8位(D7~D0)相连,奇地址存储体与数据总线高8位(D15~D8)相连,可以由偶地址有效选中偶字库(例A0=0),由奇地址有效选中奇字库(例(BHE=0)。原因是:便于CPU可以只访问偶地址一个字节,也可以只访问奇地址一个字节,还可以访问一个字(2字节)。

在CPU的外部数据总线为32位的情况下,CPU不仅可能只访问一个字节、一个字,还可能访问一个双字,因此,把内存分成4个存储体,实现存储器地址的4体交叉。

14.请将实模式下逻辑地址转变成物理地址。

(1)FFFFH:0000H (2)0045H:0018H

(3)2000H:4600H (4)B821H:3456H

- -

7

《微机原理与接口技术》课后习题的参考答案

解:

(1)FFFFH:0000H,物理地址= FFFFH×16+0000H=FFFF0H

(2)0045H:0018H,物理地址= 0045H×16+0018H=00468H

(3)2000H:4600H,物理地址= 2000H×16+4600H=24600H

(4)B821H:3456H,物理地址= B821H×16+3456H=BB666H

15.在8086系统中,CPU执行访问存储器指令时,BHE=0,说明当前CPU要访问哪一个存储体?

答:

当BHE=0时,CPU要访问奇地址的存储体。

第3章(3.12 习题)

3.1 按照16位微处理器的寻址方式看,分别指出下列指令中源操作数和目的操作

数的寻址方式。

解:

(1) mov ax,0 ;源操作数:立即寻址,目的操作数:寄存器寻址

(2) mov [si],ax ;源操作数:寄存器寻址,目的操作数:变址寻址

(3) mov 2[di],bx ;源操作数:寄存器寻址,目的操作数:相对变址寻址

(4) mov 2[bx+si],dx ;源操作数:寄存器寻址,目的操作数:相对基址(加)变址

寻址

(5) mov ax,[1000h] ;源操作数:直接寻址,目的操作数:寄存器寻址

(6) mov dx,[bx][si] ;源操作数:基址(加)变址寻址,目的操作数:寄存器寻址

(7) mov ax,[bx] ;源操作数:基址寻址,目的操作数:寄存器寻址

(8) mov dx,[bp+8] ;源操作数:相对基址寻址,目的操作数:寄存器寻址

3.2 按照32位微处理器的寻址方式看,分别指出下列指令中源操作数和目的操作

数的寻址方式。

解:

(1) mov eax,01h ;源操作数:立即寻址,目的操作数:寄存器寻址

(2) mov [esi],ax ;源操作数:寄存器寻址,目的操作数:基址寻址

(3) mov [esi*2],bx ;源操作数:寄存器寻址,目的操作数:比例变址

寻址

- - 8

(4) mov [ebx+esi],dx ;源操作数:寄存器寻址,目的操作数: 基址加比例变址寻址

(5) mov eax,[1000h] ;源操作数:直接寻址,目的操作数:寄存器寻址

(6) mov dx,[ebx+esi*8] ;源操作数:基址加比例变址寻址,目的操作数:寄存器寻址

(7) mov edx,eax ;源操作数:寄存器寻址,目的操作数:寄存器寻址

(8) mov dx,[ebp*2+8] ;源操作数: 比例变址加位移寻址,目的操作数:寄存器寻址

(9) mov dx,[ebx+8] ;源操作数: 基址加位移寻址,目的操作数:寄存器寻址

(10) mov ax,[ebx+esi*2+78h] ;源操作数: 基址加比例变址加位移寻址,目的操作数:寄存器寻址

3.3 指出下列指令的错误原因

解:

(1) inc [si] ;目的操作数类型不明确

(2) mov eax,bx ;源操作数和目的操作数类型不匹配

(3) mov 2,ax ;立即数不能作目的操作数

(4) mov [ebx],[edi] ;源操作数和目的操作数不能同时为存储器操作数

(5) mov ax,[bx+bp] ;基址变址寻址方式不能同时为基址寄存器

(6) mov ax,[si+di] ;基址变址寻址方式不能同时为变址寄存器

(7) mov ah,300 ;300超出了ah可以容纳的数据范围

(8) mov cs,1000h ;cs不能由程序员赋值,它由系统自动赋值

(9) push al ;push要求操作数为16位或32位

(10) shl ax,8 ;当移位次数超过1时,先将移位次数送cl,再移位

(11) mov ax,bx+di ;基址变址寻址方式缺少一对方扩号

(12) mov ip,bx ;ip不能由程序员赋值,它由系统自动赋值

(13) mov es,ds ;源操作数和目的操作数不能同时为段寄存器

(14) mov [sp],ax ;入栈只能用push指令实现

3.4 比较下列两条指令,指出他们的区别。

解:

mov eax,[si] ;从内存读数据送eax

mov [si],eax ;把eax的值写入到内存

- -

9

《微机原理与接口技术》课后习题的参考答案

3.5 假设(EAX)=12345678H,写出下面每条指令单独执行后,(EAX)=?

解:

(1) and eax,0000ffffh ;(eax)=00005678h

(2) test eax,1 ;(eax)=12345678h

(3) xor eax,eax ;(eax)=0

(4) sub eax,eax ;(eax)=0

(5) add eax,1 ;(eax)=12345679h

(6) or eax,1 ;(eax)=12345679h

(7) cmp eax,0000ffffh ;(eax)=12345678h

(8) inc eax ;(eax)=12345679h

(9) dec eax ;(eax)=12345677h

(10) sub eax,8 ;(eax)=12345670h

3.6 假定(AX)=1234H,(BX)=00FFH,回答每条指令单独执行后,(AX)=?(BX)=?

解:

(1) and ax,bx ;(ax)=0034h (bx)=00ffh

(2) test ax,bx ;(ax)=1234h (bx)=00ffh

(3) xor ax,bx ;(ax)=12cbh (bx)=00ffh

(4) xchg ax,bx ;(ax)=00ffh (bx)=1234h

(5) add ax,bx ;(ax)=1333h (bx)=00ffh

(6) sub bx,ax ;(ax)=1234h (bx)=0eecbh

(7) or bx,ax ;(ax)=1234h (bx)=12ffh

(8) cmp ax,bx ;(ax)=1234h (bx)= 00ffh

3.7 假设(EAX)=11223344H,(EBX)=11225566H,写出下面程序段每条指令执行后

(EAX)=?(EBX)=?

解:

add eax,ebx ;(eax)=224488aaH,(ebx)=11225566H

add eax,00000088h ;(eax)=22448932H,(ebx)=11225566H sub eax,ebx ;(eax)=112233ccH,(ebx)=11225566H

inc ebx ;(eax)=112233ccH,(ebx)=11225567H

and ebx,0000ffffh ;(eax)=112233ccH,(ebx)=00005567H

- - 10

3.8 已知(DS)=1000H,(BX)=0100H,(SI)=0004H,存储单元[10100H]~[10107H]依次存放11H 22H 33H 44H 55H 66H 77H 88H,[10004H]~[10007H] 依次存放2AH 2BH 2CH 2DH,说明下列每条指令单独执行后AX中的内容。

解:

(1)MOV AX,[0100H] ;(AX)=2211H

(2)MOV AX,[BX] ;(AX)=2211H

(3)MOV AX,[0004H] ;(AX)=2B2AH

(4)MOV AX,[0102H] ;(AX)=4433H

(5)MOV AX,[SI] ;(AX)=2B2AH

(6)MOV AX,[SI+2] ;(AX)=2D2CH

(7)MOV AX,[BX+SI] ;(AX)=6655H

(8)MOV AX,[BX+SI+2] ;(AX)=8877H

3.9 已知(DS)=1000H,(EBX)=0100H,(ESI)=0004H,存储单元[10100H]~[10107H]依次存放11H 22H 33H 44H 88H 77H 66H 55H,[10004H]~[10007H] 依次存放8AH 8BH 8CH 8DH,说明下列每条指令执行后EAX中的内容。

解:

(1)MOV EAX,[0100H] ;(EAX)=44332211H

(2)MOV EAX,[EBX] ;(EAX)=44332211H

(3)MOV EAX,[EBX+4] ;(EAX)=55667788H

(4)MOV EAX,[0004H] ;(EAX)=8D8C8B8AH

(5)MOV EAX,[ESI] ;(EAX)=8D8C8B8AH

(6)MOV EAX,[EBX+ESI] ;(EAX)=55667788H

3.10 什么是堆栈?它的工作原理是什么?它的基本操作有哪两个?

答:

堆栈是在内存RAM中开辟的一段空间,利用“先进后出”或“后进先出”的原则存取数据。如果把数据压入堆栈,则堆栈指针的值是减少的,即所谓的向下生成堆栈。由SS:SP(16位)或SS:ESP(32位)指向栈底(栈空)或栈顶(栈不空)地址。它的基本操作有数据入栈指令PUSH和数据出栈指令POP。

3.11 设SS=1000H,SP=0100H,指出下列每条指令执行后,(AX)=?(BX)=?(SP)=?并且回答堆栈中的内容如何?

解:

MOV AX,2233H ;(AX)=2233H,(BX)不确定,(SP)=0100H

- -

11

《微机原理与接口技术》课后习题的参考答案

PUSH AX ;(AX)=2233H,(BX)不确定,(SP)=00FEH

MOV BX,4455H ;(AX)=2233H,(BX)=4455H,(SP)=00FEH

PUSH BX ;(AX)=2233H,(BX)=4455H,(SP)=00FCH

POP AX ;(AX)=4455H,(BX)=4455H,(SP)=00FEH

POP BX ;(AX)=4455H,(BX)=2233H,(SP)=0100H

这段指令执行后将AX和BX的值互换。

3.12 什么是16位段?它有何特点?

答:

32位微机在上电或复位后,微处理器首先工作在实地址模式,它与8086/80186的工作方式具有相同的基本结构,也只能寻址1MB物理存储空间,分段最大只能是64KB,但是,在实地址模式下,32位X86 CPU可以使用16位寄存器和16位寻址方式,这与8086 CPU兼容,32位X86 CPU还可以使用32位寄存器和32位寻址方式,处理32位数据及执行32位的新增指令,但是,段基地址和偏移量都只用16位,6个段寄存器仍然当作16位的段寄存器使用,对于偏移地址来说,如果是32位,则高16位应该为0,只有低16位偏移地址有效,相当于可以进行32位数处理的快速8086,所以称之为“16位段”。

3.13 什么是32位段?它与16位段的主要区别如何?

答:

32位X86 CPU由实地址模式可以进入保护工作模式,它是一个增强了80286保护模式功能的32位保护工作模式。在保护工作模式下,32位微处理器不仅具有段式存储器管理功能,而且还有页式存储器管理功能,支持虚拟存储器,段基地址和段内偏移量都是32位,称之为“32位段”,使用全部32条地址线,可以寻址的物理存储器达到4GB,只有在保护模式下,32位X86 CPU才能发挥全部功能。而32位段的程序只能在32位

Windows环境中执行。

3.14 16位存储器寻址中,分为哪几种寻址方式?

答:

(1)直接寻址

(2)基址寻址(包括相对基址寻址)

(3)变址寻址(包括相对变址寻址)

(4)基址(加)变址寻址

(5)相对基址(加)变址寻址

- - 12

3.15 32位存储器寻址中,分为哪几种寻址方式?

答:

(1)直接寻址

(2)基址寻址

(3)基址加位移寻址

(4)比例变址寻址

(5)比例变址加位移寻址

(6)基址加比例变址寻址

(7)基址加比例变址加位移寻址

3.16 对于立即寻址的指令,有8位、16位及32位的立即寻址的指令,各列举2条指令(一条是传送指令,另一条是加法指令)。

解:

8位立即寻址指令

(1) MOV AH,2

(2) ADD AL,3

16位立即寻址指令

(1) MOV AX,1234H

(2) ADD DX,3456H

32位立即寻址指令

(1) MOV EAX,12345678H

(2) ADD EDX,12345678H

3.17 用移位指令将ESI中内容移入EDI中,如何实现?

解:

.model small

.386

.code

.startup

mov esi,11223344h

mov edi,12345678h

- -

13

《微机原理与接口技术》课后习题的参考答案

shrd edi,esi,16

rol esi,16

shrd edi,esi,16

.exit

End

3.18 将EBX中存放的值清零,实现的方法有哪一些?

解:

(1) SUB EBX,EBX

(2) AND EBX,0

(3) XOR EBX,EBX

第4章(4.5 习题)1

- - 14

2.将下列程序段所定义字符串中的小写字母均改为大写字母,并放回原处,原大字母不变,最后,用DOS的9号功能显示这串大写字符,请完善下列程序。

.model small

.data

x db ‘Hello EVEryBODY !’,’$’

.code

.startup

解:

程序如下:

- -

15

《微机原理与接口技术》课后习题的参考答案

.model small

.386

.data

x db 'Hello EVEryBODY !','$'

.code

.startup

lea bx,x

.repeat

mov al,[bx]

.if al >= 'a' && al <= 'z'

sub al,20h

mov [bx],al

.endif

inc bx

.until al = = '$'

lea dx,x

mov ah,9

int 21h

.exit

end

3.设变量名VAL1、VAL2及SUM的数据类型属性都是双字属性,VAL1和VAL2中分别存放了一个32位的加数和被加数,SUM用于存放和数。

(1)选用简化段格式编程,实现两个32位数相加,结果存放到SUM变量所指的存储单元。

(2)选用完整段格式编程,实现上述相同的功能。提示:只能使用16数相加。

解:

程序一,简化段格式编程,实现两个32位数相加,结果存放到SUM变量所指的存储单元。

.model small

.386

.data

val1 dd 12345678h

val2 dd 87654329h

sum dd ?

.code

.startup

mov eax,val1

add eax,val2

- - 16

mov sum,eax

.exit

end

程序二,完整段格式编程,实现两个32位数相加,结果存放到SUM变量所指的存储单元。

data segment

val1 dd 12345678h

val2 dd 87654329h

sum dd ?

data ends

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

mov ax,word ptr val1

add ax,word ptr val2

mov word ptr sum,ax

mov ax,word ptr val1+2

add ax,word ptr val2+2

mov word ptr sum+2,ax

mov ah,4ch

int 21h

code ends

end start

4.将数据段内的一串字符传送到附加的数据段内,并将传送到附加数据段内的字符显示出来,要求用完整段和简化段两种格式分别编程实现。

解:

程序一,简化段格式编程,实现将数据段内的一串字符传送到附加的数据段内,并将传送到附加数据段内的字符显示出来。

.model small

.386

.data

x db 'Hello World !','$'

n equ $-x

y db 100 dup(?)

.code

.startup

- -

17

《微机原理与接口技术》课后习题的参考答案

mov ax,ds

mov es,ax

mov cx,n

lea si,x

lea di,y

rep movsb

mov ah,9

lea dx,y

int 21h

.exit

end

注意:在简化段模式编程时,数据段和附加数据段是同一段,在使用字符串指令时,用指令mov ax,ds、mov es,ax将DS和ES保持一致。

程序二,完整段格式编程,实现将数据段内的一串字符传送到附加的数据段内,并将传送到附加数据段内的字符显示出来。

data segment

x db 'Hello World !','$'

n equ $-x

data ends

edata segment

y db 100 dup(?)

edata ends

code segment

assume cs:code,ds:data,es:edata

start:

mov ax,data

mov ds,ax

mov ax,edata

mov es,ax

lea si,x

lea di,y

mov cx,n

rep movsb

mov ah,9

lea dx,y

int 21h

- - 18

mov ah,4ch

int 21h

code ends

end start

5.设有一个数组存放了40名学生的成绩(0~100分),设数组位于变量名为SCORS 的存储单元,编程统计0~59分、60~69分、70~79分、80~89分及90~100分的人数,并分别存放到SCOREE、SCORED、SCOREC、SCOREB、SCOREA存储单元中。

解:

程序一,简化段格式编程

.model small

.386

.data

score db 90,23,56,67,98,78,10,45,87,100

db 65,78,89,100,45,30,99,69,59,60

db 0,59,60,69,70,79,80,89,90,99

db 100,61,68,71,78,81,88,91,98,0

n=$-score

scoree db 0

scored db 0

scorec db 0

scoreb db 0

scorea db 0

.code

.startup

lea si,score

mov cx,n

mov dl,10

.while cx != 0

mov ah,0

mov al,[si]

div dl

sub al,5

.if sbyte ptr al <= 0

inc byte ptr scoree

.else

mov ah,0

.if al == 5

- -

19

《微机原理与接口技术》课后习题的参考答案

mov al,4

.endif

mov bx,ax

inc byte ptr scoree[bx]

.endif

inc si

dec cx

.endw

.exit

end

程序二,完整段格式编程

data segment

score db 90,23,56,67,98,78,10,45,87,100

db 65,78,89,100,45,30,99,69,59,60

db 0,59,60,69,70,79,80,89,90,99

db 100,61,68,71,78,81,88,91,98,0

n=$-score

scoree db 0

scored db 0

scorec db 0

scoreb db 0

scorea db 0

data ends

code segment 'code'

assume cs:code,ds:data

start: mov ax,data

mov ds,ax

lea si,score

mov cx,n

mov dl,10

class: mov ah,0

mov al,[si]

div dl

sub al,5

jg great

inc byte ptr scoree

jmp next

- - 20

微机原理习题集以及答案

第一部分 例题与习题 第1章 微型计算机基础 例 题 1.把十进制数转化为二进制数。P7 解:把十进制数转换成二进制数时,需要对一个数的整数部分和小数部分分别进行处理,得出结果后再合并。 整数部分:一般采用除2取余法 小数部分:一般采用乘2取整法 余数 低位 整数 高位 2 | 137 2 | 68 × 2 2 | 34 2 | 17 × 2 2 | 8 2 | 4 × 2 2 | 2 1 高位 低 位 (137)10=()2 10=2 所以,10=(.111)2 2.把二进制数转换为八进制数和十六进制数。P9 解:八进制、十六进制都是从二进制演变而来,三位二进制数对应一位八进制数,四位二进制数对应一位十六进制数,从二进制向八进制、十六进制转换时,把二进制数以小数点为界,对小数点前后的数分别分组进行处理,不足的位数用0补足,整数部分在高位补0,小数部分在低位补0。 (10 1)2=(010 100)2=8 (1 2=(0001 2=16 3.将八进制数转换为二进制数。P9 解:8=(010 100)2=2 4.X=,Y=-,求[X -Y]补,并判断是否有溢出P11 解:[X -Y]补=[X]补+[-Y]补 [X]补= [Y]补= [-Y]补= + -------------- 1 -------------- 0 -------------- 0 -------------- 1 -------------- 0 -------------- 0 -------------- 0 -------------- 1 ------------- 1 ------------- 1 ------------- 1

微机原理试题及答案

1 一、选择题(20分,在每小题的4个备选答案中选出一个正确的答案编号填写在该题空白处,每题2分) 1.指令MOV DX,[BX]的寻址方式是 D 。 (A)立即寻址(B)直接寻址(C)寄存器寻址(D)寄存器间接寻址2.若AL的内容为3FH,执行SHL AL,1指令后,AL的内容为 A 。 (A)7EH (B)1FH (C)9FH (D)7FH 解析:shl al ,1 即目的操作数各位左移一次,移动一次,相当于将目的操作数乘以2。3fh=63 63*2=126 126=7eh 故选A 3.属于在工作中需定时刷新的存储器的芯片是 B 。 (A)SRAM (B)DRAM (C)EEPROM (D)EPROM 4.某EPROM芯片上有19条地址线A 0~A 18 ,它的容量为 C 。 (A)128K (B)256K (C)512K (D)1024K 5.8086/8088CPU的SP寄存器是多少位的寄存器 B 。 (A)8位(B)16位(C)24位(D)32位 6.在STOSB指令执行的时候,隐含着寄存器的内容作为操作数的偏移地址, 该寄存器是 D 。 (A)SP (B)BX (C)SI (D)DI 解析:stos数据串存储指令功能:将累加器al或ah中的一个字或字节,传送到附加段中以di为目标指针的目的串中,同时修改di,以指向串中的下一个单元。 7.8255工作在方式0时,下面哪种说法不正确 C 。 (A)A口输入无锁存能力(B)A、B口输出有锁存能力 (C)C口输入有锁存能力(D)A、B、C三个口输出均有锁存能力 解析:对于方式0,规定输出信号可以被锁存,输入不能锁存 8.采用DMA方式来实现输入输出是因为它 A 。 (A)速度最快(B)CPU可不参与操作(C)实现起来比较容易(D)能对突发事件做出实时响应 9.工作在最小模式下,8086/8088CPU芯片中,将地址信号锁存的信号是 C 。 (A)DT/R (B)DEN (C)ALE (D)AEN 10.在LOOP指令执行的时候,隐含着对计数器减1的操作,该计数器是用寄存 器 C 。 (A)AX (B)BX (C)CX (D)DX 解析:loop:循环指令。指令执行前必须事先见重复次数放在cx寄存器中,每执行一次loop指令,cx自动减1。 二、填空题(每小题2分,共10分) 1.两个无符号数相等,该两数相减后ZF标志= 1 。解析:zf: 全零标志位。本次运算结果为0时,zf=1,否则zf=0。 2.执行LODSB后,SI的内容较该指令执行前增加1,说明DF= 0 。

微机原理课后作业答案第五版

第一章 6、[+42]原=00101010B=[+42]反=[+42]补 [-42]原 [-42]反 [-42]补 [+85]原=01010101B=[+85]反=[+85]补 [-85]原 [-85]反 [-85]补 10、微型计算机基本结构框图 微处理器通过一组总线(Bus)与存储器和I/O接口相连,根据指令的控制,选中并控制它们。微处理器的工作:控制它与存储器或I/O设备间的数据交换;进行算术和逻辑运算等操作;判定和控制程序流向。 存储器用来存放数据和指令,其内容以二进制表示。每个单元可存8位(1字节)二进制信息。 输入——将原始数据和程序传送到计算机。 输出——将计算机处理好的数据以各种形式(数字、字母、文字、图形、图像和声音等)送到外部。 接口电路是主机和外设间的桥梁,提供数据缓冲驱动、信号电平转换、信息转换、地址译码、定时控制等各种功能。 总线:从CPU和各I/O接口芯片的内部各功能电路的连接,到计算机系统内部的各部件间的数据传送和通信,乃至计算机主板与适配器卡的连接,以及计算机与外部设备间的连接,都要通过总线(Bus)来实现。 13、8086有20根地址线A19~A0,最大可寻址220=1048576字节单元,即1MB;80386有32根地址线,可寻址232=4GB。8086有16根数据线,80386有32根数据线。

1、8086外部有16根数据总线,可并行传送16位数据; 具有20根地址总线,能直接寻址220=1MB的内存空间; 用低16位地址线访问I/O端口,可访问216=64K个I/O端口。 另外,8088只有8根数据总线 2、8086 CPU由两部分组成:总线接口单元(Bus Interface Unit,BIU) BIU负责CPU与内存和I/O端口间的数据交换: BIU先从指定内存单元中取出指令,送到指令队列中排队,等待执行。 执行指令时所需的操作数,也可由BIU从指定的内存单元或I/O端口中获取,再送到EU去执行。 执行完指令后,可通过BIU将数据传送到内存或I/O端口中。 指令执行单元(Execution Unit,EU) EU负责执行指令: 它先从BIU的指令队列中取出指令,送到EU控制器,经译码分析后执行指令。EU的算术逻辑单元(Arithmetic Logic Unit,ALU)完成各种运算。 6、见书P28-29。 7.(1) 1200:3500H=1200H×16+3500H=15500H (2) FF00:0458H=FF00H×16+0458H=FF458H (3) 3A60:0100H=3A80H×16+0100H=3A700H 8、(1)段起始地址 1200H×16=12000H,结束地址 1200H×16+FFFFH=21FFFH (2)段起始地址 3F05H×16=3F050H,结束地址 3F05H×16+FFFFH=4F04FH (3)段起始地址 0FFEH×16=0FFE0H,结束地址 0FFEH×16+FFFFH=1FFD0H 9、3456H×16+0210H=34770H 11、堆栈地址范围:2000:0000H~2000H(0300H-1),即20000H~202FFH。执行 两条PUSH指令后,SS:SP=2000:02FCH,再执行1条PUSH指令后,SS: SP=2000:02FAH。 12、(2000H)=3AH, (2001H)=28H, (2002H)=56H, (2003H)=4FH 从2000H单元取出一个字数据需要1次操作,数据是 283AH; 从2001H单元取出一个字数据需要2次操作,数据是 5628H; 17、CPU读写一次存储器或I/O端口的时间叫总线周期。1个总线周期需要4个系统时钟周期(T1~T4)。8086-2的时钟频率为8MHz,则一个T周期为125ns,一个总线周期为500ns,则CPU每秒最多可以执行200万条指令。

微机原理课后练习题-答案

1、 2、B 3、十,非压缩的BCD码 4、 5、微型计算机、微型计算机系统 6、,, 二、 B D B 三、 1、微型计算机系统的基本组成。 答案:以微型计算机为主体,配上相应的系统软件、应用软件和外部设备之后,组成微型计算机系统。 2、简述冯.诺依曼型计算机基本组成。 答案:冯.诺依曼型计算机是由运算器,控制器,存储器,输入设备和输出设备组成的。其中,运算器是对信息进行加工和运算的部件;控制器是整个计算机的控制中心,所以数值计算和信息的输入,输出都有是在控制器的统一指挥下进行的;存储器是用来存放数据和程序的部件,它由许多存储单元组成,每一个存储单元可以存放一个字节;输入设备是把人们编写好的程序和数据送入到计算机内部;输出设备是把运算结果告知用户。 3、什么是微型计算机 答案:微型计算机由CPU、存储器、输入/输出接口电路和系统总线构成。 4、什么是溢出 答案:在两个有符号数进行家减运算时,如果运算结果超出了该符号数可表示的范围,就会发生溢出,使计算出错。

1、4、100ns 2、Ready ,Tw(等待) 3、ALE 4、INTR 5、85010H 6、存储器或I/O接口未准备好 7、非屏蔽中断 8、指令周期 9、4 二、 1、在内部结构上,微处理器主要有那些功能部件组成 答案:1) 算术逻辑部件2) 累加器和通用寄存器组 3) 程序计数器4) 时序和控制部件 2、微处理器一般应具有那些基本功能 答案:1.可以进行算术和逻辑运算2.可保存少量数据 3.能对指令进行译码并完成规定的操作4.能和存储器、外部设备交换数据 5.提供整个系统所需的定时和控制6.可以响应其他部件发来的中断请求 3、什么是总线周期 答案:CPU通过外部总线对存储器或I/O端口进行一次读/写操作的过程;一个基本的总线周期包含4个T状态,分别称为T1、T2、T3、T4。 三、×、×、×、×、×、√、√

微机原理习题及答案

一、选择 1、在微型计算机中,微处理器的主要功能是进行( )。 D A、算术运算 B、逻辑运算 C、算术、逻辑运算 D、算术、逻辑运算及全机的控制 2、Pentium I属于()位CPU C A、16 B、8 C、32 D、64 3、Intel 8086属于()位CPU A A、16 B、8 C、32 D、64 4、CPU与I/O设备间传送的信号通常有( ) D A、控制信息 B、状态信息 C、数据信息 D、以上三种都有 5、存储器用来存放计算机系统工作时所需要的信息,即( )。 D A、程序 B、数据 C、技术资料 D、程序和数据 6、运算器的核心部件是( )。 D A、加法器 B、累加寄存器 C、多路开关 D、算逻运算单元 二、填空 1、内存可分为2大类:随机存储器RAM 和 2、数据总线是向的,地址总线是向的。 3、计算机的五大部件是:、、、、输出设备 4、总线可分为三类:、、 5、存储程序工作原理最先由提出 6、在计算机内部,一切信息的存取、处理和传送都是以形式进行的。 1、只读存储器ROM 2、双、单 3、运算器、控制器、存储器、输入设备 4、地址总线、数据总线、控制总线 5、冯·诺依曼 6、二进制 三、简答 1、冯·诺依曼型计算机的特点是什么? (1).以二进制表示指令和数据 (2).程序和数据存放在存储器中,从存储器中取指令并执行 (3).由运算器、控制器、存储器、输入设备、输出设备构成计算机硬件系统。 一、选择 1、在机器数______中,零的表示形式是唯一的()。BD A、原码 B、补码 C、反码 D、移码 2、计算机内部表示带符号整数通常采用()。C A、原码 B、反码 C、补码 D、移码

微机原理与应用试题库(附答案)

《微机原理及应用》试题库 1. 8086 和 8088 的引脚信号中,D为地址锁存允许信号引脚。 A. CLK B. INTR C.NMI D.ALE 2.下面的哪项是有效标识符:B A . 4LOOP : B. DELAYIS : C. MAIN A/ B : D.GAMA$1 : 3.如图所示的三态输出电路,当 A 时, V B≈V DD。 A. E(ENABLE)=1, A=1 B.E(ENABLE)=1, A=0 C. E(ENABLE)=0, A=1 D.E(ENABLE)=0, A=0 4. 设 (SS)=2000H , (SP)=0100H , (AX)=2107H ,则执行指令PUSH AX后,存放数据21H 的物理地址是 D。 A. 20102H B. 20101H C. 200FEH D. 200FFH 5. 汇编语言中,为了便于对变量的访问, 它常常以变量名的形式出现在程序中, 可以认为它是存放数据存储单元的A。 A.符号地址B.物理地址C.偏移地址 D .逻辑地址 6. 下列四个寄存器中,不能用来作为间接寻址方式的寄存器是A。 A. CX B. BX C. BP D. DI (C)7. 执行下列程序段: MOV AX ,0 MOV BX ,1 MOV CX , 100 AA : ADD AX ,BX INC BX LOOP AA HLT 执行后的结果:(AX)=,(BX)=。 A. 5050 , 99 B. 2500, 100 C. 5050 , 101 D. 2550 , 102 8. 假设 V1 和 V2 是用 DW 定义的变量,下列指令中正确的是A。 A . MOV V1, 20H B. MOV V1, V2 C . MOV AL, V1D. MOV2000H, V2 9. –49D 的二进制补码为A。

最新微机原理习题与答案

微机原理习题与答案

微机原理习题与答案 第一章微机基础 1-1微处理器、微机与微机系统三者之间有什么不同? 答: 微处理器一般也称为CPU,它本身具有运算能力和控制功能。微型计算机是由CPU、存储器、输入/输出接口电路和系统总线构成的裸机系统。微型计算机系统是以微型计算机为主机,配上系统软件和外设之后而构成的计算机系统。微处理器是微型计算机的一组成部分,而微型计算机又是微型计算机系统的一组成部分。 1-2 CPU在内部结构上由那几部分组成? 答:8位CPU在内部结构上由寄存器阵列、算术逻辑运算单元ALU、控制器和内部总线及缓冲器等部分组成。 1-3总线接口部件有哪些功能? 8086的执行部件有什么功能? 答:总线接口部件的功能是负责与存储器、I/O端口传送数据。 执行部件的功能是负责指令的执行。 1-4 8086/8088的状态标志和控制标志分别有哪些? 答:8086/8088的状态标志有6个:CF、AF、SF、PF、OF、ZF,控制标志有3个:TF、DF、IF。 1-5 8086/8088和传统的8位计算机相比在执行指令方面有什么不同?这样的设计思想有什么优点? 答:8位饥是取一条指令,执行一条,再取,再执行; 8088执行时,取指与执行几乎是同时进行的。

1-6 8086/088微处理器中有哪些寄存器?通用寄存器中哪些可以作地址指针用? 答:8086/8088各有14个寄存器,它们可分为3组: (1)四个通用寄存器和四个变址和指针寄存器,即AX,BX,CX,DX,SP,BP,SI,DI。 (2)四个段寄存器,即CS,DS,SS,ES。 (3)两个控制寄存器,即IP,FR。 1-7 8086/8088 20位物理地址是怎么样形成的?当CS=2000H, IP=0100H,其指向的物理地址等于多少? 答:物理地址=段地址×16+段内偏移地址。 20100 2-1 试述8088微处理器的各种寻址方式,并写出各种寻址方式的传送指令1~~2条(源操作数寻址与目的操作数寻址) 答:立即寻址,寄存器寻址,直接寻址,寄存器间接寻址,变址寻址,基址加变址寻址。 第三章汇编语言程序设计 3-2指令AND AX,X AND Y中X和Y是两个已赋值的常量,问:两个AND操作分别在什么时间进行?功能上有何区别? 答:指令中的X AND Y操作在程序汇编时进行,该操作完成后得到一个数,即为指令中的第二操作数。由此得到“AND AX,立即数”这样形式的一条指令,由汇编器将其翻译为机器码。该指令中的AND操作由CPU在执行指令时完成,结果存于AX中,并影响F寄存器。 3-3指出以下三条指令的区别(NUM为数据段一个变量名)。

微机原理习题解答

第一章微型计算机的基础知识 1-1 将下列十进制数转换为二进制数、十六进制数。 (1)110 (2)1 039 (3)0.75 (4)0.156 25 1-2 将下列十进制数转换为BCD 码。 (1)129 (2)5 678 (3)0.984 (4)93.745 1-3 将下列二进制数转换为十进制数、十六进制数。 (1)10101010 (2)10000000 (3)11000011.01 (4)01111110 1-4 将下列十六进制数转换为二进制数、十进制数。 (1)8E6H (2)0A42H (3)7E.C5H (4) 0F19.1DH 1-5 将下列二进制数转换为BCD 码。 (1)1011011.101 (2)1010110.001 1-6 将下列BCD 码转换为二进制数。 (1)(0010 0111 0011) BCD (2)(1001 0111.0010 0101) BCD 1-7 完成下列二进制数的运算。 (1)1001.11+11.11 (2)1101.01-0110.11 (3)1000.011-1001.101 (4)1111+1101 1-8 完成下列十六进制数的运算。 (1)6AH+0A6H (2)0AB1FH+0EFCH (3)12ADH-1DEH (4)117H-0ABH 1-9 已知X=01H,Y=0FFH ,在下面的情况下比较两数的大小。 (1)无符号数 (2)符号数 (均为补码) 1-10 计算下列各表达式。 (1)101+‘A’+01101001B+0D5H+57Q (2)127.8125+10111101.101+375.63Q+1FC.8AH 1-11 写出下列字符串的ASCII 码。 (1)HELLO (2)A8=

《微机原理》复习题及解答

微机原理》复习题解答 1、在8086/8088系统中,存储器是怎样组织的?整个存储空间有多大?最大逻辑长度为多大?至少可将存储器分为多少个段?段起始于什么位置?偏移地址是什么?怎样计算20位物理地址? ①分段组织②1兆字节③64K字节④至少分成16段⑤起始于最后四位二进制数都为0的位置⑥偏移地址是相当于段起始位置的偏移量⑦段地址×16+偏移地址 2、系统总线分为哪几组?各自传送的方向如何? ①分成3组:数据部线、地址总线、控制总线②数据总线和控制总线都是双向的,地址总线始终由CPU发出 3、8086微处理器分为哪几个部分?它们之间采用什么工作方式?其中状态寄存器由几类标志组成?与中断有关的是哪一位? ①分成2部分:总线接口部件、执行部件②并行工作方式③2类:状态标志、控制标志④IF 位,IF置1,响应外部可屏蔽中断 4、怎样将8086设置为最小或最大模式?分别应配置哪些外围器件?作用怎样?最大模式与最小模式的配置相比多了什么器件?作用是什么? ①引脚接高电平则设置为最小模式,如接低电平则设置为最大模式②最小模式下:1片8248A,作为时钟发生器;3片8282或74LS373,用来作为地址锁存器;2片8286/8287作为总线收发器。最大模式下:1片8284A,3片8282,2片8286,1片8288总线控制器,1片8259A及有关电路③8284A除了提供频率恒定的时钟信号外,还对准备发(READY)和(RESET)信号进行同步。8282:地址/数据总线是复用的,而和S7也是复用的,所以在总路线周期前一部分时间中输出地址信号和信号的引脚,在总线周期的后一部分时间中改变了含义。因为有了锁存器对地址和进行锁存,所以在总线周期的后半部分,地址和数据同时出现在系统的地址总线和数据总线上;同样,此时也在锁存器输出端呈现有效电平,于是确保了CPU对存储器和I/O端口的正常读/写操作。8286/8287:当系统中所连的存储器和外设较多时,需要增加数据总线的驱动能力。④多了1片8288。作用:对CPU 发出的S0,S1,S2控制信号进行变换和组合,以得到对存储器和I/O端口的读/写信号和对锁存器8282及对总线收发器8286的控制信号。 5、8086/8088系统中为什么将数据与地址总线复用? 因为数据线与地址线传送时间不一样,在总线周期T1传送地址,其他时刻传送数据,传送数据和地址时间是分离的,所以8086/8088系统中能将数据线与地址线复用。 6、CPU从奇地址或偶地址读写一个字(或字节)时,和A0是什么电平?分别用几个总线周期? A0 操作总线周期 0 0 从偶地址开始读/写一个字1个 1 0 从偶地址单元或端口读/写一个字节1 个 0 1 从奇地址单元或端口读/写一个字节1个 1 1 0 从奇地址开始读/写一个字2个(在第一总线周期,将低8位数据送到AD15—AD8,在第二个总线周期,将高8位数据送到AD7—AD0) 7、CPU的READY和RESET信号有什么作用?

(完整版)微机原理课后习题参考答案

第一章 2、完成下列数制之间的转换。 (1)01011100B=92D (3)135D=10000111B (5)10110010B=262Q=B2H 3、组合型BCD码和非组合型BCD码有什么区别?写出十进制数254的组合型BCD数和非组合型数。 答:组合型BCD码用高四位和低四位分别对应十进制数的个位和十位,其表示范围是0~99;非组合型BCD码用一个字节的低四位表示十进制数,高四位则任意取值,表示范围为0~9。 组合型:254=(001001010100)BCD 非组合型:254=(00000010 00000101 00000100)BCD 7、计算机为什么采用补码形式存储数据?当计算机的字长n=16,补码的数据表示范围是多少? 答:在补码运算过程中,符号位参加运算,简化了加减法规则,且能使减法运算转化为加法运算,可以简化机器的运算器电路。+32767~ -32768。 9、设计算机字长n=8,求下列各式的[X+Y]补和[X-Y]补,并验证计算结果是否正确。 (1)X=18,Y=89 [X+Y]补=00010010+01011001=01101011B=107D 正确 [X-Y]补=10111001B=00010010+10100111=(-71D)补正确 (2)X=-23,Y=-11 [X+Y]补=11101001+11110101=11011110B=(-34D)补正确[X-Y]补=11101001+00001011=11110100B=(-12D)补正确 (3)X=18,Y=-15 [X+Y]补=00010010+11110001=00000011B=(3D)补正确 [X-Y]补=00010010+00001111=00100001B=(33D)补正确 (4)X=-18,Y=120 [X+Y]补=11101110+01111000=01100110B=(102D)补正确[X-Y]补=11101110+10001000=01110110B=(123D)补由于X-Y=-138 超出了机器数范围,因此出错了。 13、微型计算机的主要性能指标有哪些? 答:CPU字长、存储器容量、运算速度、CPU内核和IO工作电压、制造工艺、扩展能力、软件配置。 第二章 2、8086标志寄存器包含哪些标志位?试说明各标志位的作用。 答:进位标志:CF;奇偶校验:PF;辅助进位:AF;零标志:ZF;符号标志:SF;溢出标志:OF。 5、逻辑地址与物理地址有什么区别?如何将逻辑地址转换为物理地址? 答:物理地址是访问存储器的实际地址,一个存储单元对应唯一的一个物理地址。逻辑地址是对应逻辑段内的一种地址表示形式,它由段基址和段内偏移地址两部分组成,通常表示为段基址:偏移地址。 物理地址=段基址*10H+偏移地址。 6、写出下列逻辑地址的段基址、偏移地址和物理地址。 (1)2314H:0035H (2)1FD0H:000AH 答:(1)段基址:2314H;偏移地址:0035H;物理地址:23175H。 (2)段基址:1FD0H;偏移地址:000AH;物理地址:1FD0AH。 8、设(CS)=2025H,(IP)=0100H,则当前将要执行指令的物理地址是多少? 答:物理地址=(CS)*10H+(IP)=20350H 9、设一个16字的数据区,它的起始地址为70A0H:DDF6H(段基址:偏移地址),求这个数据区的首字单元和末字单元的物理地址。

(完整版)微机原理及接口技术(习题答案)

范文范例学习指导 第1章微机运算基础 习题和思考题 1.请完成以下计算: 174.66D=(10101110.10101)B=(AE. A8)H 10101110101.01011B=(1397.344)D=(575.58)H 4BCH=(010*********)B=()BCD 2.设字长为8位,X=(2A)16,当X分别为原码、补码、反码和无符号数的时候,其真值 是多少? 答:当X表示原码时,其真值为:+101010 当X表示补码时,其真值为:+101010 当X表示反码时,其真值为:+101010 当X表示无符号数数时,其真值为:00101010 3.设字长为8位,用补码形式完成下列计算,要求有运算结果并讨论是否发生溢出? 120+18 -33-37 -90-70 50+84 答:120+18 其补码形式分别为:(120)补=01111000 (18)补=00010010 01111000 + 00010010 10001010 由于C s=0 ,C p=1,因此有溢出,结果错误 -33-37 其补码形式为:(-33)补=11011111 (-37)补=11011011 11011111 +11011011 10111010 由于C s=1, C p=1,所以没有溢出,结果正确 -90-70 其补码形式为:(-90)补=10011100 (-70)补=10111010 10011100 +10111010 01010110 由于C s=1, C p=0,所以有溢出,结果错误 50+84

其补码形式为:(50)补=00110010 (84)补=01010100 00110010 +01010100 10000110 由于C s=0, C p=1,所以有溢出,结果错误 4.请写出下列字符串的ASCII码值。 My name is Zhang san. 4D 79 6E 61 6D 65 69 73 5A 68 61 6E 67 73 61 6E 2E 第2章 80X86微机系统 习题与思考题 1.微型计算机主要由哪些基本部件组成?各部件的主要功能是什么? 答:微型计算机主要由输入设备、运算器、控制器、存储器和输出设备组成。 各部件的功能分别是:1、输入设备通过输入接口电路将程序和数据输入内存;2、运算器是进行算术运算和逻辑运算的部件,它是指令的执行部件;3、控制器是计算机的指挥中心,它负责对指令进行译码,产生出整个指令系统所需要的全部操作的控制信号,控制运算器、存储器、输入/输出接口等部件完成指令规定的操作;4、存储器用来存放程序、原始操作数、运算的中间结果数据和最终结果数据; 5、输出设备是CPU通过相应的输出接口电路将程序运行的结果及程序、数据送到的设备; 2.微处理器的发展过程是什么? 答:微型计算机的发展过程是: 第一代(1946~1957)——采用电子管为逻辑部件,以超声波汞延迟线、阴极射线管、磁芯和磁鼓等为存储手段;软件上采用机器语言,后期采用汇编语言。 第二代(1957~1965)——采用晶体管为逻辑部件,用磁芯、磁盘作内存和外存;软件上广泛采用高级语言,并出现了早期的操作系统。 第三代(1965~1971)——采用中小规模集成电路为主要部件,以磁芯、磁盘作内存和外存;软件上广泛使用操作系统,产生了分时、实时等操作系统和计算机网络。 第四代(1971~至今)——采用大规模集成电路(LSI)、超大规模集成电路(VLSI)为主要部件,以半导体存储器和磁盘为内、外存储器;在软件方法上产生了结构化程序设计和面向对象程序设计的思想。 3.简述80486微处理器的基本结构。 书12页 4.80486微处理器的工作模式有几种?当CS内容为1000H,IP内容为7896H,求在实地址 模式下的物理地址为多少? 答:实模式和保护模式及虚拟8086模式。当CS内容为1000H,IP内容为7896H,在实地

微机原理试题及答案

微机原理试题及答案 微机原理试题及答案 一、填空题(每空1分,共15分) 1、在计算机中,对带符号数的运算均采用补码。带符号负数1100 0011的补码为_10111101_。2、单片机通常采用“三总线”的应用模式,芯片内部设有单独的地址总线、数据总线_ 和控制总线。 3、当使用80C51单片机时,需要扩展外部程序存储器,此时EA应为_0__。 4、若(A)=B3H,(R0)=A8H,执行指令XRL A,R0之后,(A)=_1BH__。 5、在80C51单片机中,带借位减法SUBB指令中,差的D7需借位时,_CY_=1,差的D3需借位时,AC_=1。 6、80C51单片机中,在调用子程序前,用_PUSH__指令将子程序中所需数据压入堆栈,进入执行子程序时,再用___POP__指令从堆栈中弹出数据。 7、在十六进制数与ASCII码值的转换过程中,当十六进制数在0~9之间时,其对应的ASCII码值为该十六进制数加___30H______。 8、外部中断INT0和INT1有两种触发方式:___电平触发方式_____和__边沿触发方式__。 9、在单片机串行通信中,依发送与接收设备时钟的配置情况,串行通信可以分为 __异步通信___和__同步通信_。10、若累加器A中的数据为

0111 0010B,则PSW中的P=__0___。二、选择题(每题1分,共15分) 1、单片机是在一片集成电路芯片上集成了以下部分,除了( D ) A、微处理器 B、存储器 C、I/O接口电路 D、串口通信接口2、一个机器周期包含多少个晶振周期(D ) A、2 B、6 C、8 D、12 3、80C51单片机有21个特殊功能寄存器,其中与串行口相关的有以下几个,除了( B ) A、SBUF B、TCON C、SCON D、PCON 4、 80C51系列单片机具有4个8位的并行I/O口,其中哪个口工作时需要外接上拉电阻(A ) A、P0 B、P1 C、P2 D、P3 5、寄存器中的内容为地址,从该地址去取操作数的寻址方式称为( C ) A、寄存器寻址 B、直接寻址 C、寄存器间接寻址 D、变址寻址6、源地址为1005H。目的'地址为 0F87H。当执行指令“JC rel”时,rel为( B )。A、7EH B、80H C、82H D、84H 7、若(R0)=30H,(30H)=75H,(75H)=90H,执行指令MOV A,@R0后,(A)=__B____。A、30H B、75H C、90H D、00H 8、下列哪个语句是起始地址设置伪指令( A )。A、ORG B、END C、DW D、EQU 9、在80C51单片机中,各中断优先级最低的是( D )。A、外部中断0 B、外部中断1 C、定时器0 D、计数器1 10、80C51单片机的中断响应时间至少需要( C )个完整的机器周期。A、1 B、2 C、3 D、5 11、在80C51单片机中,

微机原理试题及答案 (1)

学年第学期微机原理及应用(A)课程试卷 卷16 班级姓名得分任课教师 一、选择题:(每题分,共18分) 1、DMAC向CPU发出请求信号,CPU响应并交出总线控制权后将( 3)。 反复执行空操作,直到DMA操作结束 进入暂停状态, 直到DMA操作结束 进入保持状态, 直到DMA操作结束 进入等待状态, 直到DMA操作结束 2、有一个实时数据采集系统,要求10ms进行一次数据采集,然后进行数据 处理及显示输出,应采用的数据传送方式为( 3 )。 无条件传送方式查询方式 中断方式直接存储器存取方式 3、在数据传送过程中,数据由串行变并行,或由并行变串行的转换可通过 (3 )来实现。 计数器寄存器移位寄存器 D触发器 4、8088 CPU输入/输出指令可寻址外设端口的数量最大可达(4 )个。 128 256 16K 64K 5、CPU响应中断后,通过( 4)完成断点的保护。 执行开中断指令执行关中断指令 执行PUSH指令内部自动操作 6、并行接口芯片8255A具有双向数据传送功能的端口是(1 )。 PA口PB口 PC口控制口 7、8088CPU处理动作的最小时间单位是(2 )。 指令周期时钟周期机器周期总线周期8.堆栈是内存中(4 )。 先进先出的ROM区域后进先出的ROM区域 先进先出的RAM区域后进先出的RAM区域

9、计算机中广泛应用的RS-232C实质上是一种(3 )。 串行接口芯片串行通信规程(协议) 串行通信接口标准系统总线标准 5--1 10、高速缓冲存储器(CACHE)一般是由( 1 )芯片组成。 SRAM DRAM ROM EPROM 11、鼠标器是一种(3 )。 手持式的作图部件手持式的光学字符识别设备 手持式的座标定位部件手持式扫描器 12、传送速度单位“bps”的含义是( 2 )。 bytes per second bits per second baud per second billion bytes per second 二、填空题:(每空1分,共12分) 1、CPU在响应中断后,自动关中。为了能实现中断嵌套,在中断服务程序中, CPU必须在保护现场后,开放中断。 2、在计算机运行的过程中,有两股信息在流动,一股是数据,另 一股则是控制命令。 3、指令MOV BX,MASK[BP]是以 ss 作为段寄存器。 4、指令REPE CMPSB停止执行时,表示找到第一个不相等的字符 或 CX=0 。 5、设CF=0,(BX)= 7E15H,(CL)= 03H,执行指令 RCL BX,CL后, (BX) = ,(CF)=,(CL)=。0F0A9H 1 3 6、在8088 CPU中,一个总线周期是 CPU从存储器或I/O端口存取一个字 节的时间。 8253定时/计数器有 3 个独立的16位计数器,每个计数器都可按二进制或 bcd 来计数。 三、程序设计(共40分) 1.(10分)假设X和X+2单元与Y和Y+2单元中分别存放的是两个双

微机原理习题答案6

微机原理习题答案6 6.1 为什么外设与计算机的连接不能象存储器那样直接挂到总线上? 答:因为外设的种类繁多,信号的形式和时序也各式各样,一般都不能与总线匹配,因此,不能象存储器那样直接挂到总线上。而存储器的信号和时序与CPU总线匹配,可以直接挂到总线上。 6.2 接口电路的信息分为哪几类?接口电路的基本结构有哪些特点? 答:接口电路与外设交互的信息可分为数据信息、状态信息和控制信息共计三类。 接口电路的基本结构的特点参见教材P202,图6.2。 6.3 CPU与外设交换数据的传送方式可分为哪几种?试简要说明它们各自的特点。 答:CPU与外设交换数据的传送方式可分为:无条件方式、查询方式、中断方式和DMA方式等四种。 各种传送方式的特点:略 6.4 在CPU与外设之间的数据接口上一般加有三态缓冲器,其作用如何? 答:CPU三总线是多个总线设备(部件)分时共用的,每个总线设备占用总线的时间以总线周期为单位,很短!!!而外设输入的信号变化比较慢,使用三态缓冲器可以把外设输入的低速信号与高速总线隔离开来。只有在CPU访问该外设的总线周期间打开三态缓冲器,让外设输入的信号驱动总线、输入数据,而其它时间三态缓冲器则处于高阻状态,不干扰总线的运行。 6.8 CPU响应中断有哪些条件?为什么需要这些条件? 答:CPU响应中断条件: 1)IF=1,CPU允许中断 2)当前指令执行完毕。 为什么需要这些条件, 1)CPU采样到INTR信号后,是否响应它,还要由IFF触发器的状态控制,只有当 IFF=1时,才能响应中断,所以需要CPU开放中断。 2)指令是程序的最小单位,不可能被中断和拆散,所以必须等当前指令执行完毕。 6.10用方框图形式说明查询式输入和查询式输出的程序流程。 6.13 什么是中断向量?

微机原理习题集以及答案

1 第一部分 例题与习题 第1章 微型计算机基础 1.1 例 题 1.把十进制数137.875转化为二进制数。P7 解:把十进制数转换成二进制数时,需要对一个数的整数部分和小数部分分别进行处理,得出结果后再合并。 整数部分:一般采用除2取余法 小数部分:一般采用乘2取整法 余数 低位 整数 高位 2 | 137 0.875 2 | 68 × 2 2 | 34 1.750 2 | 17 × 2 2 | 8 1.500 2 | 4 × 2 2 | 2 1.000 1 高位 低位 (137)10=(10000111) 2 (0.875)10=(0.1101)2 所以,(137.875)10=(10001001.111)2 2.把二进制数10011.0111转换为八进制数和十六进制数。P9 解:八进制、十六进制都是从二进制演变而来,三位二进制数对应一位八进制数,四位二进制数对应一位十六进制数,从二进制向八进制、十六进制转换时,把二进制数以小数点为界,对小数点前后的数分别分组进行处理,不足的位数用0补足,整数部分在高位补0,小数部分在低位补0。 (10 011.011 1)2=(010 011.011 100)2=(23.34)8 (1 0011.0111)2=(0001 0011.0111)2=(13.7)16 3.将八进制数23.34转换为二进制数。P9 解:(23.34)8=(010 011.011 100)2=(10011.0111)2 4.X=0.1010,Y=-0.0111,求[X -Y]补,并判断是否有溢出?P11 解:[X -Y]补=[X]补+[-Y]补 [X]补=0.1010 [Y]补=1.1001 [-Y]补=0.0111 0.1010 0.0111 1.0001 + -------------- 1 -------------- 0 -------------- 0 -------------- 1 -------------- 0 -------------- 0 -------------- 0 -------------- 1 ------------- 1 ------------- 1 ------------- 1

微机原理试题及答案

卷16 一、选择题:(每题1.5分,共18分) 1、DMAC向CPU发出请求信号,CPU响应并交出总线控制权后将( )。 ?反复执行空操作,直到DMA操作结束 ?进入暂停状态, 直到DMA操作结束 ?进入保持状态, 直到DMA操作结束 ?进入等待状态, 直到DMA操作结束 2、有一个实时数据采集系统,要求10ms进行一次数据采集,然后进行数据处理及显 示输出,应采用的数据传送方式为()。 ?无条件传送方式?查询方式 ?中断方式?直接存储器存取方式 3、在数据传送过程中,数据由串行变并行,或由并行变串行的转换可通过()来实 现。?计数器?寄存器?移位寄存器? D触发器 4、8088 CPU输入/输出指令可寻址外设端口的数量最大可达()个。 ?128 ?256 ? 16K ? 64K 5、CPU响应中断后,通过()完成断点的保护。 ?执行开中断指令?执行关中断指令 ?执行PUSH指令?内部自动操作 6、并行接口芯片8255A具有双向数据传送功能的端口是()。 ?PA口?PB口? PC口?控制口 7、8088CPU处理动作的最小时间单位是()。 ?指令周期?时钟周期?机器周期?总线周期 8.堆栈是内存中()。 ?先进先出的ROM区域?后进先出的ROM区域 ?先进先出的RAM区域?后进先出的RAM区域 9、计算机中广泛应用的RS-232C实质上是一种()。 ?串行接口芯片?串行通信规程(协议) ?串行通信接口标准?系统总线标准 10、高速缓冲存储器(CACHE)一般是由()芯片组成。 ?SRAM ?DRAM ?ROM ?EPROM 11、鼠标器是一种()。 ?手持式的作图部件?手持式的光学字符识别设备 ?手持式的座标定位部件?手持式扫描器 12、传送速度单位“bps”的含义是()。

微机原理(第三版)课后练习答案

1 思考与练习题 一、选择题 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.计算机中带符号数采用补码表示的目的是为了简化机器数的运算。( )√ 2.计算机中数据的表示范围不受计算机字长的限制。( )× 3.计算机地址总线的宽度决定了内存容量的大小。( )√ 4.计算机键盘输入的各类符号在计算机内部均表示为ASCII码。( )× (键盘与计算机通信采用ASCII码) 2 思考与练习题 一、选择题 1.在EU中起数据加工与处理作用的功能部件是( )。A A.ALU B.数据暂存器 C.数据寄存器 D.EU控制电路 2.以下不属于BIU中的功能部件是( )。 B A.地址加法器 B.地址寄存器 C.段寄存器 D.指令队列缓冲器

相关文档