微机原理和接口技术(习题答案解析)

更新时间:2024-05-20 19:58:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

WORD格式可编辑

第1章 微机运算基础

习题和思考题

1. 请完成以下计算:

174.66D=(10101110.10101)B=(AE. A8)H

10101110101.01011B=( 1397.344)D=(575.58)H 4BCH=(010010111100)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

由于Cs=0 ,Cp=1,因此有溢出,结果错误 -33-37 其补码形式为:(-33)补=11011111 (-37)补=11011011 11011111 +11011011 10111010

由于Cs=1, Cp=1,所以没有溢出,结果正确 -90-70

其补码形式为:(-90)补=10011100 (-70)补=10111010 10011100 +10111010 01010110

由于Cs=1, Cp=0,所以有溢出,结果错误 50+84

专业知识 整理分享

其补码形式为:(50)补=00110010 (84)补=01010100 00110010 +01010100 10000110

由于Cs=0, Cp=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,在实地2

WORD格式可编辑

址模式下的物理地址为17896H. 5. 简述EPROM的工作原理。

书27页。

6. 总线有那几种类型?

答:按照总线的传输类型可分为数据、地址、控制三类;按和cpu的距离可分为内部总线、系统总线和外部总线。

7. 简述ISA与EISA总线的的区别。它们的局限性表现在哪里?

书34页。

8. PCI局部总线有些什么特点?

书35页

9. 什么是USB?它有什么特点?

书41页

10. IEEE 1394总线有哪些特点?它与USB总线的区别在哪里?

书41页。

11. 简述现场总线的特点。

书42页。

12. 当代计算发展的主要核心技术有哪些?

当代计算机的主要核心技术有:CACHE技术、流水线技术、VM技术、RISC技术、多内核技术

第3章 80X86指令系统

习题与思考题

1. 指出下列各指令中源操作数和目的操作数的寻址方式: ⑴ MOV BX,WORD PTR[2200H] ⑵ AAA ⑶ JUM 2200H ⑷ LES DI,[2100H] ⑸ MOV [BX+SI+8], BX 解答 ⑴ MOV BX, WORD PTR[2200H] 源操作数:直接寻址;目的操作数:寄存器寻址 ⑵ AAA 源操作数:寄存器寻址AL(也称隐含寻址);目的操作数:寄存器寻址 ⑶ JUM 2200H 程序转移段内直接寻址方式 ⑷ LES DI,[2100H] 源操作数:直接寻址;目的操作数:寄存器寻址 ⑸ MOV [BX+SI+8], BX

专业知识 整理分享

源操作数:寄存器寻址;目的操作数:基址加变址寻址

2. 若AX=0ABCDH,BX=7F8FH,CF=1。 求分别执行8086 CPU指令 ⑴ ADD AX,BX ⑵ ADC AX,BX ⑶ SBB AX,BX ⑷ NEG AX ⑸ AND AX,BX ⑹ OR AX,BX ⑺ XOR AX, BX ⑻ IMUL BL

后,AX寄存器中的内容,并指出标志寄存器SF,ZF,AF,PF,CF及OF的状态。 解答 ⑴ AX=2B5CH, SZAPCO=001110B ⑵ AX=2B5DH, SZAPCO=001010B ⑶ AX=2C3DH, SZAPCO=001001B ⑷ AX=5433H, SZAPCO=001110B ⑸ AX=2B8DH, SZAPCO=00X100B ⑹ AX=FFCFH, SZAPCO=10X100B ⑺ AX=D222H, SZAPCO=10X100B ⑻ AX=3283H, SZAPCO=XXXX11B

3. 若AL=78H,BL=87H, ⑴求执行指令 ADD AL,BL DAA

之后,AL=?、标志AF=?、CF=?

⑵ 若执行指令 SUB AL,BL与DAS后,AL=?、标志AF=?、CF=? 解答 ⑴ AL=65H, AF=1, CF=1。 ⑵ AL=91H, AF=0, CF=1。

4. 指出下列指令中哪些是错误的,并指出错在何处? ⑴ MOV DL,[DX] ⑵ MOV ES,2000H ⑶ SUB [BX],[SI] ⑷ ADD AX,[BX+CX] ⑸ XCHG DS,[2400H] ⑹ DEC 15H ⑺ IN AL,DX ⑻ OUT 300H,AX

解答

⑴ 错,DX不能作为间接寻址的寄存器。 ⑵ 错,立即数不能直接送给段寄存器。 ⑶ 错,两个存储单元间内容不能直接相减。 ⑷ 错,CX寄存器不能作为变址寄存器。 ⑸ 错,不允许段寄存器与存储单元内容进行交换 ⑹ 错,减1指令不能对段寄存器直接操作 ⑺ 对 4

WORD格式可编辑

⑻ 错,输出指令的地址若是16位,必须用DX间址。

5. 下列程序段执行后 AX=? 设数据段有: TABLE DW 100,200,300,400 ENTRY DW 3 代码段 对DS初始化 MOV BX,OFFSET TABLE MOV SI,ENTRY MOV AX,[BX+SI] 执行后 AX=2C00

6. 将AL中的8位二进制数按倒序方式重新排列,即AL原来为D7D6…D0,倒序后AL=D0D1…D7。

参考答案 …

MOV CX, 8

L: SHL AL, 1 RCR BL, 1 LOOP L MOV AL, BL …

7.若起始地址偏移量为2000H的内存单元存放有100个ASCII码字符,现给这些字符添加奇偶校验位(bit7),使每个字符中“1”的个数为偶数,在顺序输出到地址为100H的端口。

解答 MOV SI, 2000H MOV CX, 100 MOV DX, 100H NEXT2: MOV AL, [SI] ;取字符串中字符送AL AND AL, 0FFH ;改变标志位 JPE NEXT1 ;“1”的个数为偶,bit7不变 OR AL, 80H ;“1”的个数为奇,bit7变为1 NEXT1: OUT DX, AL INC SI LOOP NEXT2 MOV AH, 4CH INT 21H

8. 若SS=1000H,SP=2000H,AX=1234H,BX=5678H,FR=2115,试说明执行指令 PUSH AX PUSH BX PUSHF

专业知识 整理分享

POP CX POP DX

之后,SP=? SS=? CX=? DX=? 并画图指出堆栈中各单元的内容。

解答: SS=1000H

SP=1FFEH CX=2115H DX=5678H 栈中各单元内容如下所示:

地址 RAM 11FFAH 2115 11FFCH 5678 11FFEH 1234 12000H

第4章 宏汇编语言

习题与思考题

1.画出以下变量在内存中存储的示意图。 D1 DB ‘A’,’123’,09H, 45 D2 DW ‘A’,’CD’,23H, 4567H D3 DD 1234H, 23456789H

2.设计子程序分别完成以下功能:

1)根据给定的参数值,判断该参数是偶数还是奇数。 2)把给定参数值的高、低数据位互换。

3.设计相应的宏完成以下功能: 1)把给定的参数按二进制显示。

2)求两个参数的和,并按十进制形式显示。 6

WORD格式可编辑

第5章 汇编语言程序设计

习题与思考题

1. 设数据段中有字节型单元NUMBER和FLAG,判断NUMBER与给定的X和Y的大小关系(XY,则置FLAG=1,若NUMBER

解答:.486 Data segment NUMBER db ? FLAG db ? Data ends Code segment

Assume cs: Code, ds: Data Beg: mov ax,data Mov ds,ax

mov al, X Mov bl, Y Cmp NUMBER, X Jnc P1

Mov FLAG, 0FFH Jmp exit

P1: cmp NUMBER, Y Ja P2

Mov FLAG, 00H Jmp exit

P2: mov FLAG, 01H Exit: mov ah, 4ch Int 21h Code ends End Beg

2. 计算1+2+3+…+100,并把和保存在SUM单元中。 .486

DATA SEGMENT USE16

TT DB 1 SUM DW ? DATA ENDS

CODE SEGMENT USE16

专业知识 整理分享

ASSUME CS:CODE,DS:DATA BEG: MOV AX , DATA MOV DS, AX MOV CX, 100 MOV AX, 0 START: ADD AX, TT INC TT

LOOP START MOV SUM, AX MOV AH, 4CH MOV 21H

CODE ENDS

END BEG

3. 对一个给定的N数据,用冒泡排序法进行排序。 解答:.486

Data segment

Buf db ‘abcd18437hj’ Lens equ $-buf Count db lens Flag db ? Data ends Code segment

Assume cs: code, ds: data Beg: mov ax, data Mov ds, ax Again: dec count Jz done Mov flag, 0 Mov cx, count

Mov si, offset buf Last: mov al, [si] Mov ah, [si+1] Cmp ah, al Jnc next

Mov [si], ah Mv [si+1], al Mov flag, 1 Next: inc si 8

WORD格式可编辑

Loop last Cmp flag, 1 Je again

Done: mov buf+lens, ‘$’ Mov ah, 9

Mov dx, offset buf Int 21h Mov ah, 4ch Int 21h Code ends End Beg

4. 由键盘输入任意的两个十进制数,然后转换成对应的压缩BCD码的形式在屏幕上显示。

.486

DATA SEGMENT USE16 BCD DB ? BUF DB 3

DB ?

DB 3DUP(?)

MESG1 DB ‘PLEASE INPUT :’,0DH,OAH,’$’

MESG2 DB ‘ERROR! NUMBER IS FROM 0 TO 9. PLEASE AGAIN!$’ DATA ENDS

CODE SEGMENT USE16

ASSUME CS:CODE,DS:DATA BEG: MOV AX , DATA MOV DS, AX

L1: MOV DX, OFFSET MESG1

MOV AH, 9 ;显示MESG1

INT 21H MOV AH, 0AH

MOV DX, OFFSET BUF

INT 21H ;输入字符串 MOV AL, BUF+2 CMP AL, 30H JC ERROR CMP AL, 3AH

JC NEXT ;判断第一个数输入是否符合要求

ERROR: MOV DX, OFFSET MESG2

专业知识 整理分享

MOV AH, 9

INT 21H

JMP L1 ;输入错误提示重新输入 NEXT: SUB AL, 30H

SAL AL, 4 ;求出十位数字 MOV BCD, AL MOV AL, BUF+3 CMP AL, 30H

JC ERROR

CMP AL, 3AH

JNC ERROR ;判断第二个数输入是否符合要求

SUB AL, 30H OR BCD, AL MOV AH, 4CH

INT 21H

CODE ENDS

END BEG

5. 由键盘输入两个十六进制数,转换成等值的十进制数后在屏幕上显示。

CMPDISP MACRO NN ;用宏语句完成比较法二进制到十进制转换 LOCAL LAST,NEXT

MOV DL, 0 LAST: CMP NUM, NN JC NEXT

INC DL

SUB NUM, NN JMP LAST

NEXT: ADD DL, 30H MOV AH, 2 INT 21H ENDM

DATA SEGMENT USE16

NUM DB ? BUF DB 3

DB ?

DB 3DUP(?)

DATA ENDS

CODE SEGMENT USE16

ASSUME CS:CODE,DS:DATA 10

WORD格式可编辑

BEG: MOV AX , DATA MOV DS, AX

MOV AH, 0AH

MOV DX, OFFSET BUF INT 21H

MOV AL, BUF+2 CMP AL, 39H

JNA L1 ;数字在0到9之间转 SUB AL, 07H ;数字在A到F之间

L1: SUB AL, 30H

MUL 16

MOV NUM, AL

MOV AL, BUF+3 CMP AL, 39H JNA L2

SUB AL, 07H

L2: SUB AL, 30H

ADD NUM, AL ;NUM中为十六进制数的二进制表示 CMPDISP 100 CMPDISP 10 CMPDISP 1 MOV AH, 4CH INT 21H

CODE ENDS

END BEG

第6章 接口技术

习题与思考题

1.什么是接口?

两个部件或两个系统之间的连接。微机接口,则涉及到微处理器与各外部设备之间的接口、微处理器与存储器之间的接口以及微型计算机之间的接口。习惯上说到接口只是指I/O接口,是指微处理器与外设之间的接口称为I/O接口。

专业知识 整理分享

2.端口独立编址有哪些特点?和统一编址的区别是什么?

解答:解答:输入/输出指令和访问存储器的指令明显区分开,使程序清晰,可读性好;而且I/O指令长度短,执行的速度快,也不占用内存空间,I/O地址译码电路较简单。不足之处是CPU指令系统中必须有专门的IN和OUT指令,这些指令的功能没有访问存储器的指令的功能强;I/O端口数目有限。另外,CPU要能提供区分存储器读/写和I/O读/写的控制信号。

3.DX间接寻址主要应用在什么情况?和直接端口寻址的区别是什么? 端口地址大于255的时候。

4.I/O端口地址译码电路有哪几种结构形式?

解答:固定式译码和可选式译码。

5.CPU和I/O设备间的数据传送方式有哪些?区别是什么? 有4种。无条件、查询、中断和DMA方式。区别见书140页。

第7章 中断技术

习题与思考题

1.什么是中断?什么是中断优先级?设置中断优先级的目的是什么? 书143页。

2.中断处理的一般过程是什么?

中断请求,中断判优,中断响应,中断处理,中断返回。 3.什么是中断嵌套?如何处理中断嵌套? 当前中断还未处理完毕,又有了新的优先级更高的中断请求,cpu转而去处理优先级更高的中断称为中断嵌套。

4.什么是中断向量?它与中断服务程序入口地址的关系是什么? 中断向量即中断服务程序的入口地址。 5.什么是中断类型号?它的作用是什么?

中断类型号就是中断源的编号,在中断系统中用作中断源的识别。 6.可屏蔽中断和INTn中断的处理区别是什么? 可屏蔽中断是硬件中断而INTn中断是软件中断。

7.不可屏蔽中断和可屏蔽中断各有何特点?其用途如何? 不可屏蔽中断的优先级高于可屏蔽中断,不可屏蔽中断不受指令cli的影响,常用于紧急情况的故障处理,并由系统使用,一般用户不能使用。

8.PC微机的中断系统由哪几部分组成?

由CPU端的中断逻辑以及中断控制器8259组成。

9.80X86的异常有哪几个层次?各层次的特点是什么? 12

WORD格式可编辑

书148页

10.保护虚拟地址下的中断如何管理? 采用中断描述表IDT进行管理。

11.可编程中断控制器8259A协助CPU处理哪些中断事务? 书162页。 12.8259A具有哪些工作方式和中断操作功能?指出与这些功能相对应的命令字(ICW/OCW)的内容?

书164页。

13.在什么情况下,才要求用户对8259A进行初始化?

在没有配置完善的操作系统的单板机上需要对8259初始化。 14.如何对8259A进行初始化编程(包括单片使用和双片使用)? 书176,177页。

15.什么是中断响应周期?在中断响应周期中CPU和8259A一般要完成哪些工作? 书165页 16.用户利用PC微机的中断系统资源进行中断传送时,要求用户对8259A的哪些命令进行编程使用?

17.中断结束命令安排在程序的什么地方?在什么情况下要求发中断结束命令?

中断结束命令安排在中断返回指令iret前。如果8259工作在非自动中断结束方式下则要求发送中断结束命令。

18.保护模式下中断服务程序怎样入口? 书157页。

第8章 常用I/O接口芯片

习题与思考题

1. 可编程并行接口8255A面向CPU一侧的端口有几个。

4个。分别是1个控制子端口和3个数据口。 2. PC口按位置/复位字是如何定义的?

PC口按位置/复位命令字用于PC引脚作输出单位控制或软件设定8255A的相应状态。

PC口按位置/复位命令字格式: DDDDDDD7 D0 6 5 4 3 2 1 专业知识 整理分享

特PC口位号置/复位征位值未用 选择 选择 为0 其中:

D0为置/复位选择位:D0=0表示相应位清0,D0=1表示相应位置1。 D3D2D1选择被置/复位的位号: D3D2D1=000选择PC口第0位; D3D2D1=001选择PC口第1位; D3D2D1=010选择PC口第2位; D3D2D1=011选择PC口第3位; D3D2D1=100选择PC口第4位; D3D2D1=101选择PC口第5位; D3D2D1=110选择PC口第6位; D3D2D1=111选择PC口第7位。 D6D5D4没有使用,一般让D6D5D4=000。 D7位为特征位,该命令字处D7=0。

3. 如何对8255A进行初始化编程?

对8255A的编程涉及到两个内容:一是写控制字设置工作方式等信息;二是使C口的指定位置位/复位的功能。

在8255A工作之前,首先要对其进行初始化,也就是要写入控制字,来指定它的工作方式,指明是否允许它的某组端口采用中断方式传送数据。如果要改变某组端口的工作方式或中断允许情况,必须重新写入控制字。前面讲过,控制字有两个,分别为方式命令字和按位置/复位命令字,它们都必须写向控制寄存器。在实际应用中,可根据需要写入一个或两个命令字。

4. 8255A有哪几种工作方式?各自有什么特点?

8255A有三种工作方式,用户可以通过编程来设置。

方式0——简单输入/输出——查询方式;A,B,C三个端口均可。 方式1——选通输入/输出——中断方式;A ,B,两个端口均可 方式2——双向输入/输出——中断方式。只有A端口才有。

5. 请比较RS-232和TTL的电器特性,以及它们之间如何转化?

书203页。转化要用到专门的集成电路转换器件。 6. 异步传输方式和同步传输方式有和区别?

书198页。他们的区别主要是达到同步的方式不同,桢结构不同。 7. 8251在PC机中的是如何应用的?

书231页。

8. 8253A三个计数器分别在PC机中的应用是什么? 9. 8253如何完成日时钟定时? 14

WORD格式可编辑

书233页。 10. 8237在PC机中是如何应用的?

书254页。 11. 8237的工作步骤是什么? 书253页,例8-3

第9章 人机交互设备接口技术

习题与思考题

1. 2. 3. 4. 5. 6. 7. 8. 9.

试述非编码键盘的工作原理。

用8255A设计一8×8的非编码键盘,试画出设计原理图并编程。 试述PC/XT和PC/AT的键盘接口的工作原理。 试述鼠标器的工作原理。

简述LED显示器的工作原理。 简述LED显示器静态驱动原理。 简述LED显示器动态扫描原理。 简述CRT光栅扫描原理。 简述LCD的显示原理。

第10章 A/D与D/A转换器接口

习题与思考题

1. D/A转换器的性能指标有哪些?各性能指标的含义是什么? 2. 简述D/A转换器的工作原理。

专业知识 整理分享

3. D/A转换器和微处理器接口中的关键问题是什么?如何解决?

4. 使用DAC0832设计一个产生三角波的接口电路并编写产生三角波的程序,其变化范围在

0~10v之间变化。若要在-5~+5v之间变化要采用什么措施实现。

5. 设输入模拟信号的最高有效频率为5kHz,应选用转换时间为多少的A/D转换器对它进行

转换?

6. 试设计一个采用查询法并用数据线选择通道的CPU和ADC0809的接口电路,并编制程序

使之把所采集的8个通道的数据送入给定的内存区。

7. 试设计一个采用固定延时等待法并每采集一个数据只需一条I/O指令的CPU和ADC0809

的接口电路,并编制程序使之把所采集的8个通道的数据送入给定的内存区。

8. 试利用AD1674设计一个数据采集系统(不包括A/D转换器输入通道中的放大器和采样/保

持电路)。要求每隔200μs采集一个数据,每次启动采集数据时采集时间为20ms。假定时钟频率为5MHz,由一只开关手动启动数据采集,数据的I/O传送控制采用中断控制,8255A的INTR信号接到8259A的IR2请求信号引脚。允许附加必要的门电路或单稳态电路。试完成:

⑴ 硬件设计,画出连接图;(不包括8259A) ⑵ 软件设计,包括主程序和中断服务子程序。

9. 设计AD1674与16位微机总线的接口电路。

16

3. D/A转换器和微处理器接口中的关键问题是什么?如何解决?

4. 使用DAC0832设计一个产生三角波的接口电路并编写产生三角波的程序,其变化范围在

0~10v之间变化。若要在-5~+5v之间变化要采用什么措施实现。

5. 设输入模拟信号的最高有效频率为5kHz,应选用转换时间为多少的A/D转换器对它进行

转换?

6. 试设计一个采用查询法并用数据线选择通道的CPU和ADC0809的接口电路,并编制程序

使之把所采集的8个通道的数据送入给定的内存区。

7. 试设计一个采用固定延时等待法并每采集一个数据只需一条I/O指令的CPU和ADC0809

的接口电路,并编制程序使之把所采集的8个通道的数据送入给定的内存区。

8. 试利用AD1674设计一个数据采集系统(不包括A/D转换器输入通道中的放大器和采样/保

持电路)。要求每隔200μs采集一个数据,每次启动采集数据时采集时间为20ms。假定时钟频率为5MHz,由一只开关手动启动数据采集,数据的I/O传送控制采用中断控制,8255A的INTR信号接到8259A的IR2请求信号引脚。允许附加必要的门电路或单稳态电路。试完成:

⑴ 硬件设计,画出连接图;(不包括8259A) ⑵ 软件设计,包括主程序和中断服务子程序。

9. 设计AD1674与16位微机总线的接口电路。

16

本文来源:https://www.bwwdw.com/article/tgh7.html

Top