当前位置:文档之家› 微机原理与接口技术 课程设计

微机原理与接口技术 课程设计

微机原理与接口技术 课程设计
微机原理与接口技术 课程设计

摘要

霓虹灯主要是通过8255A对LED亮灭状态的控制,和8254定时/计数器的定时功能实现霓虹灯闪烁控制系统,外设是红、绿、黄三种颜色的发光二极管,在程序自动控制下,按照不同规律闪烁同时由数码管显示相应的闪烁方式。

关键字: 8255A 8254 LED 数码管

一、设计的任务和要求

设计霓虹灯闪烁控制系统,是外设的红、绿、黄三种颜色的发光二极管,在开关的控制下或者在程序自动控制下,按照不同规律闪烁。

要求发光二极管的亮、灭变化有一定的规律;发光二极管变化规律要求有多种状态。

二、设计小组成员及分工

本次课设由冀任共同完成,在课设中遇到的问题四个人共同思考解决。

三、总体设计

1、8254用于定时:定时/计数器0与定时器/计数器1共同构成100ms的定时器,确定执行相邻闪烁方式的间隔时间。

2.8255A用于控制LED的状态和数码管显示:PA0接8254的输出,B口接数码管,显示对应的闪烁方式,C口输出控制LED的状态。

3、六种闪烁方式:

方式1:从左向右依次点亮8个LED灯,数码管显示1

方式2:从右向左依次点亮8个LED灯,数码管显示2

方式3:从左向右依次点亮4个的红灯、2个黄灯和2个绿灯,数码管显示3 方式4:从左向右两个两个的点亮8个LED灯,数码管显示4

方式5:从两边向中间依次点亮8个LED灯,数码管显示5

方式6:按红、绿、黄顺序点亮相同颜色的灯,数码管显示6

1、芯片介绍

(1)芯片8255A

8255A是具有3个8位并行I/O口3种工作方式的可编程并行接口芯片。8255共有40个引脚,采用双列直插式封装。

D0--D7:三态双向数据线,与单片机数据总线连接,用来传送数据信息。

CS:片选信号线,低电平有效,表示芯片被选中。

RD:读出信号线,低电平有效,控制数据的读出。

WR:写入信号线,低电平有效,控制数据的写入。

Vcc:+5V电源。

PA0--PA7:A口输入/输出线。

PB0--PB7:B口输入/输出线。

PC0--PC7:C口输入/输出线。

RESET:复位信号线。

A1、A0:地址线,用来选择8255内部端口。

GND:地线。

三种工作状态:

1) 工作方式 0 :这是 8255A 中各端口的基本输入 / 输出方式。它只完成简单的并行输入 / 输出操作, CPU 可从指定端口输入信息,也可向指定端口输出信息,如果三个端口均处于工作方式 0 ,则可由工作方式控制字定义 16 种工作方式的组合。

2) 工作方式 1 :被称作选通输入 / 输出方式。在这种工作方式下,数据输入 / 输出操作要在选通信号控制下完成。

3) 工作方式 2 :被称作带选通的双向传送方式。 8255A 中只允许端口 A 处于工作方式 2 ,可用来在两台处理机之间实现双向并行通信。其有关的控制信号由端口 C 提供,并可向 CPU 发出中断请求信号。

(2)芯片8254

8254 芯片是可编程定时/计数器芯片,片内有3个独立的16位计数器,每个计数器可编程设定为6中不同的工作方式。

8254的引脚图和引脚说明

8254芯片的工作方式:

8254芯片共有六种工作方式,分别对应与六种不同的用途。

1)方式0:计数结束产生中断。

2)方式1:可重触发单稳方式。

3)方式2:分频器。

4)方式3:方波发生器。

5)方式4:软件触发计数。

6)方式5:硬件触发计数。

2、硬件连接图

五、软件编程 1、软件流程图

开始

数码管显示1,点亮L7灯

CX=19(循环19次)

点亮L0灯 8254定时器1置初值10,定时100mS

N

开始

PC0=1

8254计数器1,方式0,只读写低八位。

(1)8254定时程序

结束

延时

AL 给8255C 口

(2)方式1

Y 循环结束?

结束 AL 左移

N

Y

(3)主程序

2、汇编语言源程序

DATA SEGMENT IOPORT EQU 0D880H-280H

IO8255A EQU IOPORT+280H

IO8255B EQU IOPORT+281H

IO8255C EQU IOPORT+282H

IO8255T EQU IOPORT+283H

IO82540 EQU IOPORT+288H

IO82541 EQU IOPORT+289H

IO8254K EQU IOPORT+28BH ;地址

PB DB ?

DATA ENDS

STACK SEGMENT STACK

S TA DW 50 DUP(?)

TOP EQU LENGTH STA

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK ;定义代码段

START: MOV AX,DATA

MOV DS,AX

MOV ES,AX

MOV DX,IO8255T ; 8255控制字为81H,端口C低四位为输入

MOV AL,10000001B

OUT DX,AL

MOV DX,IO8255C ;读端口C数据并保存

IN AL,DX

MOV PB,AL

MOV DX,IO8255T ;8255设控制字为90H

MOV AL,90H ; (端口A输入,端口B和C输出)

OUT DX,AL

MOV DX,IO8254K ;定时器0,方式三,先读写低八位,再读写高八位

MOV AL,36H

OUT DX,AL ;输入时钟,1MHZ

MOV DX,IO82540

MOV AX, 10000 ;初值10000,输出时钟周期10MS

OUT DX,AL

NOP

NOP

MOV AL,AH

OUT DX,AL

MOV DX,IO8254K ;计数器1,方式0,只读写低八位

MOV AL,50H

OUT DX,AL

CHXU1: MOV DX,IO8255B

MOV AL,06H

OUT DX,AL ;数码管显示1

MOV CX,17 ;循环17次

MOV AL,00000001B ;点亮L7灯

A: CALL DELAY10 ;延时

MOV DX,IO8255C

OUT DX,AL

ROL AL,1 ;AL循环左移一位

LOOP A ;循环是否结束?没有结束,跳到A

MOV AL,00H ;灯全灭

OUT DX,AL

MOV AH,01H ;有无键入

INT 16H

JNZ ppp

CHXU2: MOV DX,IO8255B ;数码管显示2

MOV AL,5BH

OUT DX,AL

MOV DX,IO82541

MOV AL,10 ;初值10,检测1秒

OUT DX,AL

DING2: MOV DX,IO8255A ;读入PA0值

IN AL,DX

AND AL,01H

JZ DING2 ;8255的PA0=1停止计时

MOV CX,17 ; 循环17次

MOV AL,10000000B ;点亮L1灯

B: CALL DELAY10 ;延时

MOV DX,IO8255C

OUT DX,AL

ROR AL,1 ;AL循环右移一位

LOOP B ;循环是否结束?没有结束,跳到B

MOV AL,00H

OUT DX,AL ;灯全灭

MOV AH,01H ;有无键入

INT 16H

JNZ ppp

CHXU3: MOV DX,IO8255B ;数码管显示3

MOV AL,4FH

OUT DX,AL

MOV DX,IO82541

MOV AL,10 ;初值10

OUT DX,AL

DING3: MOV DX,IO8255A

IN AL,DX

AND AL,01H

JZ DING3 ; 8255的PA0=1停止计时

MOV CX,2 ; 循环2次

C0: PUSH CX

MOV DX,IO8255C

MOV AL,01H ;左起第一展红灯亮

OUT DX,AL

CALL DELAY10

MOV AL,08H ;左起第二展红灯亮

OUT DX,AL

CALL DELAY10

MOV AL,40H ;左起第三展红灯亮

OUT DX,AL

CALL DELAY10

MOV AL,80H ;左起第四展红灯亮

OUT DX,AL

CALL DELAY10

MOV AL,02H ;左起第一展黄灯亮

OUT DX,AL

CALL DELAY10

MOV AL,10H ;左起第二展黄灯亮

OUT DX,AL

CALL DELAY10

MOV AL,04H ;左起第一展绿灯亮

OUT DX,AL

CALL DELAY10

MOV AL,20H ;左起第二展绿灯亮

OUT DX,AL

CALL DELAY10

POP CX

MOV AH,01H ;有无键入

INT 16H

JNZ ppp

LOOP C0

MOV AL,00H ;灯全灭

OUT DX,AL

CHXU4: MOV DX,IO8255B ;数码管显示4

MOV AL,66H

OUT DX,AL

MOV DX,IO82541

MOV AL,10 ;初值10

OUT DX,AL

DING4: MOV DX,IO8255A ;读入PA0值

IN AL,DX

AND AL,01H

JZ DING4 ;8255的PA0=1停止计时

MOV CX,9 ; 循环9次

MOV AL,00000011B ;点亮L6,L7灯

D: PUSH CX

CALL DELAY10 ;延时

MOV DX,IO8255C

OUT DX,AL

MOV CL,2

ROL AL,CL ;AL左移两位

POP CX

LOOP D ;循环若没有结束,跳到D

MOV AL,00H ;灯全灭

OUT DX,AL

MOV AH,01H ;有无键入

INT 16H

JNZ ppp

CHXU5: MOV DX,IO8255B ;数码管显示5

MOV AL,6DH

OUT DX,AL

MOV DX,IO8254K

MOV AL,50H

OUT DX,AL ;计数器1,方式0,只读写低8位

MOV DX,IO82541

MOV AL,10 ;初值100

OUT DX,AL

DING5: MOV DX,IO8255A ;读入PA0值

IN AL,DX

AND AL,01H

JZ DING5

MOV CX,2

E: PUSH CX

MOV DX,IO8255C

MOV AL,81H ;L7 ,L0亮

OUT DX,AL

CALL DELAY10

MOV AL,42H ;L6,L1亮

OUT DX,AL

CALL DELAY10

MOV AL,24H ;L5,L2亮

OUT DX,AL

CALL DELAY10

MOV AL,18H

OUT DX,AL

CALL DELAY10

POP CX

MOV AH,01H ;有无键入

JNZ ppp

LOOP E ;循环若没有结束,跳到E

MOV AL,00H

OUT DX,AL

CHXU6: MOV DX,IO8255B ;数码管显示6

MOV AL,7DH

OUT DX,AL

MOV DX,IO8254K

MOV AL,50H

OUT DX,AL ;计数器1,方式0,只读写低8位

MOV DX,IO82541

MOV AL,10 ;初值100

OUT DX,AL

DING6: MOV DX,IO8255A ;读入PA0值

IN AL,DX

AND AL,01H

JZ DING6

MOV CX,2

F: PUSH CX

MOV DX,IO8255C

MOV AL,01H ;L7亮

OUT DX,AL

CALL DELAY10

MOV AL,04H ; L5亮

OUT DX,AL

CALL DELAY10

MOV AL,10H ; L3亮

OUT DX,AL

CALL DELAY10

MOV AL,40H ; L1亮

OUT DX,AL

CALL DELAY10

MOV AL,02H ; L6亮

OUT DX,AL

CALL DELAY10

MOV AL,08H ; L4亮

OUT DX,AL

CALL DELAY10

MOV AL,20H ; L2亮

OUT DX,AL

CALL DELAY10

MOV AL,80H ; L0亮

OUT DX,AL

POP CX

MOV AH,01H ;有无键入

INT 16H

JNZ ppp

LOOP F ;循环若没有结束,跳到F

MOV AL,00H ;灯全灭

OUT DX,AL

CALL DELAY10

JMP CHXU1 ;循环致信程序

PPP: MOV DX,IO8255B ;数码管熄灭

MOV AL,00H

OUT DX,AL ;退出DOS

MOV AX,4C00H

INT 21H

DELAY1 PROC NEAR

PUSH CX

MOV CX,0FFFFH

CCC: LOOP CCC

POP CX

RET

DELAY1 ENDP

DELAY10 PROC NEAR

PUSH AX

PUSH CX

MOV CX,0800H

UUU: CALL DELAY1

LOOP UUU

POP CX

POP AX

RET

DELAY10 ENDP

CODE ENDS

END START

六、程序运行的结果

程序按照以下四种工作方式依次执行,当有按键按下时,执行完此时正在执行的方式就停止。

方式1:从左向右依次点亮8个LED灯,数码管显示1

方式2:从右向左依次点亮8个LED灯,数码管显示2

方式3:从左向右依次点亮4个的红灯、2个黄灯和2个绿灯,数码管显示3

方式4:从左向右两个两个的点亮8个LED灯,数码管显示4

方式5:从两边向中间依次点亮8个LED灯,数码管显示5

方式6:按红、绿、黄顺序点亮相同颜色的灯,数码管显示6

七、设计过程中出现的问题及解决方法

1、循环与任意键结束问题的解决。起初写好的程序实现不了按任意键结束和循环,本来是执行完闪烁方式4后判断是否有键按下,没有继续循环执行,有退出。然后在每种工作方式之后都加了判断是否有键按下的程序,就可以实现按意见结束的功能,并在无键按下时一直循环。

2、两个数码管同时显示,将其S0端口接地,便实现了其单独的显示。

八、设计总结

通过这次课程设计我们学到很多。使我们的学习能力有所提高,但是由于我们的课设还是比较简单,时间也比较紧,所以我们自己要是有机会和时间,一定要做其他一些感兴趣的东西,使自己对硬件语言编程掌握的更灵活一些。

九、程序清单

DATA SEGMENT

IOPORT EQU 0D880H-280H

IO8255A EQU IOPORT+280H

IO8255B EQU IOPORT+281H

IO8255C EQU IOPORT+282H

IO8255T EQU IOPORT+283H

IO82540 EQU IOPORT+288H

IO82541 EQU IOPORT+289H

IO8254K EQU IOPORT+28BH ;地址

PB DB ?

DATA ENDS

STACK SEGMENT STACK

S TA DW 50 DUP(?)

TOP EQU LENGTH STA

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK ;定义代码段

START: MOV AX,DATA

MOV DS,AX

MOV ES,AX

MOV DX,IO8255T ; 8255控制字为81H,端口C低四位为输入

MOV AL,10000001B

OUT DX,AL

MOV DX,IO8255C ;读端口C数据并保存

IN AL,DX

MOV PB,AL

MOV DX,IO8255T ;8255设控制字为90H

MOV AL,90H ; (端口A输入,端口B和C输出)

OUT DX,AL

MOV DX,IO8254K ;定时器0,方式三,先读写低八位,再读写高八位

MOV AL,36H

OUT DX,AL ;输入时钟,1MHZ

MOV DX,IO82540

MOV AX, 10000 ;初值10000,输出时钟周期10MS

OUT DX,AL

NOP

NOP

MOV AL,AH

OUT DX,AL

MOV DX,IO8254K ;计数器1,方式0,只读写低八位

MOV AL,50H

OUT DX,AL

CHXU1: MOV DX,IO8255B

MOV AL,06H

OUT DX,AL ;数码管显示1

MOV CX,17 ;循环17次

MOV AL,00000001B ;点亮L7灯

A: CALL DELAY10 ;延时

MOV DX,IO8255C

OUT DX,AL

ROL AL,1 ;AL循环左移一位

LOOP A ;循环是否结束?没有结束,跳到A

MOV AL,00H ;灯全灭

OUT DX,AL

MOV AH,01H ;有无键入

INT 16H

JNZ ppp

CHXU2: MOV DX,IO8255B ;数码管显示2

MOV AL,5BH

OUT DX,AL

MOV DX,IO82541

MOV AL,10 ;初值10,检测1秒

OUT DX,AL

DING2: MOV DX,IO8255A ;读入PA0值

IN AL,DX

AND AL,01H

JZ DING2 ;8255的PA0=1停止计时

MOV CX,17 ; 循环17次

MOV AL,10000000B ;点亮L1灯

B: CALL DELAY10 ;延时

MOV DX,IO8255C

OUT DX,AL

ROR AL,1 ;AL循环右移一位

LOOP B ;循环是否结束?没有结束,跳到B

MOV AL,00H

OUT DX,AL ;灯全灭

MOV AH,01H ;有无键入

INT 16H

JNZ ppp

CHXU3: MOV DX,IO8255B ;数码管显示3

MOV AL,4FH

OUT DX,AL

MOV DX,IO82541

MOV AL,10 ;初值10

OUT DX,AL

DING3: MOV DX,IO8255A

IN AL,DX

AND AL,01H

JZ DING3 ; 8255的PA0=1停止计时

MOV CX,2 ; 循环2次

C0: PUSH CX

MOV DX,IO8255C

MOV AL,01H ;左起第一展红灯亮

OUT DX,AL

CALL DELAY10

MOV AL,08H ;左起第二展红灯亮

OUT DX,AL

CALL DELAY10

MOV AL,40H ;左起第三展红灯亮

OUT DX,AL

CALL DELAY10

MOV AL,80H ;左起第四展红灯亮

OUT DX,AL

CALL DELAY10

MOV AL,02H ;左起第一展黄灯亮

OUT DX,AL

CALL DELAY10

MOV AL,10H ;左起第二展黄灯亮

OUT DX,AL

CALL DELAY10

MOV AL,04H ;左起第一展绿灯亮

OUT DX,AL

CALL DELAY10

MOV AL,20H ;左起第二展绿灯亮

OUT DX,AL

CALL DELAY10

POP CX

MOV AH,01H ;有无键入

INT 16H

JNZ ppp

LOOP C0

MOV AL,00H ;灯全灭

OUT DX,AL

CHXU4: MOV DX,IO8255B ;数码管显示4

MOV AL,66H

OUT DX,AL

MOV DX,IO82541

MOV AL,10 ;初值10

OUT DX,AL

DING4: MOV DX,IO8255A ;读入PA0值

IN AL,DX

AND AL,01H

JZ DING4 ;8255的PA0=1停止计时

MOV CX,9 ; 循环9次

MOV AL,00000011B ;点亮L6,L7灯

D: PUSH CX

CALL DELAY10 ;延时

MOV DX,IO8255C

OUT DX,AL

MOV CL,2

ROL AL,CL ;AL左移两位

POP CX

LOOP D ;循环若没有结束,跳到D

MOV AL,00H ;灯全灭

OUT DX,AL MOV AH,01H ;有无键入

INT 16H

JNZ ppp

CHXU5: MOV DX,IO8255B ;数码管显示5

MOV AL,6DH

OUT DX,AL

MOV DX,IO8254K

OUT DX,AL ;计数器1,方式0,只读写低8位

MOV DX,IO82541

MOV AL,10 ;初值100

OUT DX,AL

DING5: MOV DX,IO8255A ;读入PA0值

IN AL,DX

AND AL,01H

JZ DING5

MOV CX,2

E: PUSH CX

MOV DX,IO8255C

MOV AL,81H ;L7 ,L0亮

OUT DX,AL

CALL DELAY10

MOV AL,42H ;L6,L1亮

OUT DX,AL

CALL DELAY10

MOV AL,24H ;L5,L2亮

OUT DX,AL

CALL DELAY10

MOV AL,18H

OUT DX,AL

CALL DELAY10

POP CX

MOV AH,01H ;有无键入

INT 16H

JNZ ppp

LOOP E ;循环若没有结束,跳到E

MOV AL,00H

OUT DX,AL

CHXU6: MOV DX,IO8255B ;数码管显示6

MOV AL,7DH

OUT DX,AL

MOV DX,IO8254K

MOV AL,50H

OUT DX,AL ;计数器1,方式0,只读写低8位

MOV DX,IO82541

MOV AL,10 ;初值100

OUT DX,AL

DING6: MOV DX,IO8255A ;读入PA0值

IN AL,DX

AND AL,01H

JZ DING6

F: PUSH CX

MOV DX,IO8255C

MOV AL,01H ;L7亮

OUT DX,AL

CALL DELAY10

MOV AL,04H ; L5亮

OUT DX,AL

CALL DELAY10

MOV AL,10H ; L3亮

OUT DX,AL

CALL DELAY10

MOV AL,40H ; L1亮

OUT DX,AL

CALL DELAY10

MOV AL,02H ; L6亮

OUT DX,AL

CALL DELAY10

MOV AL,08H ; L4亮

OUT DX,AL

CALL DELAY10

MOV AL,20H ; L2亮

OUT DX,AL

CALL DELAY10

MOV AL,80H ; L0亮

OUT DX,AL

CALL DELAY10

POP CX

MOV AH,01H ;有无键入

INT 16H

JNZ ppp

LOOP F ;循环若没有结束,跳到F

MOV AL,00H ;灯全灭

OUT DX,AL

CALL DELAY10

JMP CHXU1 ;循环致信程序

PPP: MOV DX,IO8255B ;数码管熄灭

MOV AL,00H

OUT DX,AL ;退出DOS

MOV AX,4C00H

INT 21H

DELAY1 PROC NEAR

PUSH CX

MOV CX,0FFFFH

微机原理与接口技术(第三版)课本习题答案

第二章 8086体系结构与80x86CPU 1.8086CPU由哪两部分构成它们的主要功能是什么 答:8086CPU由两部分组成:指令执行部件(EU,Execution Unit)和总线接口部件(BIU,Bus Interface Unit)。指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU控制器等4个部件组成,其主要功能是执行指令。总线接口部件(BIU)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等。 2.8086CPU预取指令队列有什么好处8086CPU内部的并行操作体现在哪里答:8086CPU的预取指令队列由6个字节组成,按照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。从速度上看,该指令队列是在CPU内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。8086CPU 内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。 5.简述8086系统中物理地址的形成过程。8086系统中的物理地址最多有多少个逻辑地址呢答:8086系统中的物理地址是由20根地址总线形成的。8086系统采用分段并附以地址偏移量办法形成20位的物理地址。采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是16位二进制数。通过一个20位的地址加法器将这两个地址相加形成物理地址。具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址。由于8086CPU的地址线是20根,所以可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。逻辑地址由段基址和偏移地址两部分构成,都是无符号的16位二进制数,程序设计时采用逻辑地址,也是1MB。 6.8086系统中的存储器为什么要采用分段结构有什么好处 答:8086CPU中的寄存器都是16位的,16位的地址只能访问64KB的内存。086系统中的物理地址是由20根地址总线形成的,要做到对20位地址空间进行访问,就需要两部分地址

西电微机原理大作业

科目:微机原理与系统设计授课老师:李明、何学辉 学院:电子工程学院 专业:电子信息工程 学生姓名: 学号:

微机原理硬件设计综合作业 基于8086最小方式系统总线完成电路设计及编程: 1、扩展16K字节的ROM存储器,起始地址为:0x10000; Intel 2764的存储容量为8KB,因此用两片Intel 2764构成连续的RAM存储区域的总容量为2 8KB=16KB=04000H,鉴于起始地址为10000H,故最高地址为 10000H+04000H-1=13FFFH 电路如图

2、扩展16K 字节的RAM 存储器,起始地址为:0xF0000; Intel 6264的存储容量为8KB ,因此用两片Intel 6264构成连续的RAM 存储区域的总容量为2 8KB=16KB=04000H ,鉴于起始地址为F0000H ,故最高地址为 F0000H+04000H-1=F3FFFH 片内地址总线有13根,接地址总线的131~A A ,0A 和BHE 用于区分奇偶片,用74LS155作译码电路,如图所示 3、设计一片8259中断控制器,端口地址分别为:0x300,0x302; 鉴于端口地址分别是300H 和302H ,可将82590A 接到80861A ,其他作译码。电路如图:

4、设计一片8253定时控制器,端口地址分别为:0x320,0x322,x324,0x326; 根据端口地址可知,825301,A A 应该分别接到8086的12,A A ,其余参与译码。电路如图:

5、设计一片8255并行接口,端口地址分别为:0x221,0x223,x225,0x227; 由于端口地址为奇地址,8086数据总线应该接158~D D ,且BHE 参与译码。根据端口地址可得825501,A A 应该分别接到8086的12,A A ,其余参与译码。电路如图:

西电微机原理2010试题

西安电子科技大学微机原理试题 姓名学号总分 一.填空题(每空1分,共30分) 1)15的8位二进制补码为,-15的8位二进制补码为。 2)某8位二进制补码为80H,其十进制表示为。 3)字符B的ASCII码为,字符0的ASCII码为。 4)8086CPU总线按功能可分为数据总线,总线和总线。 5)8086CPU数据总线包含条数据线,最多可寻址的存储器容量为。 6)CPU内部用于计算的部分为,用于保存下一条要执行的指令地址的 为。 A) 程序状态字B) 程序计数器C) ALU D) 工作寄存器 7)经常用作循环次数的寄存器是,用于I/O端口寻址的寄存器是。 A) AX B) BX C) CX D) DX 8)指令MOV CX, 1000的结果是CH= 。 9)将0D787H和4321H相加后,标志位CF= ,SF= ,ZF= , OF= ,AF= ,PF= 。 10)寄存器SI中能够表示的最大有符号数为,最小有符号数为。 11)设(DS)=4000H,(BX)=0100H,(DI)=0002H,(4002)=0A0AH,(40100)=1234H,(40102) =5678H,求以下指令分别执行后AX寄存器的值。 MOV AX , [2] (AX)= 。 MOV AX , [BX] (AX)= 。 MOV AX , [BX][DI] (AX)= 。 MOV AX , 1[BX] (AX)= 。 12)用一条指令将AX寄存器低四位清零,其余位不变:。 13)用一条指令将AX寄存器高四位取反,其余位不变:。 14)用一条指令将AX高8位与低8位交换:。 15)用一条指令将AL中的大写字母变成相应的小写:。 二.判断题(每题1分,共10分) 以下语句是语法正确的打√,语法错误打×,其中TABLE和TAB为两个字节类型的变量。 1)MOV DS , 1000H 2)MOV DS , TABLE 3)MOV [1200H] , [1300H] 4)ADD AX , BX , CX 5)XCHG AL , CL 6)CALL AL 7)MUL AX , BX 8)JU L1 9)SHR CL , CL

微机原理与接口技术(第二版) 清华大学出版社

习题1 1.什么是汇编语言,汇编程序,和机器语言? 答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。 汇编语言是面向及其的程序设计语言。在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。 使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。 2.微型计算机系统有哪些特点?具有这些特点的根本原因是什么? 答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。 这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。 3.微型计算机系统由哪些功能部件组成?试说明“存储程序控制”的概念。 答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。 “存储程序控制”的概念可简要地概括为以下几点: ①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。 ②在计算机内部采用二进制来表示程序和数据。 ③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。 ④五大部件以运算器为中心进行组织。 4.请说明微型计算机系统的工作过程。 答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存

放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。 5.试说明微处理器字长的意义。 答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。它决定着计算机内部寄存器、ALU和数据总线的位数,反映了一台计算机的计算精度,直接影响着机器的硬件规模和造价。计算机的字长越大,其性能越优越。在完成同样精度的运算时,字长较长的微处理器比字长较短的微处理器运算速度快。 6.微机系统中采用的总线结构有几种类型?各有什么特点? 答:微机主板常用总线有系统总线、I/O总线、ISA总线、IPCI总线、AGP总线、IEEE1394总线、USB总线等类型。 7.将下列十进制数转换成二进制数、八进制数、十六进制数。 ①(4.75)10=(0100.11)2=(4.6)8=(4.C)16 ②(2.25)10=(10.01)2=(2.2)8=(2.8)16 ③(1.875)10=(1.111)2=(1.7)8=(1.E)16 8.将下列二进制数转换成十进制数。 ①(1011.011)2=(11.375)10 ②(1101.01011)2=(13.58)10 ③(111.001)2=(7.2)10 9.将下列十进制数转换成8421BCD码。 ① 2006=(0010 0000 0000 0110)BCD ② 123.456=(0001 0010 0011.0100 0101 0110)BCD 10.求下列带符号十进制数的8位基2码补码。 ① [+127]补= 01111111

西电微机原理实验报告

微机系统实验报告 班级:031214 学号:03121370 姓名:孔玲玲 地点:E-II-312 时间:第二批

实验一汇编语言编程实验 一、实验目的 (1)掌握汇编语言的编程方法 (2)掌握DOS功能调用的使用方法 (3)掌握汇编语言程序的调试运行过程 二、实验设备 PC机一台。 三、实验内容 (1)将指定数据区的字符串数据以ASCII码形式显示在屏幕上,并通过DOS功能 调用完成必要提示信息的显示。 (2) 在屏幕上显示自己的学号姓名信息。 (3)循环从键盘读入字符并回显在屏幕上,然后显示出对应字符的ASCII码,直到 输入“Q”或“q”时结束。 (4)自主设计输入显示信息,完成编程与调试,演示实验结果。 考核方式:完成实验内容(1)(2)(3)通过, 完成实验内容(4)优秀。 实验中使用的DOS功能调用:INT 21H 表3-1-1 显示实验中可使用DOS功能调用 AH 值功能调用参数结果 1 键盘输入并回显AL=输出字符 2 显示单个字符(带Ctrl+Break检查) DL=输出字符光标在字符后面 6 显示单个字符(无Ctrl+Break检查) DL=输出字符光标在字符后面 8 从键盘上读一个字符AL=字符的ASCII码 9 显示字符串DS:DX=串地址,‘$’为结束字符光标跟在串后面 4CH 返回DOS系统AL=返回码

四、实验步骤 (1)运行QTHPCI软件,根据实验内容编写程序,参考程序流程如图3-1-1所示。 (2)使用“项目”菜单中的“编译”或“编译连接”命令对实验程序进行编译、连接。 (3)“调试”菜单中的“进行调试”命令进入Debug调试,观察调试过程中数据传输指令执行后各寄存器及数据区的内容。按F9连续运行。 (4)更改数据区的数据,考察程序的正确性。 五、实验程序 DATA SEGMENT BUFFER DB '03121370konglingling:',0AH,0DH,'$' BUFFER2 DB 'aAbBcC','$' BUFFER3 DB 0AH,0DH,'$' DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DA TA START: MOV AX,DA TA MOV DS,AX mov ah,09h mov DX,OFFSET BUFFER int 21h

微机原理与接口技术学习心得

本学期微机原理课程已经结束,关于微机课程的心得体会甚多。微机原理与接口技术作为一门专业课,虽然要求没有专业课那么高,但是却对自己今后的工作总会有一定的帮助。记得老师第一节课说学微机原理是为以后的单片机打基础,这就让我下定决心学好微机原理这门课程。 初学《微机原理与接口技术》时,感觉摸不着头绪。面对着众多的术语、概念及原理性的问题不知道该如何下手。在了解课程的特点后,我发现,应该以微机的整机概念为突破口,在如何建立整体概念上下功夫。可以通过学习一个模型机的组成和指令执行的过程,了解和熟悉计算机的结构、特点和工作过程。 《微机原理与接口技术》课程有许多新名词、新专业术语。透彻理解这些名词、术语的意思,为今后深入学习打下基础。一个新的名词从首次接触到理解和应用,需要一个反复的过程。而在众多概念中,真正关键的并不是很多。比如“中断”概念,既是重点又是难点,如果不懂中断技术,就不能算是搞懂了微机原理。在学习中凡是遇到这种情况,绝对不轻易放过,要力求真正弄懂,搞懂一个重点,将使一大串概念迎刃而解。 学习过程中,我发现许多概念很相近,为了更好地掌握,将一些容易混淆的概念集中在一起进行分析,比较它们之间的异同点。比如:微机原理中,引入了计算机由五大部分组成这一概念;从中央处理器引出微处理器的定义;在引出微型计算机定义时,强调输入/输出接口的重要性;在引出微型计算机系统的定义时,强调计算机软件与计算机硬件的相辅相成的关系。微处理器是微型计算机的重要组成部分,它与微型计算机、微型计算机系统是完全不同的概念在微机中,最基础的语言是汇编语言。汇编语言是一个最基础最古老的计算机语言。语言总是越基础越重要,在重大的编程项目中应用最广泛。就我的个人理解,汇编是对寄存的地址以及数据单元进行最直接的修改。而在某些时候,这种方法是最有效,最可靠的。 然而,事物总有两面性。其中,最重要的一点就是,汇编语言很复杂,对某个数据进行修改时,本来很简单的一个操作会用比较烦琐的语言来解决,而这些语言本身在执行和操作的过程中,占有大量的时间和成本。在一些讲求效率的场合,并不可取。 汇编语言对学习其他计算机起到一个比较、对照、参考的促进作用。学习事物总是从最简单基础的开始。那么学习高级语言也当然应当从汇编开始。学习汇

西电微机原理上机

4.37 (上机题)编写程序实现,将缓冲区BUFFER中的100个字按递增排序,并按下列格式顺 序显示: 数据1 <原序号> 数据2 <原序号> …… 算法流程图: 调试问题、心得体会: 通过这道题,熟悉了流程图画法,掌握了产生随机数,“冒泡法”排序,子函数编写调用等的基本过程,尤其对于中断调用,并利用ASCII码回显和对课本字节型数据“冒泡法”排序改进为字形排序的过程,是我受益匪浅。并且亲身实践了源程序的汇编、调试也连接。 问题:将字节型冒泡法直接应用于该题,导致出错,该题存储的是字型数据!

原因在于只是排列的AL中的数值,并不是产生的随机数! 同时对于字型与字节型在运算类指令中的应用还是有误,以及其他的一些小错误,应加以改善! 运行结果: 程序代码: STACK SEGMENT STACK 'STACK' DW 100H DUP(?) TOP LABEL WORD STACK ENDS DATA SEGMENT BUFFER LABEL WORD

X=17 REPT 100 X=(X+80)mod 43 DW X ENDM BUF DW 100 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX MOV ES,AX MOV AX,STACK MOV SS,AX LEA SP,TOP MOV CX,100 LEA SI,BUFFER LEA DI,BUF L1: MOV AX,[SI] INC SI INC SI MOV [DI],AX INC DI INC DI LOOP L1 MOV CX,100 DEC CX LEA SI,BUFFER PUSH CX ADD CX,CX ADD SI,CX POP CX L2: PUSH CX PUSH SI L3: MOV AX,[SI] CMP AX,[SI-2] JAE NOXCHG XCHG AX,[SI-2] MOV [SI],AX NOXCHG:

《微机原理与接口技术》参考答案

《微机原理与接口技术》参考答案 《微机原理与接口技术》习题参考答案习题 2 1. 为何说8086CPU是16位CPU?答:16位指的是8086CPU的字长,而字长一般来说和运算器、寄存器、总线宽度一致。因为8086CPU的内部寄存器、内部运算部件以及内部操作都是按16位设计的,这决定了它的字长为16位。 2. 8086CPU哪两个单元组成?其中,指令队列在哪个单元中,有何作用?答:总线接口单元和执行单元。指令队列在BIU中。它的作用是当EU在执行指令时,空闲的BIU可以从内存读取后续指令到指令队列,这样就可以将取指令工作和执行指令工作重叠进行,从而提高CPU的工作效率,加快指令的执行速度。 3. 8086CPU中8位寄存器和16位寄存器是什么关系?答:8086的通用寄存器包括数据寄存器、指

针寄存器和变址寄存器。其中数据寄存器包含AX、BX、CX、DX四个16位寄存器,但他们每个都可以分开作为两个单独的8位寄存器使用。8086的指针寄存器和变址寄存器不可分割为8位寄存器。4. 8086CPU中的IP寄存器有何用途?答:IP寄存器是指令指针寄存器,用来存放下一条要执行的指令在代码段中的偏移地址。在程序运行过程中,IP寄存器始终指向下一条指令的首地址,与CS寄存器联合确定下一条指令的物理地址。8086就是通过IP寄存器来控制指令序列的执行流程。 5. 在标志寄存器中,用于反映运算结果属性的标志位有哪些?它们每一位所表示的含义是什么?答:有CF、PF、AF、ZF、SF、OF。它们的含义如下:CF:进位标志。它记录运算时从最高有效位产生的进位值或结果值。最高有效位有进位或有借位时CF=1,否则CF=0。PF:奇偶标志。它记录运算结果的奇偶检验条件。当结果操作数

西电机电院微机原理上机答案

汇编语言上机题 姓名:学号:成绩: 实验一、上机过程及DEBUG应用 编写程序,建立数据段DATA,将你的姓名(汉语拼音)及学号存入DATA数据段的BUFFER1区域,然后利用程序将BUFFER1区域中的字符串(姓名及学号)依次传送到从BUFFER2开始的内存区域中去。 上机过程与要求 1.建立原程序: 源程序文件名为,源程序清单如下: data segment buffer1 db 'hepan04105038' buffer2 db 13 dup() data ends code segment ASSUME CS:CODE,DS:DATA START: mov ax,data mov ds,ax mov es,ax lea si,buffer1 lea di,buffer2 mov cx,0d cld rep movsb mov ah,4ch int 21h code ends end start 2.汇编后生成的obj文件名为buffer .OBJ 3.连接后生成的目标文件名为buffer .EXE 4.DEBUG调试:在DEBUG下,利用U、D、G、R等命令对EXE文件进行调试后,相关信息如下: (1)表1-1 反汇编清单中所反映的相关信息 *注:最后一条指令是对应于代码段中最后一条指令 (2)在未执行程序之前,用D命令显示内存区域BUFFER1及BUFFER2中的内容, 其相关信息如表1-2所示。 表1-2 未执行程序之前的数据区内容

(3)执行程序以后用D命令显示内存区域的相关信息,如表1-3。 表1-3 执行程序之后的数据区内容 (4)用R命令检查寄存器的内容如表1-4所示。 回答问题 a)宏汇编命令MASM的作用是什么 答:产生OBJ文件。 b)连接命令LINK的作用是什么连接后生成什么文件 答:产生EXE文件,生成EXE文件。 c)DEBUG下U命令的作用是什么 答:反汇编被调试命令。 d)DEBUG下D命令的作用是什么 答:显示内存单元的内容。 e) 在DEBUG下如何执行.EXE文件,写出执行命令的常用格式。 答:DEBUG 。 实验二、寻址方式练习 掌握8086/8088的寻址方式是学习汇编语言的基础,因此,我们以数据传送指令为例编写了下面的程序,通过该程序对主要的几种寻址方式进行练习。 DATA1 SEGMENT M1 DB 0A0H,0A1H,0A2H,0A3H,0A4H,0A5H M2 DB 0A6H,0A7H,0A8H,0A9H,0AAH,0ABH,0ACH,0ADH,0AEH,0AFH DATA1 ENDS DATA2 SEGMENT N1 DB 0B0H,0B1H,0B2H,0B3H, 0B4H,0B5H N2 DB 0B6H,0B7H, 0B8H,0B9H,0BAH,0BBH, 0BCH,0BDH,0BEH,0BFH DATA2 ENDS STACK SEGMENT PARA STACK ‘STACK’ DB 0C0H,0C1H,0C2H,0C3H, 0C4H,0C5H DB 0C6H,0C7H, 0C8H,0C9H,0CAH,0CBH, 0CCH,0CDH,0CEH,0CFH

(完整版)微机原理与接口技术知识点总结整理

《微机原理与接口技术》复习参考资料 第一章概述 一、计算机中的数制 1、无符号数的表示方法: (1)十进制计数的表示法 特点:以十为底,逢十进一; 共有0-9十个数字符号。 (2)二进制计数表示方法: 特点:以2为底,逢2进位; 只有0和1两个符号。 (3)十六进制数的表示法: 特点:以16为底,逢16进位; 有0--9及A—F(表示10~15)共16个数字符号。 2、各种数制之间的转换 (1)非十进制数到十进制数的转换 按相应进位计数制的权表达式展开,再按十进制求和。(见书本1.2.3,1.2.4)(2)十进制数制转换为二进制数制 ●十进制→二进制的转换: 整数部分:除2取余; 小数部分:乘2取整。 ●十进制→十六进制的转换: 整数部分:除16取余; 小数部分:乘16取整。 以小数点为起点求得整数和小数的各个位。 (3)二进制与十六进制数之间的转换 用4位二进制数表示1位十六进制数 3、无符号数二进制的运算(见教材P5) 4、二进制数的逻辑运算 特点:按位运算,无进借位 (1)与运算 只有A、B变量皆为1时,与运算的结果就是1 (2)或运算 A、B变量中,只要有一个为1,或运算的结果就是1 (3)非运算 (4)异或运算 A、B两个变量只要不同,异或运算的结果就是1 二、计算机中的码制 1、对于符号数,机器数常用的表示方法有原码、反码和补码三种。数X的原码记作[X]原,反码记作[X]反,补码记作[X]补。

注意:对正数,三种表示法均相同。 它们的差别在于对负数的表示。 (1)原码 定义: 符号位:0表示正,1表示负; 数值位:真值的绝对值。 注意:数0的原码不唯一 (2)反码 定义: 若X>0 ,则[X]反=[X]原 若X<0,则[X]反= 对应原码的符号位不变,数值部分按位求反 注意:数0的反码也不唯一 (3)补码 定义: 若X>0,则[X]补= [X]反= [X]原 若X<0,则[X]补= [X]反+1 注意:机器字长为8时,数0的补码唯一,同为00000000 2、8位二进制的表示范围: 原码:-127~+127 反码:-127~+127 补码:-128~+127 3、特殊数10000000 ●该数在原码中定义为:-0 ●在反码中定义为:-127 ●在补码中定义为:-128 ●对无符号数:(10000000)2= 128 三、信息的编码 1、十进制数的二进制数编码 用4位二进制数表示一位十进制数。有两种表示法:压缩BCD码和非压缩BCD码。(1)压缩BCD码的每一位用4位二进制表示,0000~1001表示0~9,一个字节表示两位十进制数。 (2)非压缩BCD码用一个字节表示一位十进制数,高4位总是0000,低4位的0000~1001表示0~9 2、字符的编码 计算机采用7位二进制代码对字符进行编码 (1)数字0~9的编码是0110000~0111001,它们的高3位均是011,后4位正好与其对应的二进制代码(BCD码)相符。

微机原理与接口技术期末考试试题及答案

微机原理与接口技术期末考试题库 1.微机系统的硬件由哪几部分组成? 答:三部分:微型计算机(微处理器,存储器,I/0接口,系统总线),外围设备,电源。 2.什么是微机的总线,分为哪三组? 答:是传递信息的一组公用导线。分三组:地址总线,数据总线,控制总线。 3.8086/8088CPU的内部结构分为哪两大模块,各自的主要功能是什 么? 答:总线接口部件(BIU)功能:根据执行单元EU的请求完成CPU 与存储器或IO设备之间的数据传送。执行部件(EU),作用:从指令对列中取出指令,对指令进行译码,发出相应的传送数据或算术的控制信号接受由总线接口部件传送来的数据或把数据传送到总线接 口部件进行算术运算。 4.8086指令队列的作用是什么? 答:作用是:在执行指令的同时从内存中取了一条指令或下几条指令,取来的指令放在指令队列中这样它就不需要象以往的计算机那样让CPU轮番进行取指和执行的工作,从而提高CPU的利用率。 5.8086的存储器空间最大可以为多少?怎样用16位寄存器实现对 20位地址的寻址?完成逻辑地址到物理地址转换的部件是什么?

答:8086的存储器空间最大可以为2^20(1MB);8086计算机引入了分段管理机制,当CPU寻址某个存储单元时,先将段寄存器内的内容左移4位,然后加上指令中提供的16位偏移地址形成20位物理地址。 6.段寄存器CS=1200H,指令指针寄存器IP=FF00H,此时,指令 的物理地址为多少?指向这一物理地址的CS值和IP值是唯一的吗? 答:指令的物理地址为21F00H;CS值和IP值不是唯一的,例如:CS=2100H,IP=0F00H。 7.设存储器的段地址是4ABFH,物理地址为50000H,其偏移地址 为多少? 答:偏移地址为54100H。(物理地址=段地址*16+偏移地址) 8.8086/8088CPU有哪几个状态标志位,有哪几个控制标志位?其意 义各是什么? 答:状态标志位有6个:ZF,SF,CF,OF,AF,PF。其意思是用来反映指令执行的特征,通常是由CPU根据指令执行结果自动设置的;控制标志位有3个:DF,IF,TF。它是由程序通过执行特定的指令来设置的,以控制指令的操作方式。 9.8086CPU的AD0~AD15是什么引脚? 答:数据与地址引脚 10.INTR、INTA、NMI、ALE、HOLD、HLDA引脚的名称各是什么?

微机原理与接口技术

第二章 8086系统结构 一、 8086CPU 的内部结构 1.总线接口部件BIU (Bus Interface Unit ) 组成:20位地址加法器,专用寄存器组,6字节指令队列,总线控制电路。 作用:负责从内存指定单元中取出指令,送入指令流队列中排队;取出指令所需的操作 数送EU 单元去执行。 工作过程:由段寄存器与IP 形成20位物理地址送地址总线,由总线控制电路发出存储器“读”信号,按给定的地址从存储器中取出指令,送到指令队列中等待执行。 *当指令队列有2个或2个以上的字节空余时,BIU 自动将指令取到指令队列中。若遇到转移指令等,则将指令队列清空,BIU 重新取新地址中的指令代码,送入指令队列。 *指令指针IP 由BIU 自动修改,IP 总是指向下一条将要执行指令的地址。 2.指令执行部件EU (Exection Unit) 组成:算术逻辑单元(ALU ),标志寄存器(FR ),通用寄存器,EU 控制系统等。 作用:负责指令的执行,完成指令的操作。 工作过程:从队列中取得指令,进行译码,根据指令要求向EU 内部各部件发出控制命令,完成执行指令的功能。若执行指令需要访问存储器或I/O 端口,则EU 将操作数的偏移地址送给BIU ,由BIU 取得操作数送给EU 。 二、 8088/8086的寄存器结构 标志寄存器 ALU DI DH SP SI BP DL AL AH BL BH CL CH ES SS DS CS 内部暂存器输入 / 输出控制 电路1432EU 控制系 统20位16位8086总线指令 队列总线 接口单元执行 单元 6 516位 属第三代微处理器 运算能力: 数据总线:DB

西安电子科技大学机电院微机原理课程设计

微机原理课程设计 学院机电工程学院 专业自动化 姓名 ******* 学号 ******** 指导教师千博董瑞军

一、微元课程设计 1.1课程设计的意义 《微机原理》是国家教育部规定的计算机专业、电子信息专业、自动化专业、机电一体化等工科专业的专业基础必修课程。课程设计涉及8086CPU的指令系统、汇编语言及程序设计、存储器组成、8259A中断控制器以及8253可编程定时计数器的编程与应用等内容,是将所学知识融会贯通的实践性教学环节。为了培养学生分析问题、获取信息和综合应用知识的能力。 1.2 课程设计的目的 通过本课程的学习,使学生熟悉微机系统在现代生产和生活领域中的应用,了解计算机技术和控制技术对现代科技事业发展的作用,能够综合运用所学的微机原理知识和控制理论知识为专业学习服务,并使学生受到必要的基本技能的训练,有助于学生综合能力和整体素质的提高。为微机软硬件开发和分析设计各种自动控制系统打下良好基础。 1.3课程设计的要求 (一)设计微处理器8088最小系统; 熟练掌握Protel99电路图设计功能 设计8088最小系统电路,也可以是其他型号的微处理器 1.基本要求 了解工具软件在课程设计中的作用。掌握Protel99电路图设计功能。熟练掌握工具软件设计8088最小系统电路。 2.重点、难点 重点:设计时钟电路、总线电路、存储器(ROM和RAM)电路。 难点:设计译码电路。 (二)设计微机接口应用电路; 1设计温度检测A/D变换接口电路 2设计D/A变换接口电路驱动直流电机 3设计步进电机控制电路 1.基本要求 了解模数转换电路和数模变换电路的原理。掌握绘图软件绘图技术。熟练掌握工

微机原理与接口技术试题库(含答案)汇总

一、问答题 1、下列字符表示成相应的ASCII码是多少? (1)换行0AH (2)字母“Q”51H (3)空格20H 2、下列各机器数所表示数的范围是多少? (1)8位二进制无符号定点整数; 0~255 (2)8位二进制无符号定点小数;0.996094 (3)16位二进制无符号定点整数;0~65535 (4)用补码表示的16位二进制有符号整数;-32768~32767 3、(111)X=273,基数X=?16 4、有一个二进制小数X=0.X1X2X3X4X5X6 (1)若使X≥1/2,则X1……X6应满足什么条件? X1=1 若使X>1/8,则X1……X6应满足什么条件?X1∨X2 ∨X3=1 (2) 5、有两个二进制数X=01101010,Y=10001100,试比较它们的大小。 (1)X和Y两个数均为无符号数;X>Y (2)X和Y两个数均为有符号的补码数。X

微机原理与接口技术

微机原理及接口技术 第一部分客观题 一、单项选择题(每小题2分,共10分) 1. 寄存器ECX勺低16位部分可以用 ____________ 达。 A EX B CX C CH D CL 2. 8086处理器执行“ OUT DX,AL指令时,AL的数据出现在_____________ 输出给外设。 A控制总线B地址总线C电源和地线D 数据总线 3. 与DRAM目比,SRAM勺特点是___________ 。 A集成度高、存取周期长B集成度低、存取周期长 C集成度高、存取周期短D集成度低、存取周期短 4. 使用语句“ var dword 3721 ”定义的变量var在主存占用___________ 字节存储空间。 A 1 B 2 C 4 D 8 5. 用8K>8结构SRAM芯片构成64000H H6FFFFH地址范围的存储器,需要使用__________ 。 A 4 B 6 C 8 D 10 二、对错判断题(每小题2分,共10分)(说明:正确的选“ A ,错误选“ B” 6. IA-32 处理器设置的中断标志IF = 0是关中断,表示禁止内部中断和外部中断的所有中断请求。X

7. 已知var是一个变量,语句“ add esi,byte ptr var ”没有语法错误。X 8. DMA传输由DMA控制器控制,无需处理器执行I/O指令。V 9. 高性能计算机中常使用Cache (高速缓冲存储器)提高主存性能。V 10. 向某个I/O端口写入一个数据,一定可以从该I/O端口读回这个数据。V 第二部分主观题 一、填空题(每空2分,共10分) 1. 8086处理器引脚有3个最基本的读写控制信号,它们是M/IO*,—RD* __________ 和____ /R* ______ 。 2. 逻辑地址由—段基地址_________ 口偏移地址两部分组成。代码段中下一条要执行的指令由CS和 _____ 指针IP ____ 寄存器指示,后者在实地址模型中起作用 的仅有_____ 指针 ____ 寄存器部分。 二、问答题(每小题6分,共30分) 1. 什么是JMP指令的近(near)转移和远(far )转移? jmp指令的近转移是指在同一个段里面的转移,也叫做段内近转移,用汇编编码就是这样的jmp near ptr标号 jmp指令的远转移是指段与段之间的转移,就是说不在同一个段的转移,用汇编编码就是这样的jmp far ptr 标号 2. 什么是存储访问的局部性原理,它分成哪两个方面的局部性? 程序局部性原理:虚拟存储管理的效率与程序局部性程序有很大关系。根据统计,进程运行时,在一段时间内,其程序的执行往往呈现岀高度的局限性,包括时间局部性和空间局部性。 1、时间局部性:是指若一条指令被执行,则在不久的将来,它可能再被执行。 2、空间局部性:是指一旦一个存储单元被访问,那它附近的单元也将很快被访问。

西安电子科技大学2010年微机原理试题

姓名学号总分任课老师 一.填空题(每空1分,共30分) 1)15的8位二进制补码为,-15的8位二进制补码为。 2)某8位二进制补码为80H,其十进制表示为。 3)字符B的ASCII码为,字符0的ASCII码为。 4)8086CPU总线按功能可分为数据总线,总线和总线。 5)8086CPU数据总线包含条数据线,最多可寻址的存储器容量为。 6)CPU内部用于计算的部分为,用于保存下一条要执行的指令地址的为。 A) 程序状态字B) 程序计数器C) ALU D) 工作寄存器 7)经常用作循环次数的寄存器是,用于I/O端口寻址的寄存器是。 A) AX B) BX C) CX D) DX 8)指令MOV CX, 1000的结果是CH= 。 9)将0D787H和4321H相加后,标志位CF= ,SF= ,ZF= , OF= ,AF= ,PF= 。 10)寄存器SI中能够表示的最大有符号数为,最小有符号数为。 11)设(DS)=4000H,(BX)=0100H,(DI)=0002H,(4002)=0A0AH,(40100)=1234H,(40102) =5678H,求以下指令分别执行后AX寄存器的值。 MOV AX , [2] (AX)= 。 MOV AX , [BX] (AX)= 。 MOV AX , [BX][DI] (AX)= 。 MOV AX , 1[BX] (AX)= 。 12)用一条指令将AX寄存器低四位清零,其余位不变:。 13)用一条指令将AX寄存器高四位取反,其余位不变:。 14)用一条指令将AL中的大写字母变成相应的小写:。 15)用一条指令将AX高8位与低8位交换:。 二.判断题(每题1分,共10分) 对以下语句语法正确的打√,语法错误打×,其中TABLE和TAB为两个字节类型的变量。 1)MOV DS , 1000H 2)MOV DS , TABLE 3)MOV [1200H] , [1300H] 4)ADD AX , BX , CX 5)XCHG AL , CL 6)CALL AL 7)MUL AX , BX 8)JU L1 9)SHR CL , CL 10)CMP AX , CL

《微机原理与接口技术》参考答案完整版

《微机原理与接口技术》习题参考答案 习题2 1.为何说8086CPU是16位CPU? 答:16位指的是8086CPU的字长,而字长一般来说和运算器、寄存器、总线宽度一致。因为8086CPU的内部寄存器、内部运算部件以及内部操作都是按16位设计的,这决定了它的字长为16位。 2.8086CPU由哪两个单元组成?其中,指令队列在哪个单元中,有何作用? 答:总线接口单元(Bus Interface Unit,BIU)和执行单元(Execution Unit,EU)。指令队列在BIU中。它的作用是当EU在执行指令时,空闲的BIU可以从内存读取后续指令到指令队列,这样就可以将取指令工作和执行指令工作重叠进行,从而提高CPU的工作效率,加快指令的执行速度。 3.8086CPU中8位寄存器和16位寄存器是什么关系? 答:8086的通用寄存器包括数据寄存器、指针寄存器和变址寄存器。其中数据寄存器包含AX、BX、CX、DX四个16位寄存器,但他们每个都可以分开作为两个单独的8位寄存器使用。8086的指针寄存器和变址寄存器不可分割为8位寄存器。 4.8086CPU中的IP寄存器有何用途? 答:IP寄存器是指令指针寄存器,用来存放下一条要执行的指令在代码段中的偏移地址。在程序运行过程中,IP寄存器始终指向下一条指令的首地址,与CS寄存器联合确定下一条指令的物理地址。8086就是通过IP寄存器来控制指令序列的执行流程。 5.在标志寄存器中,用于反映运算结果属性的标志位有哪些?它们每一位所表示的含义是 什么? 答:有CF、PF、AF、ZF、SF、OF。它们的含义如下: CF:进位标志。它记录运算时从最高有效位产生的进位值或结果值。最高有效位有进位或有借位时CF=1,否则CF=0。 PF:奇偶标志。它记录运算结果的奇偶检验条件。当结果操作数中“1”的个数为偶数时PF=1,否则PF=0。 AF:辅助进位标志。在字节运算时,由低半字节(字节的低4位)向高半字节有进位或借位时,AF=1,否则AF=0。 ZF:零标志。运算结果为零时ZF=1,否则ZF=0。 SF:符号标志。它记录运算结果的最高位,即由符号数的符号。 OF:溢出标志。在运算过程中,如果运算结果已经超出了机器能表示的数值范围(指有符号数)称为溢出,此时OF=1,否则OF=0。 6.分别完成下面的8位运算,并说明各主要标志位的状态,以及结果是否产生溢出(提 示:需要分为有符号数和无符号数两种情况)。

西安电子科技大学网络跟继续教育学院微机原理试题资料精

学习中心_________ 姓名_____________ 学号 西安电子科技大学网络与继续教育学院 《微机原理与应用》全真试题 (开卷90分钟) 题号一二三四五六总分 题分30 10 20 10 10 20 得分 一、填空(每空2分,共30分) 1.若(DX)=7BH,(CL)=03H,CF=1,则CPU执行 RCR DX,CL指令后,(DX)= 。 2.8086CPU关于数据的寻址方式中,是存储器寻址方式的有 。 3.若给某微机系统配置16K字节的SRAM电路,SRAM芯片选用Intel6264,则共需片6264芯片。 4.在8086系统中,若某存储器字单元是未对准的,则CPU访问该存储单元需个总线周期完成。若访问另一偶地址存储器字节单元时,使用数据总线。

5. MOV AX,[BP][DI] +13H 指令的源操作数的寻址方式为。 6.若(DS)=0100H ,(SS)=0150H ,(BX)=0003H ,(BP)=0003H ,存储器 (01003H)=5566H,(01503H)=7788H,则CPU执行:MOV AL,[BX]指令后,(AL)= ,CPU执行MOV AX,[BP]指令后,(AX)= 。 7. 将十进制数75用分离BCD码形式定义到BCDWORD字单元的伪指令定义 语句为。 8.若(DL)=OFFH,CF=0,则CPU 执行INC DL 指令后,CF= ,(DL)= 。 9.8086CPU的字符串处理指令的目的串地址默认在。 10.I/O 地址译码方式有部分地址译码和。 11.若分配给某存储器单元的逻辑地址为8B90H:7850H,则该单元的物理地址为 H。 12.十进制数-100的补码为 B。 二、判断下列指令语法书写是否正确,对于正确指令打√,并分别说明源 操作数的寻址方式,对于错误指令打×,说明其错误原因。(10分)(设VARB为字节变量,VARW为字变量) 1.MOV DS, SEG VARW 2.SUB DX, VARB 3.PUSH 12ABH

西安电子科技大学考研复试-微机原理练习题

《微型计算机原理及接口技术》试题 一. 单项选择题 1. 8086CPU芯片的外部引线中,数据线的条数为○ ①6条②8条③16条④20条 2. 8088CPU上READY信号为下面哪种信号有效?○ ①上升边②下降边③高电平④低电平 3. 8088CPU中的CS寄存器是一个多少位的寄存器?○ ①8位②16位③24位④32位 4. 当8086CPU 读写内存的一个规则(对准)字(16位)时,BHE和A0的状 态必须是○ ①00 ②01 ③10 ④11 5. 当8086CPU读I/O接口时,信号M/IO和DT/R的状态必须是○ ①00 ②01 ③10 ④11 6. 在8088CPU中, 用于寄存器间接寻址输入输出指令的寄存器是○ ①AX ②BX ③CX ④DX 7. ISA总线是一种多少位的内(系统)总线?○ ①8位②16位③32位④64位 8. 属于只读存贮器的芯片是○ ①SRAM ②DRAM ③EPROM ④SDRAM 9. 需要定时刷新的存贮器是○ ①SRAM ②DRAM ③EPROM ④EEPROM 10. 内存从A4000H到CBFFFH,共有○ ①124K ②160K ③180K ④224K 11. 擦除EPROM是用○ ①+5V电压②+15V电压③+21V电压④紫外光照射 12. 采用查询方式来实现输入输出是因为它○ ①速度最快 ②CPU可以不介入 ③实现起来比较容易 ④在对多个事件查询工作时,能对突发事件做出实时响应 13. 实现DMA传送,需要○ ①CPU通过执行指令来完成②CPU利用中断方式来完成 ③CPU利用查询方式来完成④不需要CPU参与即可完成 14 下面哪种说法不正确○ ①内存地址也可做为接口地址使用②内存地址不可做为接口地址使用 ③接口地址不可做为内存地址使用④接口地址也可做为外存地址使用

相关主题
文本预览
相关文档 最新文档