文档库 最新最全的文档下载
当前位置:文档库 › 微机原理

微机原理

微机原理
微机原理

微机原理考试题型:

1、填空

2、简答

3、程序分析

4、读图分析

5、程序设计

复习题:

第一章

5.已知下列二进制数码,写出它们的原码、反码和补码。

(1) 00000000

(2) 01111100

(3) 10000010

(4) 11111111

答:(1) 0000 0000的原码、反码和补码都为0000 0000

(2) 0111 1100的原码、反码和补码都为0111 1100

(3) 1000 0010的原码、反码和补码分别为1000 0010、1111 1101、1111 1110

(4) 1111 1111的原码、反码和补码分别为1111 1111、1000 0000、1000 0001

第二章

简述8086/8088CPU的内部结构:

答:8086/8088CPU的内部结构基本相同,它们均由两个独立的工作部件组成,一个称为执行部件EU,一个称为总线接口部件BIU。

(1)执行部件EU由算术逻辑单元ALU、暂存寄存器、标志寄存器、通用寄存器组和EU 控制器构成。其任务只是执行指令,与外界的联系必须通过总线接口部件。

(2)总线接口部件BIU包括4个段寄存器、指令指针IP寄存器、指令队列缓冲器、完成与EU通信的内部寄存器、20位的地址加法器以及总线控制电路等。它的任务是根据EU 的请求,完成CPU与存储器、CPU与I/O设备之间的信息传送。

4.对于8086CPU,已知(DS)=0150H,(CS)=0640H,(SS)=1200H,问:

(1)在数据段中可存放的数据最多为多少字节?首末地址各是什么?

(2)堆栈段中可存放多少个16位的字?首末地址各是什么?

(3)代码段最大可存放多少个字节的程序?首末地址各是什么?

答:(1)在数据段中可存放的数据最多为64KB,首地址为01500H,末地址为114FFH。

(2)在堆栈段中可存放32K个16位的字,首地址为12000H,末地址为21FFFH。

(3)代码段中最大可存放64KB的程序,首地址为06400H,末地址为163FFH。

5.有一个由27个字节组成的数据区,其起始地址为BA00H:1BA0H,试写出该数据区的首末单元的实际地址。

答:数据区的首地址为BA00H*10H+1BA0H=BBBA0H;

数据区的末地址为BBBA0H+1BH-1=BBBBAH。

6.若代码段寄存器(CS)=2000H,指令指针(IP)=2000H,试问指令的实际地址是什么?

答:指令的实际地址为2000H*10H+2000H=22000H。

7.已知当前数据段位于存储器的A1000H~B0FFFH范围内,问DS等于多少?

答:因为数据段的范围为A1000H~B0FFFH,数据段具有64KB,且其末地址为B0FFFH,所以DS等于A100H。

第三章

指令含义:

名称含义操作说明

MOV 传送由源向止传送

PUSH 入栈将源压入堆栈

POP 出栈从堆栈弹出至止

IN 输入从端口输入至AX

OUT 输出将AX输出到端口

ADD 加法源+止=止

INC 加1 止=止+1

SUB 减法止=止-源

CMP 比较止-源

TEST 测试止∩源

JMP 转移无条件转移

JNO 单标志位条件转移不溢出

JNC 单标志位条件转移进位为0

JNS 单标志位条件转移符号标志位为0

JNZ 单标志位条件转移结果不为0

INT 中断

LOOP 循环

NOP 空操作无操作,不影响标志位

HLT 停机CPU暂停状态,不影响

1.8086语言指令的寻址方式有哪几类?用哪一种寻址方式的指令执行速度最快?

答:8086/8088提供了8种寻址方式对操作数寻址,它们是:隐含寻址、立即数寻址、寄存器寻址、直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址和相对基址变址寻址。寄存器寻址的指令执行速度最快。

18.分析下列程序段:

ADD AX,BX

JNO L1

JNC L2

SUB AX,BX

JNC L3

JNO L4

JMP SHORT L5

如果AX和BX的内容(带符号数)给定如下:

AX BX

(3)D023H 9FD0H

(4)42C8H 608DH

(5)B568H 94B7H

问:该程序执行完后,程序转向哪里?

答:(3)L5 (4)L2 (5)L5

19.说明下列程序段执行后AX和CX的值是什么?

SUB AX,AX

SUB CX,CX

LP:INC AX

LOOP

答:程序段执行后(AX)=0,(CX)=0。

第四章

2.已知数据段定义如下,假设该数据段从08000H开始:

DA TA SEGMENT

V AR1 DB 2 DUP(0,?)

V AR2 DW 1234H

ORG 8

V AR3 DB 5

V AR4 DW‘AB’

DA TA ENDS

用示意图说明各变量在内存中的分配情况。

答:各变量在内存中的分配情况如下:

08000H 00

08001H ——

08002H 00

08003H ——

08004H 34H

08005H 12H

08006H

08007H

08008H 05H

08009H 42H

08010H 41H

6.编写一程序,将键盘输入的大写字母转换为小写字母显示。解:程序段如下:

CODE SEGMENT

ASSUME CS:CODE

START: MOV AH,1H

INT 21H

CMP AL,60H

JNS DISP

ADD AL,20H

DISP: MOV DL,AL

MOV AH,02H

INT 21H

MOV AH,4CH

INT 21H

CODE ENDS

END START

第五章

例5-1 图5-16为某一8088系统的存储器连接图,试确定其中各芯片的地址空间。

解:图中使用一片27128EPROM和两片6264SRAM芯片。6264芯片为28引脚:地址线13条,数据线8条还有输出允许信号、写选通信号和片选信号,其工作方式与6116相似。

首先先确定各芯片的基本地址。所谓基本地址是指CPU用作片选的高位地址信号全为0,用作字选的地址信号从全0变化至全1对应的地址区间。图中的27128EPROM芯片有地址线14条,则其基本地址为0000 0000 0000 0000 0000 ~ 0000 0011 1111 1111 1111 = 0000H ~ 03FFFH。同理,6264SRAM芯片的基本地址为00000H ~ 01FFFH。

再确定各芯片的片选,即CPU高位地址什么状态下选中芯片。由于地址总线的A13 ~ A0用于芯片的自选,A19~ A14译码作片选,故图中译码器74LS138译码器的每个输出端选中16KB存储空间。译码器各输出端选中的存储空间具体如表5-4所示。

图中27128片选端与译码器的Y0端相连,则27128芯片的地址空间为20000H ~ 23FFFH。6264芯片容量为8KB,故两片一组组成16KB。译码器的Y4=0选中6264芯片组,该芯片组再由A13二次译码确定两片6264各自的地址空间。由图中可见,在Y4=0和A13=0时,1#6264芯片的片选端低电平有效,则1#6264芯片的地址空间为30000H ~ 31FFFH;在Y4=0和A13=1时,2#6264芯片的地址空间为32000H ~ 33FFFH。

表5-4 译码器各输出端选中的存储空间

IO/M 译码器输出端A

19 A

18

A

17

A

16

A

15

A

14

A

13

~ A

存储区域

0 Y0 0 0 1 0 0 0 00---0至11---1 20000H~23FFFH 0 Y1 0 0 1 0 0 1 00---0至11---1 24000H~27FFFH 0 Y2 0 0 1 0 1 0 00---0至11---1 28000H~2BFFFH 0 Y3 0 0 1 0 1 1 00---0至11---1 2C000H~2FFFFH 0 Y4 0 0 1 1 0 0 00---0至11---1 30000H~33FFFH 0 Y5 0 0 1 1 0 1 00---0至11---1 34000H~37FFFH 0 Y6 0 0 1 1 1 0 00---0至11---1 38000H~3BFFFH 0 Y7 0 0 1 1 1 1 00---0至11---1 3C000H~3FFFFH

此存储系统有16KB的EPROM,地址空间为20000H ~ 23FFFH;有16KB的SRAM,

地址空间为30000H ~ 33FFFH,采用全译码方式,芯片地址唯一确定。

1.半导体存储器分为哪几类?试述它们的用途及主要区别。

答:从应用角度来看半导体存储器可分为两大类:只读存储器ROM;随机存储器RAM。

只读存储器在使用过程中,具有只读出存储的信息而不能写入信息或者可以写入信息但

速度很慢的特点。断电后,其存储的信息仍保留不变,因而也称为非易失性存储器。由于ROM具有非易失性,故通常用于存放固定程序,如监控程序、PC机中的BIOS程序等。

随机存取存储器又称为读写存储器。RAM是指在使用过程中利用程序可随时读写信息

的存储器。断电后,其存储的信息会消失,也称为易失性存储器。RAM在线使用可读、可写,常用于存储用户调试程序和程序执行过程产生的中间数据、运算结果等。

6.写出下列存储器芯片(非DRAM)的基本地址范围,这些芯片各需几位地址线实现片内寻址?若要组成64KB的存储器各需几片?

(1) 4116芯片(16K*4位)

(2) 6116芯片(2K*8位)

(3) 27128芯片(16K*8位)

(4)62256芯片(32*8位)

解:基本地址范围是指CPU用作片选的高位地址信号全为0,用作字选的地址信号从全0变化至全1所对应的地址区间。这与芯片的地址线数目有关。

(1)4416芯片地址单元数为16K=214,地址线数目14条,所以需14条地址线实现片内寻址,基本地址范围为00000 ~ 03FFFH。组成64KB的存储器所需片数=64KB/16K*4=8片,故8片4416可组成64KB的存储器。

(2)6116芯片地址单元数为2K=211,地址线数目11条,所以需11条地址线实现片内寻址,基本地址范围为00000 ~ 007FFH。组成64KB的存储器所需片数=64KB/2K*8=32片,故32片6116可组成64KB的存储器。

(3)27128芯片地址单元数为16K=214,地址线数目14条,所以需14条地址线实现片内寻址,基本地址范围为00000 ~ 03FFFH。组成64KB的存储器所需片数=64KB/16K*8=4片,故4片27128可组成64KB的存储器。

(4)62256芯片地址单元数为32K=215,地址线数目15条,所以需15条地址线实现片内寻址,基本地址范围为00000 ~ 07FFFH。组成64KB的存储器所需片数=64KB/32K*8=2片,故2片62256可组成64KB的存储器。

第六章

4.设状态端口地址为86H,数据端口地址为85H,外设忙碌D7=1,请用查询方式写出CPU 从存储器缓冲区Buffer送出1KB的数据给外设的程序段(一次送一个字节数据)。

解:程序如下:

MOV SI,BUFFER

MOV CX,400H

LP1: IN AL,86H

TEST AL,80H

JNZ LP1

MOV AL,[SI]

OUT 85H,AL

INC SI

LOOP LP1

HLT

第七章

2.微机的中断处理过程有哪几步?中断过程和调用子程序过程有何异同?

答:一个中断过程应包含:中断请求、中断排队、中断响应、中断服务和中断返回。

中断过程和调用子程序过程相同之处是:都是在主程序中调用子程序,之后返回主程序。不同的是:进入子程序的时间和方法不同。调用子程序时,指令安排在主程序中,主程序主动,子程序的入口地址通过计算就知道。中断过程对于主程序是被动的,主程序中没有预先调用指令,中断是随机的,中断处理子程序的入口地址(中断向量)要由中断类型码获得。

4.中断服务程序一般进行哪些例行操作?

答:中断服务程序一般由6部分组成:

(1)保护现场CPU响应中断时自动完成断点的保护,其余的寄存器则由程序员视使用情况决定,中断服务程序中使用到的某些寄存器可通过PUSH指令送入堆栈保护。

(2)开中断CPU响应中断时,自动执行关中断操作。要实现中断嵌套,必须在中断服务程序中开中断。

(3)中断处理对中断源作相应的处理,如输入/输出数据、掉电紧急保护等,这是中断服务程序的核心。

(4)关中断若中断服务程序设置了开中断,则此时应关中断,以保证下一步恢复现场的操作不被打断。

(5)恢复现场按后进先出的原则,通过执行POP指令将送入堆栈保护的寄存器弹出,注意PUSH指令和POP指令应成对使用。

(6)中断返回中断返回将从堆栈中弹出断点,从而返回到主程序。

5.实现中断嵌套的条件是什么?优先权高的中断请求一定能打断正在进行的优先权低的中断服务程序吗?

答:中断嵌套是正在中断服务处理过程中,出现优先权更高的中断请求,则再次响应新的中断请求,转去为优先权更高的中断服务,处理完后再回到原来的中断服务中。因此,要实现中断嵌套,其必要条件是新的中断请求的优先权更高。但是,并不是优先权高的中断请求一定能打断优先权低的中断服务。如果CPU在中断的处理过程时处于禁止中断状态,它是不响应新的中断请求的。

7.简述8086/8088的可屏蔽中断和非屏蔽中断的区别。

答:非屏蔽中断请求由NMI引脚送入,它不能被屏蔽,即不受标志IF状态的影响,在当前指令执行完后,CPU就响应。非屏蔽中断类型码固定为2。

可屏蔽中断请求由INTR引脚送入,CPU是否响应,取决于标志寄存器中的中断允许标志IF的状态。若IF=0,则表示中断禁止,CPU不响应;若IF=1,则表示中断允许,CPU 可以响应,从而进入中断响应总线周期,CPU发出中断响应信号INTA,并从数据总线获取中断源的中断类型码,进入中断服务程序。

12.8259A当前中断服务寄存器ISR的内容代表什么?在中断嵌套和单个中断情况下,ISR 的内容有什么不同?

答:中断服务寄存器ISR记录了正被CPU响应的中断。ISR是8位寄存器,8个位分别对应8个中断源IRi,若某个中断源的中断请求被CPU响应,则对应位置1。单个中断被响应时,ISR中只有一个位为1;中断嵌套时ISR中有两个以上的位为1,表明一个中断未处理结束,又转入更高优先权的中断处理中。所以ISR表示当前有哪些正在响应的中断存在。

16.设目前系统的最高优先权为IR5,若执行OCW2命令,且命令中EOI=0,R=1,SL=1,L2L1L0=011。请指出OCW2命令执行后,8259A的优先权顺序。

解:因为OCW2命令中EOI=0,R=1,SL=1,因此该命令是设置优先权特殊循环,由L2L1L0=011确定最低优先权为IR3,该命令执行后,8259A的8个中断源的优先权从高至低次序为IR4、IR5、IR6、IR7、IR0、IR1、IR2、IR3。

第八章

例8-10 8253的计数器2用作分频器,将频率1.19MHz的输入脉冲转变成频率为500Hz的脉冲信号。8253的端口地址为70H ~ 73H。试编写初始化程序段。

解:依题意,计算分频系数N=1.19*106/500=2380=094CH,则其初始化程序段为:MOV AL,0B4H

OUT 73H,AL

MOV AL,4CH

OUT 72H,AL

MOV AL,09H

OUT 72H,AL

6.以8255A作为接口,采集8个开关状态,然后通过8个发光二极管显示出来(开关闭合,对应发光二极管亮;开关打开,对应发光二极管暗)。请画出电路连接图并编程实现。

解:电路连接图如图示,从图中连接知,该8255A的端口地址为80H ~ 83H。

程序段如下:

MOV AL,82H

OUT 83H,AL

LP:IN AL,81H

NOP

OUT 80H,AL

JMP LP

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

《微机原理及应用》试题库 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, V1 D.MOV 2000H, V2 9. – 49D的二进制补码为 A 。

微机原理程序 (2)

实验二:循环程序设计 2. DA TA SEGMENT x db -78,127,-128,-125,88 y db 32,-43,76,95,1 S db 5 dup(?) data ends Code segment Assume cs:code,ds:data Start:mov ax,data Mov ds,ax Mov cx,5 Mov bx,0 L1:mov al,x[bx] Add al,y[bx] Inc bx Loop L1 MOV AH,4CH INT 21H CODE ENDS END START 3. DA TA SEGMENT Y DB 68H,24H,90H,57H,13H HX DB 67H,34H,12H,90H,57H S DB 5 DUP(?) DA TA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DA TA START:MOV AX,DATA MOV DS,AX MOV CX,5 MOV SI,OFFSET X MOV DI,OFFSET Y LP:MOV AL,[SI] MOV AH,[DI] ADC AL,AH DAA MOV S[SI],AL INC SI INC DI LOOP LP MOV AH,4CH INT 21H

CODE ENDS END START 4、 DA TA SEGMENT LIST DB 0,1,2,3,4,5,6,7,8,9 COUNT EQU $-LIST DA TA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DA TA START:MOV AX,DATA MOV DS,AX MOV CX,COUNT-1 LOOP1:MOV DX,CX MOV BX,0 LOOP2:MOV AX,LIST[BX] CMP AX,LIST[BX+1] MOV LIST[BX],AX LOOP3:INC BX LOOP LOOP2 MOV CX,DX LOOP LOOP1 MOV AX,4CH INT 21H CODE ENDS END START 实验三:子程序调用程序设计 DA TA SEGMENT NUM DB 85,77,126,-1,-43,37,-128,11,-19,13 DA TA ENDS ADDITION SEGMENT NUM1 DB 10 DUP(?) ADDITION ENDS CODE SEGMENT ASSUME CS:CODE,DS:DA TA,ES:ADDITION START:AX,DATA MOV DS,AX MOV AX,ADDITION MOV ES,AX CALL ORDER CALL COPY MOV AH,4CH INT 21H ORDER PROC MOV CX,9

微机原理课件设计简易计算器

二○一一~二○一二学年第一学期 信息科学与工程学院 自动化系 课程设计计划书 课程名称:微机原理及应用课程设计班级:自动化0901 姓名:王立 学号:200904134032 指导教师:孟志华 二○一一年十二月六日

一、课题名称 简易计算器设计 二、课题目的 利用8088和8255设计一个简易计算器,并将其结果显示在LED数码管上。熟悉系统设计的基本步骤,掌握8088与8255的接口设计,掌握通过8255设计键盘扫描技术,掌握通过8255显示七段共阴极数码管设计。加强对8088数据总线,地址总线及接口寻址的理解,加深对8255的端口控制的理解。 三、需求分析 (1)能够实现99以内的加减乘法运算,并显示在2位LED上。 (2)对于减法运算产生的负数,可在LED上显示“-”号,若负量超过9,则显示“E0”。 四、方案选择 方案一: 该方案将LED显示电路直接接在8088的DB上,而键盘则采用8255进行扫描。

方案二: 该方案则是将LED显示电路和键盘扫描电路分别接在两个不同的8255上,扫描和显示时,选中不同的8255。 方案三: 该方案则只用一片8255驱动LED显示和键盘扫描电路。 方案评估: 方案一:LED显示驱动电路实现起来较简单,但是很浪费系统总线资源,舍弃! 方案二:释放了系统数据总线,但是方案缺乏经济性,因为采用了两片8255,与建设资源节约型社会初衷冲突!舍弃! 方案三:此种方案较为经济,方便,具有模块化的特点(因为将计算和显示电路全部集成在了8255上,应用时,直接挂接8255即可实现要求!) 综上所述:采用方案三!

五、程序流程图 程序总流程图:

微机原理与接口技术知识点复习总结汇编

第一章计算机基础知识 本章的主要内容为不同进位计数制计数方法、不同进位制数之间相互转换的方法、数和字符在计算机中的表示方法、简单的算术运算以及计算机系统的组成。下边将本章的知识点作了归类,图1为本章的知识要点图,图1.2为计算机系统组成的示意图。 本章知识要点 数制 二进制数(B) 八进制数(Q) 十六进制数(H) 十进制数(D) B) 码制 带符号数编码 奇偶校验码 字符编码 原码 反码 补码 ASCII码 BCD码 压缩BCD码 非压缩BCD码计算机系统组成 计算机系统组成硬件 主机 外部设备 中央处理器(CPU) 半导体存储器 控制器 运算器 ROM RAM 输入设备 输出设备 软件 系统软件 应用软件 操作系统:如DOS、Windows、Unix、Linux等 其他系统软件 用户应用软件 其他应用软件 各种计算机语言处理软件:如汇编、解释、编译等软件

第二章8086微处理器 本章要从应用角度上理解8086CPU的内部组成、编程结构、引脚信号功能、最小工作模式的系统配置、8086的存储器组织、基本时序等概念。下面这一章知识的结构图。 本章知识要点 Intel 8086微处理器 时钟发生器(8284) 地址锁存器(74LS373、8282) 存储器组织 存储器逻辑分段 存储器分体 三总线(DB、AB、CB) 时序 时钟周期(T状态) 基本读总线周期 系统配置 (最小模式) 8086CPU 数据收发器(8286、74LS245) 逻辑地址物理地址 奇地址存储体(BHE) 偶地址存储体(A0) 总线周期指令周期 基本写总线周期 中断响应时序 内部组成 执行单元EU(AX、BX、CX、DX、SP、BP、SI、DI、标志寄存器) 总线接口单元BIU(CS、DS、SS、ES、IP) 地址/数据 控制 负责地址BHE/S7、ALE 引脚功能(最小模式)地址/状态 数据允许和收发DEN、DT/R 负责读写RD、WR、M/IO 负责中断INTR、NMI、INTA 负责总线HOLD、HLDA 协调CLK、READY、TEST 模式选择MN/MX=5V

微机原理试题及答案

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 。

微机原理程序

一,在数据段从TABLE开始定义10无符号的数据,每个数据为一个字节,计算这10个数的和,结果放到SUM字单元之中 DA TA SEGMENT TABLE DB 12H, 23H, 34H, 45H, 56H DB 67H, 78H, 89H, 9AH, 0FDH SUM DW DA TA ENDS STACK SEGMENT D8 5 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA, SS: STACK START: MOV AX, DATA MOV DS, AX MOV ES, AX MOV AX,STACK MOV SS, AX LEA SI, TABLE MOV CX, 10 XOR AX, AX NEXT: ADD AL , 0 INC SI LOOP NEXT MOV SUM, AX MOV AH, 4CH INT 21H CODE ENDS ENDS START

二,在数据段自TABLE开始的连续10个单元中有放在0-9的平方值,查表求任意数X (0<=X<=9)的平方值,并将结果放到RESULT中 三,在数据段定义2个数据,每个数据占有若干字节,按照低地址存储低数据位的原则存储,这两个数据长度一样,计算这2个数据的和,并将结果放到RESULT中。 四、用8255PA作开关量输入口,PB作输出口。 CODE SEGMENT ASSUME CS:CODE ,DS:CODE ,ES:CODE ORG 32E0H PA EQU 0FFD8H PB EQU 0FFD9H PC EQU 0FFDAH PCTL EQU 0FFDBH HI:MOV DX,PCTL MOV AL,90H OUT DX,AL PI:MOV DX,PA IN AL,DX INC DX OUT DX,AL JMP PI CODE ENDS END HI

2014年微机原理课程设计题目-汇总 (1)

1.根据键盘输入的一个数字显示相应的数据螺旋方阵。如输入4,则显示。 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 共需要显示4^2=16个数字。 要求:①根据键盘输入的数字(3-20),显示相应的数据方阵。 ② 画出设计思路流程图,编写相应程序。 2.显示日期或时间。要求:有提示信息,输入字母“r”,可显示系统当前日期;输入字母“s”,可 显示系统当前时间;输入字母“q”,退出程序。 3.字符游戏 随机显示字符ch,等待用户输入 如果输入字符与ch一致,则随机显示下一个字符ch2;否则显示“输入错误”; 如此循环; 输入Enter结束 点击Enter程序退出; 4.从键盘上输入7名裁判的评分(0-10,整数),扣除一个最高分,扣除一个最低分,计算出其它五 个分数的平均值(保留一位小数),并在显示其上输出 “The final score is:”和最终结果。 5.为短跑比赛设计一个确定成绩次序的程序,要求能够输入8个队员编号,成绩;输出最终的排名 次序编号及成绩。(成绩时间格式--秒数:百分秒数,如12:15) 6.为评委设计一个显示选手通过的指示器,以电脑显示屏作为指示屏。当从键盘输入0时,显示屏 上呈现“×”图形,表示选手被淘汰;当从键盘输入1时,显示屏上呈现“√”图形,表示选手通过。 7.试设计一个道路收费系统,将车型分为大型车、中型车、小型车,每种车型分别有各自的单公里 收费标准,如下表所示,在收费时,将车型和公里数输入系统,就可自动生成收费额,(公里数取整。收费额以元为单位,保留一位小数)。 序号 车型 单公里收费(单位:0.1元) 1 大型车 5 2 中型车 3 3 小型车 1 8.通过实验箱TDN实现8个LED灯循环闪烁。 要求:首先是1、3、5、7号LED灯以此亮1秒钟,当第7号LED灯亮后,这四个灯同时闪烁5下; 然后,2、4、6、8号灯依次亮1秒钟,当第8号灯亮后,这四个灯同时闪烁5下。 9.为男子25米手枪速射决赛设计一个排名程序。决赛有6名运动员参加,每人每轮次打5枪,每枪 打中靶子的中心区就计一分,打不中就记0分。四轮比赛之后,先将成绩最低的选手淘汰(即为

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

《微机原理及应用》试题库 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. 将下面C语言程序的代码片段转换为功能等价的汇编语言代码片段,其中sign与sinteger 均为双字变量。 if ( sinteger = = 0) sign = = 0; else If ( siteger > 0) sign = 1; else sign = -1; mov eax,sinteger mov edx,sign cmp eax,0 jnz L1 mov ebx,0 L1:cmp ebx,0 jl L2 mov ebx,1 L2:mov ebx,-1 2. 将下面C语言程序的代码片段转换为功能等价的汇编语言代码片段,其中ch1与caps均为字节变量。 if (ch1> =’a’ && ch1< =’z’) caps= =0; if (ch1> =’A’ && ch1< =’Z’) caps= =1; mov ax,ch1 mov bx,caps cmp ax,a jb next cmp ax,z ja next mov bx,0 next:cmp ax,A jl done cmp ax,Z ja done done: 3. 将下面C语言程序的代码片段转换为功能等价的汇编语言代码片段,其中sum与i变量均为双字变量。 sum=0; for ( i=1;i< =100;i++) if ( i%2= =0) sum=sum+i; mov ecx,i mov ecx,1 .while(ecx<=100)

mov eax,ecx xor edx,edx mov ebx,2 div ebx cmp edx,0 jnz next add sum,ecx next:inc ecx .endw 1. 能被4整除但不能被100整除,或者年被400整除的年份是闰年。编程写一个完整的程序,求出2012年~2099年中的所有闰年年份,并把它们存放在数组Lyear中。 算法描述 ; esi=0;ecx=2012; ; while (ecx<2100) ; { if (year mod 4=0 and year mod 100 <>0) or (year mod 400=0) then ; {Lyear[esi]=ecx;esi++;} ; ecx++; ; } ; Lcounter=esi; include io32.inc .data Lyear dword 100 dup(?) Lcounter dword 0 .code mainproc xor esi,esi ;esi闰年个数计数器,兼做Lyear下标。 mov ecx,2012 ;ecx年份计数器。 .while (ecx<2100) mov eax,ecx xor edx,edx mov ebx,400 div ebx cmp edx,0 jz leap ;if year mod 400=0 then goto leap mov eax,ecx xor edx,edx mov ebx,4 div ebx cmp edx,0 jnz next ;if year mod 4<>0 then goto next mov eax,ecx xor edx,edx mov ebx,100 div ebx

微机原理课程设计_简易计算器的设计

目录 一前言 (1) 二总体设计 (2) 三硬件设计 (2) 3.1微处理器8086芯片 (2) 3.2可编程并行接口芯片8255A (3) 3.3LED数码管 (4) 3.44 X 4矩阵按键 (4) 3.5硬件原理图 (6) 四软件设计 (7) 4.1程序流程图 (7) 4.2源代码 (9) ■ ■?I 五仿真 (18) 六课程设计体会 (18) - I 七参考文献 (19) \ 吏\ 一刖言 1.1课程设计的目的和任务 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一个重要教 :第丸卜\\\\ 学环节。 、、、 | r-—__ i 通过课程设计,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得 到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。 通过课程设计实践,不仅要培养学生事实求是和严肃认真的工作态度,培养学生的实际动手能

力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。 1.2课程设计指导及要求 在课程设计时,2~3名同学组成1个设计小组,分别完成项目的功能设计、电路编辑及调试、编码及调试和课程设计报告编写工作。同批次同学中选择同一题的不超过3组。在教师指导下,可以相互讨论。每设计小组提交1份设计报告,设计报告由设计小组同学独立完成,不得互相抄袭。教师的主导作用主要在于指明设计思路,启发学生独立设计的思路,解答疑难问题和按设计进度进行阶段审查。学生必须发挥自身学习的主动性和能动性,主动思考问题、分析问题和解决问题,而 不应处处被动地依赖指导老师。同学应积极主动的提出问题、解决问题、讨论问题,互相帮助和启发。 学生在设计中可以引用所需的参考资料,避免重复工作,加快设计进程,但必须和题目的要求相符合,保证设计的正确。指导教师要引导学生学会掌握和使用各种已有的技术资料,不能盲目地、机械地抄袭资料,必须具体分析,使设计质量和设计能力都获得提高。学生要在老师的指导下制定 F.. I I . j 1 I I 好自己各环节的详细设计进程计划,按给定的时间计划保质保量的完成个阶段的设计任务。设计中 j. i z「3 ■■ 可边设计,边修改,软件设计与硬件设计可交替进行,问题答疑与调试和方案修改相结合,提高设计的效率,保证按时完成设计工作并交出合格的设计报告。 二总体设计 设计思路:首先利用程序不断扫描键盘是不是有输入,如果没有就一直扫描,如果有就调用子程序 进行判断,是数值则进行存储并同时进行显示,是运算符号等就调用相应的子程序进行操作,操作 后则继续利用程序不断扫描键盘是不是有输入,从而实现4位十进制数以内的加减乘除法运算。运算完成后将运算的结果储存并显示到LED显示器上。 三硬件设计 3.1微处理器8086芯片 当引脚接高电平时,CPU工作于最小模式。此时,引脚信号24?31的含义及其功能如下: (1)10/M/ (memoryl/Oselect ):存储器、I/O端口选择控制信号。信号指明当前CPU是选择访问存储器还是访问I/O端口。为高电平时访问存储器,表示当前要进行CPU与存储器之间的数据传送。为低电平时,访问I/O端口,表示当前要进行CPU与I/O端口之间的数据传送。 (2)WR/(write ):写信号,输

微机原理常考知识点

1、必须注意,不能用一条MOV指令实现以下传送: ①存储单元之间的传送。 ②立即数至段寄存器的传送。 ③段寄存器之间的传送。 2、ORG 表示将逻辑地址搬移至某一地方 OFFSET表示数组的偏移量(首地址) JNZ 非零跳转 JB 小于跳转 JA 大于跳转 LOOP 无条件跳转 WORD PTR的作用类似于OFFSET ROL 左移 ROR 右移 3、程序书写的一般格式: STACK SEGMENT DW 64 DUP(?) STACK ENDS DA TA SEGMENT DB:一个字节DW:两个字节DQ:四个字节 ORG .... DA TA ENDS CODE SEGMENT MAIN PROC FAR ASSUME CS:CODE DS:DA TA SS:STACK MOV AX DATA MOV DS AX MOV CX X(循环次数,可以是立即数,可以是DATA域内定义的一个常数) MOV DI OFFSET NAME(将定义的数组的首地址放入到SI或DI寄存器中用与后续的循环) ... MOV AH 4CH INT 21H MAIN ENDP CODE ENDS END MAIN 在进行运算的过程过程中,需要根据运算数是DB还是DW对寄存器进行选择是AL还是AX。 4、8086的寻址方式:

寄存器寻址、立即寻址、直接寻址、寄存器间接寻址、基址相对寻址、变址相对寻址、基址变址相对寻址 5、各个寄存器的功能: CX用于存储循环次数、AX用于各种运算和CPU与接口的数据交换、BX用来存放地址 注意寄存器的清零(一般是对AX寄存器清零,因为需要使用该寄存器进行各项运算) 6、如何处理加法过程中的进位问题。 第四章PPT 43页开始 方法一:如果有进位,AH加1 方法二:使用ADC指令 小写转大写程序 压缩BCD和非压缩BCD码的程序 7、冯诺依曼体系: 1.计算机由运算器、存储器、控制器、输入、输出设备五大部件组成; 2.程序和数据均以二进制的形式存储在存储器中,存储的位置由地址码指定,地址码也是二进制形式的; 3.控制器是根据存放在存储器中的指令序列(即程序)控制的,并由程序计数器控制指令的执行。

微机原理练习六--读程序并回答问题

微机原理练习六读程序并回答问题 1. 已知,(DS)=2000H,(BX)=100H,(SI)=0002H,从物理地址20100H单元开始,依次存放数据12H、34H、56H、78H; 而从物理地址21200H单元开始,依次存放数据2AH、4CH、8BH、98H。试说明下列各条指令单独执行后AX寄存器的内容。 ① MOV AX,3600H (AX)= ② MOV AX,[1200H] (AX)= ③ MOV AX,BX (AX)= ④ MOV AX,[BX] (AX)= 2. 以下语句汇编后,变量CON1、CON2、CON3和CON4的内容分别是多少? N1=10 N2=5 N3=3 CON1 DB NOT N1 CON2 DB (N1 AND N2 OR N3)GE 0FH CON3 DW (N2 AND N1 XOR N3)LE 0FH CON4 DB (N1 AND N3 OR N2)LT 0FH 3. 读下列程序,并在空白处填入合适指令,使该程序段能完成将100H个字节数据从2000H处搬到1000H处的操作。 MOV SI,2000H MOV CX,100H CLD 4 指出下面指令序列的执行结果。 MOV DX,2000H MOV BX,1000H XCHG BX,DX 则:BX= DX= 5 设初值AX=6264H,CX=0001H,在执行下列程序段后,AX=?CX=? AND AX,AX JZ DONE SHL CX,1 ROR AX,CL DONE:OR AX,1234H 则:AX= CX=

6有数据定义如下,与之等同功能的指令是什么? DAT DW 100 DUP(?) : MOV CX,LENGTH DAT ADD AX,TYPE DAT 7. 指出下面指令序列的执行结果。 MOV AX,1234H PUSH AX POP BX 则:BX= AX= 8. 对于给定的数据定义,变量R1和R2的值分别是多少? ①A1 DB 1,2,3,‘ABC’ A2 DB 0 R1 EQU A2-A1 则R1= ②K1 DW ? K2 DB 6 DUP(?) R2 EQU $-K1 则R2= 9. 选用最少的指令,实现下述要求的功能。 ①AH的高4位清0,其余位不变。 ②AL的高4位取反,其余位不变。 ③AL的高4位移到低4位,高4位清0。 ④AL的低4位移到高4位,低4位清0。 10. 下面一段程序完成对某一缓冲区置全“1”操作。设缓冲区长度为20个字节,缓冲区首址DI=0200H,并设(ES) =3000H,试填空。 CLD MOV AX,3000H MOV DI,0200H MOV AL,0FFH REP STOSB 11. 下列伪指令在存储区中分别为各变量分配多少字节? VR1 DW 10 VR2 DW 6DUP(?),66,88 VR3 DD 10DUP(?) VR4 DB ‘HOW ARE YOU’ 12. 写出下列程序段执行后的结果,并说出完成的是什么功能? MOV CL,4 MOV AL,87H MOV DL,AL AND AL,0FH OR AL,30H SHR DL,CL OR DL,30H 则(AL)= (DL)= 实现的功能为13. 分析程序段,并填入适当的内容。 MOV AL,0FH

简易计算器的设计与实现

沈阳航空航天大学 课程设计报告 课程设计名称:单片机系统综合课程设计课程设计题目:简易计算器的设计与实现 院(系): 专业: 班级: 学号: 姓名: 指导教师: 完成日期:

沈阳航空航天大学课程设计报告 目录 第1章总体设计方案 (1) 1.1设计内容 (1) 1.2设计原理 (1) 1.3设计思路 (2) 1.4实验环境 (2) 第2章详细设计方案 (3) 2.1硬件电路设计 (3) 2.2主程序设计 (7) 2.2功能模块的设计与实现 (8) 第3章结果测试及分析 (11) 3.1结果测试 (11) 3.2结果分析 (11) 参考文献 (12) 附录1 元件清单 (13) 附录2 总电路图 (14) 附录3 程序代码 (15)

第1章总体设计方案 1.1 设计内容 本设计是基于51系列的单片机进行的十进制计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除1位无符号数字的简单四则运算,并在6位8段数码管上显示相应的结果。 设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的8751单片机,输入采用4×4矩阵键盘。显示采用6位8段共阳极数码管动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。编程语言方面从程序总体设计以及高效性和功能性对C语言和汇编语言进行比较分析,最终选用汇编语言进行编程,并用protel99se涉及硬件电路。 1.2 设计原理 在该课程设计中,主要用到一个8751芯片和串接的共阳数码管,和一组阵列式键盘。作为该设计的主要部分,下面将对它们的原理及功能做详细介绍和说明。 1)提出方案 以8751为核心,和数码管以及键盘用实验箱上已有的器件实现计算器的功能。 2) 总体方案实现 (1)要解决键值得读入。先向键盘的全部列线送低电平,在检测键盘的行线,如果有一行为低电平,说明可能有按键按下,则程序转入抖动检测---就是延时10ms再读键盘的行线,如读得的数据与第一次的相同,说明真的有按键按下,程序转入确认哪一键按下的程序,该程序是依次向键盘的列线送低电平,然后读键盘的行线,如果读的值与第一次相同就停止读,此时就会的到键盘的行码与列码

微机原理知识点汇总

微机原理知识点汇总

————————————————————————————————作者:————————————————————————————————日期:

微机原理复习总结 第1章基础知识 ?计算机中的数制 ?BCD码 与二进制数11001011B等值的压缩型BCD码是11001011B。 F 第2章微型计算机概论 ?计算机硬件体系的基本结构 计算机硬件体系结构基本上还是经典的冯·诺依曼结构,由运算器、控制器、存储器、输入设备和输出设备5个基本部分组成。 ?计算机工作原理 1.计算机由运算器、控制器、存储器、输入设备和输出设备5个基本部分组成。 2.数据和指令以二进制代码形式不加区分地存放在存储器重,地址码也以二进制形式;计算机自动区 分指令和数据。 3.编号程序事先存入存储器。 ?微型计算机系统 是以微型计算机为核心,再配以相应的外围设备、电源、辅助电路和控制微型计算机工作的软件而构成的完整的计算机系统。 ?微型计算机总线系统 数据总线 DB(双向)、控制总线CB(双向)、地址总线AB(单向); ?8086CPU结构 包括总线接口部分BIU和执行部分EU BIU负责CPU与存储器,,输入/输出设备之间的数据传送,包括取指令、存储器读写、和I/O读写等操作。 EU部分负责指令的执行。 ?存储器的物理地址和逻辑地址 物理地址=段地址后加4个0(B)+偏移地址=段地址×10(十六进制)+偏移地址 逻辑段: 1). 可开始于任何地方只要满足最低位为0H即可 2). 非物理划分 3). 两段可以覆盖 1、8086为16位CPU,说明(A ) A. 8086 CPU内有16条数据线 B. 8086 CPU内有16个寄存器 C. 8086 CPU内有16条地址线 D. 8086 CPU内有16条控制线 解析:8086有16根数据线,20根地址线; 2、指令指针寄存器IP的作用是(A ) A. 保存将要执行的下一条指令所在的位置 B. 保存CPU要访问的内存单元地址 C. 保存运算器运算结果内容 D. 保存正在执行的一条指令 3、8086 CPU中,由逻辑地址形成存储器物理地址的方法是(B ) A. 段基址+偏移地址 B. 段基址左移4位+偏移地址 C. 段基址*16H+偏移地址 D. 段基址*10+偏移地址 4、8086系统中,若某存储器单元的物理地址为2ABCDH,且该存储单元所在的段基址为2A12H,则该

微机原理试题集题库(带答案)

微机原理及应用习题集库 (2) 一、填空 (2) 二、单项选择题 (8) 三、程序分析题(每小题6分,共24分) (22) 四、判断题(在对的后面画√,错的后面画×): (34) 五:分析判断题(判断对错,并指出错误原因) (42) 六、简答题: (45) 七、程序题 (51) 八、接口芯片的综合编程题 (66) (一)8255A (66) (二)8259A (72) (三). 其它端口编程题 (75)

微机原理及应用习题集库 (请认真复习4、5、7、10、11章后的习题) 一、填空 1.87的原码是 0101 0111B=57H ,补码是 01010111B ,反码 01010111B 。 2.SP总是指向栈顶,若原先SP=2000H,SS=2000H,问CPU执行指令PUSH AX 后,AL内容压入物理地址为 21FFEH 存储单元中,AH内容压入物理地址为 21FFFH 存储单元中。 3.以BX基址寻址,约定的段寄存器是 DS ,以BP基址寻址,约定的段寄存 器是 SS ,变址寻址约定的段寄存器是 DS 。 4.假设某个字的值是1234H,其低位字节地址是20H,高位字节地址是21H,那么 该字地址是 20H 。 5.8086/8088的状态标志有 6(SF、PF、AF、OF、ZF、CF)个。8086/8088系统中,存储器是分段的,每段最大长度是 64K 字节,段内偏移地址从 0000H 到 FFFFH 。 6、CPU访问存储器进行读写操作时,通常在 T3状态去检测READY ,一旦检测

到READY无效,就在其后插入一个 T w周期。 7、汇编语言源程序中的语句有三种类型,它们是指令语句,伪指令 语句,宏指令语句。 8、、8086CPU寻址外设可以有两种方式,一种是直接寻址方式,另一种是间 接寻址方式。 9、CPU与外设之间的连接部件称为 I/O接口,它的基本功能是在 CPU与外设之间起缓冲作用。 10、C PU从主存取出一条指令并执行该指令的时间称(),它通常用若干个() 来表示,而后者又包括若干个()。 ①指令周期②机器周期③时钟周期 答:1-2-3 14、数据的输入/输出指的是CPU与 I/O接口进行数据交换。 15.已知X= -120,则X的原码(用八位二进制表示)是____________,补码(用八位二进制表示)是____________。 16、8088中的指令INT n用(N )指定中断类型。 17、8088的ALE引脚的作用是(地址锁存允许)。 18.一片8255A端口A有( 3 )种工作方式,端口B有( 2 )种工作方式。 19.当8255A口工作在方式1输出时,A口输入信号联络线的名称是 IBF ,

微机原理程序

;**********************; ;* 数/模转换实验1 *; ;* 产生锯齿波 *; ;**********************; io0832a equ 290h code segment assume cs:code start: mov cl,0 mov dx,io0832a lll: mov al,cl out dx,al add cl,10 push dx mov ah,06h ;判断是否有键按下 mov dl,0ffh int 21h pop dx jz lll ;若无则转LLL mov ah,4ch ;返回 int 21h code ends end start ;**********************; ;* 数/模转换实验2 *; ;* 产生正弦波 *; ;**********************; data segment io0832a equ 290h Sin db 80h,96h,0aeh,0c5h,0d8h,0e9h,0f5h,0fdh db 0ffh,0fdh,0f5h,0e9h,0d8h,0c5h,0aeh,96 h db 80h,66h,4eh,38h,25h,15h,09h,04h Db 00h,04h,09h,15h,25h,38h,4eh,66h ;正弦波数据 data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax ll: mov si,offset sin ; 置正弦波数据的偏移地址为SI mov bh,32 ;一组输出32个数据 lll: mov al,[si] ;将数据输出到D/A转换器 mov dx,io0832a out dx,al mov ah,06h mov dl,0ffh int 21h jne exit mov cx,1 delay: loop delay ;延时 inc si ;取下一个数据 dec bh jnz lll ;若未取完32个数据则转lll jmp ll exit: mov ah,4ch ;退出 int 21h code ends end start ;****************************; ;* AD转换器2--示波器 *; ;* 采集数据在屏幕是作图 *; ;****************************; io0809b equ 299h code segment assume cs:code start: mov ax,0012h ;设屏幕显示方式为VGA 640X480模示 int 10h start1: mov ax,0600h int 10h ;清屏 and cx,0 ;cx为横坐标draw: mov dx,io0809b ;启动A/D转换器通道1 out dx,al mov bx,200;500 ;延时delay: dec bx jnz delay

微机原理课件设计简易计算器

$ 二○一一~二○一二学年第一学期 信息科学与工程学院 自动化系 : 课程设计计划书 课程名称:微机原理及应用课程设计 班级:自动化 0901 姓名:王立 学号: 4032 ] 指导教师:孟志华

二○一一年十二月六日 一、课题名称 简易计算器设计 二、课题目的 利用8088和8255设计一个简易计算器,并将其结果显示在LED数码管上。熟悉系统设计的基本步骤,掌握8088与8255的接口设计,掌握通过8255设计键盘扫描技术,掌握通过8255显示七段共阴极数码管设计。加强对8088数据总线,地址总线及接口寻址的理解,加深对8255的端口控制的理解。 ! 三、需求分析 (1)能够实现99以内的加减乘法运算,并显示在2位LED上。 (2)对于减法运算产生的负数,可在LED上显示“-”号,若负量超过9,则显示“E0”。 四、方案选择 方案一: 、 该方案将LED显示电路直接接在8088的DB上,而键盘则采用8255进行扫描。

( 方案二: 该方案则是将LED 显示电路和键盘扫描电路分别接在两 个不同的8255上,扫描和显示时,选中不同的8255 。 方案三: ) 该方案则只用一片8255驱动LED 显示和键盘扫描电路。 方案评估: 方案一:LED 显示驱动电路实现起来较简单,但是很浪费系统总线资源,舍弃! 方案二:释放了系统数据总线,但是方案缺乏经济性,因为采用了两片8255,与建设资源节约型社会初衷冲突!舍弃! 方案三:此种方案较为经济,方便,具有模块化的特点(因为将计算和显示电路全部集成在了8255上,应用时,直接挂接8255

即可实现要求!) & 综上所述:采用方案三! 五、程序流程图 程序总流程图:

微机原理知识点总结

第一章概述 1.IP核分为3类,软核、硬核、固核。特点对比 p12 第二章计算机系统的结构组成与工作原理 1. 计算机体系结构、计算机组成、计算机实现的概念与区别。P31 2. 冯·诺依曼体系结构: p32 硬件组成五大部分 运算器、存储器、控制器、输入设备、输出设备,以存储器为中心 信息表示:二进制计算机内部的控制信息和数据信息均采用二进制表示,并存放在同一个存储器中。 工作原理:存储程序/指令(控制)驱动编制好的程序(包括指令和数据)预先经由输入设备输入并保存在存储器中 3.接口电路的意义 p34 第二段 接口一方面应该负责接收、转换、解释并执行总线主设备发来的命令,另一方面应能将总线从设备的状态或数据传送给总线主设备,从而完成数据交换。 4.CPU组成:运算器、控制器、寄存器。P34 运算器的组成:算术逻辑单元、累加器、标志寄存器、暂存器 5.寄存器阵列p35 程序计数器PC,也称为指令指针寄存器。存放下一条要执行指令的存放地址。 堆栈的操作原理应用场合:中断处理和子程序调用 p35最后一段 6. 计算机的本质就是执行程序的过程p36 7. 汇编语言源程序——汇编——>机器语言程序 p36 8. 指令包含操作码、操作数两部分。执行指令基本过程:取指令、分析指令、执行指令。简答题(简述各部分流程)p37 9. 数字硬件逻辑角度,CPU分为控制器与数据通路。P38 数据通路又包括寄存器阵列、ALU、片上总线。 10. 冯·诺依曼计算机的串行特点p38 串行性是冯·诺依曼计算机的本质特点。表现在指令执行的串行性和存储器读取的串行性。也是性能瓶颈的主要原因。 单指令单数据 11. CISC与RISC的概念、原则、特点。对比着看 p39、40

相关文档