微机原理-心得体会

南阳师范学院物电学院

微机原理课程收获及心得

初学《微机原理》时,感觉摸不着头绪。面对着众多的术语、概念及原理性的问题不知道该如何下手。在了解课程的特点后,我发现,应该以微机的整机概念为突破口,在如何建立整体概念上下功夫。“麻雀虽小,五脏俱全”可以通过学习一个模型机的组成和指令执行的过程,了解和熟悉计算机的结构、特点和工作过程。

《微机原理》课程有许多的新名词、新专业术语。透彻理解这些名词、术语的意思,为今后深入学习打下基础。一个新的名词从首次接触到理解和应用,需要一个反复的过程。而在众多概念中,真正关键的有很多。比如“中断”概念,既是重点又是难点,如果不懂中断技术,就不能算是搞懂了微机原理。在学习中凡是遇到这种情况,绝对不轻易放过,要力求真正弄懂,搞懂一个重点,将使一大串概念迎刃而解。

在微机中,最基础的语言是汇编语言。汇编语言是一个最基础最古老的计算机语言。语言总是越基础越重要。在重大的编程项目中应用最广泛。就我的个人理解,汇编是对寄存的地址以及数据单元进行最直接的修改。而在某些时候,这种方法是最有效,最可靠的。

然而,事物就是有两面性,有优点自然缺点也不少。其中,最重要的一点就是,汇编语言很复杂,对某个数据进行修改时,本来很简单的一个操作会用比较复杂的语言来解决,而这些语言本身在执行和操作的过程中,占有大量的时间和成本。在一些讲求效率的场合,并不可取。

汇编语言对学习其他计算机起到一个比较、对照、参考的促进作用。学习事物总是从最简单的基础开始的。那么学习高级语言也当然应当从汇编开始。学习汇编语言实际上是培养了学习计算机语言的能力和素养。个人认为,学习汇编语言对学习其他语言很有促进作用。

汇编语言在本学期微机学习中有核心地位。本学期微机原理课程内容繁多,我认为在学习中要考虑到“学以致用”,不能过分强调课程的系统性和基本理论的完整性,而应该侧重于基本方法和应用实例。从微机应用系统的应用环境和特点来看,微机系统如何与千变万化的外部设备、外部世界相连,如何与它们交换信息,是微机系统应用中的关键所在,培养一定的微机应用系统的分析能力和初步设计能力才是最终目的。

不可否认,我在课程找出了自己在学习上的不足,对以后的工作也有指导作用。我相信在以后的学习中会克服这些不足,达到熟练掌握汇编语言的目的!

 

第二篇:微机原理试卷

微机原理与应用试卷

一、单项选择题(每小题 1 分共 10 分)

1.十进制33.25转换成十六进制数为 ( ) ① B1.4H ② 1B.19H ③ 21.4H ④ 33.4H

2. 若有16条地址线,那么可访问的内存地址范围为。 ( ) ① 0001H~FFFFH ② 0000H~FFFFH ③ 00000H~FFFFFH ④ 00001H~FFFFFH

3. 8086 CPU内有指示下条指令有效地址的指示器是 ( ) ① IP ② SP ③ BP ④ SI

4.下列指令中语法有错误的是 ( ) ① IN AX,20H ② LEA SI,[2000H]③ OUT DX,AL ④ SHL AX,

微机原理试卷

2

5. 8088CPU内部的数据总线有多少条 ( ) ① 8条 ② 16条 ③ 20条 ④ 32条

6. 若(AL)=0FH,(BL)=04H,则执行CMP AL,BL后,AL和BL的内容为 ( ) ① 0FH和04H ② 0BH和04H ③ 0FH和0BH ④ 04H和0FH

7. 指令MOV AX,[BX][SI]中源操作数的寻址方式是。 ( ) ① 寄存器间接寻址 ② 变址寻址

③ 基址变址寻址 ④ 相对寻址

8. 与MOV BX,OFFSET X等价的指令是 ( ) ① MOV BX,X ② LDS BX,X ③ LES BX,X ④ LEA BX,X

9. 不能实现将AX清零和CF清零的指令是( )

① SUB AX,AX ② MOV AX,0 ③ XOR AX,AX ④ AND AX,0

10.可编程计数/定时器8253的工作方式有几种 ( ) ① 3 ② 4 ③ 5 ④ 6

二、填空题(每空2分,共20分)

1. 计算机通常___________和___________是核心部件,合称为中央处理单元CPU。

2. 8086CPU通过数据总线对__________进行一次访问所需要的时间为一个总线周期,一个总线周期至少包括__________时钟周期。

3. 组成16M*8位的存储器,需要1M*4位的存储芯片___________片。

4. 微机中一般采用__________芯片作为串行通信接口。

5.在8086CPU系统中,设某中断源的中断类型码为08H,中断矢量为0100H:1000H,则相应的中断矢量存储地址为__________;从该地址开始,连续的4个存储单元存放的内容依次为__________。

6.堆栈是内存中一个专用区域,其存取规则是__________;在8086系统中,当CPU响应外部中断请求转向中断处理程序前,应将__________的内容依次压入堆栈。

三、判断改错题(每题1分,共10 分)

1. 8086向存储器的奇地址写一个字节的数据时,需要一个总线周期,在该总线周期内的第一个时钟周期中,A0为1。

2. 8088的 ( ) ( ) 信号可用作中断矢量的读选通信号。

3. 已知AL的内容为01011101B,执行NEG AL后再执行CBW,AX中的内容为7FA3H。( )

4. 8088 中,取指令和执行指令必须是串行操作。

5. MOV [BX],0 指令是正确的。 ( ) ( )

6. 8259A的8个中断源的中断矢量在中断向量表中是连续存放的。 7.多个外设可以通过一条中断请求线,向CPU发中断请求。

( ) ( ) ( )

8. EPROM 虽然是只读存储器,所以在编程时不可以向内部写入数据。

9. 在CMP AX,DX指令执行之后,当标志位SF,OF,ZF满足下列逻辑关系(SF?OF)+ZF=0时,表明(AX)<(DX)。

( ) ( )

10.CPU与外部接口数据传输方式有程序控制、中断、DMA三种方式。

四、汇编程序(共20分) 1. 设某数据区定义如下: ORG 0100H NAMES: DB ‘TOM’, 20 DB ‘ROSE’,25 DB ‘KATE’,22

下列各组指令,若为合法指令,请写出执行结果,若为非法指令,则写出错误原因。(本题5分)

(1) MOV SI,5

LEA DI,NAMES[SI+6] MOV AL,[DI]

(AL)=

SI,4

BX,NAMES [BL][SI],BYTE PTR NAMES+10

(2) MOV

LEA CMP

(SF)=

2.设初值(AX)=4321H,(DX)=8765H,则 MOV CL,04H SHL DX,CL MOV BL,AH SHL AX,CL SHR BL,CL OR DL,BL

上述程序执行后(DX)= ;(AX)= 。(本题5分)

3. 编写一个程序,接收从键盘输入的10个十进制数字,输入回车符则停止输入,然后将这些数字加密后(用XLAT指令变换)存入内存缓冲区BUFFER。加密表为:

输入数字: 0,1,2,3,4,5,6,7,8,9

密码数字: 7,5,9,1,3,6,8,0,2,4 (本题10分)

五、简答题(共20分)

1. 简述在最小工作模式下,8086如何响应一个总线请求?(本题5分)

2. 伪指令的功能是什么?(本题5分)

3.简述宏指令与子程序的区别(本题5分)

4.8259A中断控制器的功能是什么?(本题5分)

六、综合应用题(共20 分)

已知某8088微机系统包括8255,8253两个可编程接口电路。其中8253三个计数器分别工作在不同的方式下,可以为A/D转换器提供可编程的采样频率和采样时间;8255A的PB0可用于检测按键开关的位置,PB7可根据PB0的状态决定是否点亮LED指示灯。设系统所要求有关硬件连线已经全部接好,如图1所示。试完成下列各项要求。

(1) 分别列出8255A,8253各个断口的地址编码,其中片选信号PS2,PS3采用图2中

的译码地址。(5分)

(2) 根据图2所示8255A的A口和B口的连接方式,写出接口初始化程序片段。(5分)

(3) 图1给出了8253各个计数器要求的工作方式。设已知外部时钟频率为F,计数器0

的计数初值为L(字节型),工作在方式2;计数器1的计数初值为M(字型),工作在方式1;计数器2的计数初值为N(字型),工作在方式3,L,M,N是在程序的其它地方已经定义的变量,L,M为二进制数,N为BCD码。试按上述要求完成8253的初始化程序片段。(5分)

(4) 设计一个程序片段,使8255A监测PB0的输入状态,当PB0=1时使LED灯亮。(5分)

微机原理试卷

图1 图

微机原理试卷

2

微机原理与应用试题2标准答案

一、选择题(每题1分,共10分)

1. ③ 2. ② 3. ① 4. ④ 5. ① 6. ① 7. ③ 8. ④ 9. ② 10. ④

二、填空题(每空2分,共20分)

1. 运算器、控制器

2. 存储器或I/O接口,4

3. 32

4. 8250(或8251A)

5. 020H,00H,10H,00H,01H

6. 后进先出,断点处

三、判断题(每题1分,共10分)

1. √ 2. √ 3. X 4. X 5.X 6. √ 7. √ 8.X 9. X 10. √

四、汇编程序(共20分)

1.(1)非法指令LEA DI,NAMES[SI+6],不可直接传送 (3分)

(2)(SF)=0 (2分)

2.(DX)=7654H,(AX)=3210H (5分)

3.答案:

data segment

scode db 7,5,9,1,3,6,8,0,2,4

buffer db 10 dup(?)

data ends (3分)

code segment

assume cs:code,ds:data

start: mov ax,data

mov ds,ax

mov si,0

mov cx,10

lea bx,scode (2分)

input: mov ah,01

int 21h

cmp al,0ah

jz exit

and al,0fh

xlat

mov buffer[si],al

inc si

loop input

exit: ret

code ends (5分)

end start

五、简答题(共20分)

1. 答:外部总线主控模块经HOLD引线向8086发出总线请求信号;8086在每个时钟周期的上升沿采样HOLD引线;若发现HOLD=1则在当前总线周期结束时(T4结束)发出总线请求的响应信号HLDA;8086使地址、数据及控制总线进入高阻状态,让出总线控制权,完成响应

过程。(5分)

2.答:伪指令是在汇编程序对源程序汇编期间由汇编程序处理的操作,它们可以完成如处理器选择、定义程序模式、定义数据、分配存储区、指示程序结束等功能。总之,伪指令主要是指导汇编过程。(5分)

3. 答:宏指令插入执行,目标代码重复出现,费单元,省时间 (2分)

子程序转去执行,目标代码仅出现一次,省单元,费时间(3分)

4.答:8259A中断控制器可以接受8个中断请求输入并将它们寄存。对8个请求输入进行优先级判断,裁决出最高优先级进行处理,它可以支持多种优先级处理方式。8259A可以对中断请求输入进行屏蔽,阻止对其进行处理。8259A支持多种中断结束方式。8259A与微处理器连接方便,可提供中断请求信号及发送中断类型码。8259A可以进行级连以便形成多于8级输入的中断控制系统。(5分)

六、综合应用题(共20分)

(1) 8255的口地址码为08H,09H,0AH,0BH,8253的口地址码为0CH,0DH,0EH,0FH

(2) 8255的初始化程序

MOV AL,10000010B

OUT 0BH,AL

(3) 8253各通道的初始化程序片段

MOV AL,14H ;8253 0#设置为方式2

OUT 0FH,AL

MOV AL,L ;对0#设置计数处值L

OUT 0CH,AL

MOV AL,72H ;1#设置为方式1

MOV OFH,AL

MOV AX,M ;1#设置计数初值为M

OUT ODH,AL

MOV AL,AH

OUT ODH,AL

MOV AL,B7H ;2#设置为方式3,BCD码

OUT OFH,AL

MOV AX,N

OUT OEH,AL ;2#计数初值为N

MOV AL,AH

OUT 0EH,AL

(4) 8255检测到当PB0=1时点亮灯的程序片段

IN AL,09H ;读B口状态

K1: TEST 01H ;测试PB0=1否

JZ K1 ;不为1,踏步

MOV AL,00H ;PB0=1,使PA0=0,点亮LED

OUT 08H,AL

相关推荐