当前位置:文档之家› 方案微机原理实验.doc

方案微机原理实验.doc

方案微机原理实验.doc
方案微机原理实验.doc

微型计算机原理实验报告

学号40953055

姓名海米提。热合木江班级测控0902班

实验一显示程序实验

一般来说,程序需要显示输出提示运行的状况和结果,有的还需要将数据区中的内容显示在屏幕上。本实验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并通过DOS功能调用完成一些提示信息的显示。实验中可使用DOS功能

调用(INT 21H)。

流程图

2.试验程序

DA TA SEGMENT

MES DB 'Show a as hex:', 0AH,0DH,'$'

SD DB 'a'

DATA ENDS

CODE SEGMENT

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

MOV DS, AX

MOV DX, OFFSET MES

MOV AH, 09H

INT 21H

MOV DI, OFFSET SD

MOV AL, DS:[DI]

AND AL, 0F0H

SHR AL,4

CMP AL, 0AH

JB C2

ADD AL, 07H

C2: ADD AL, 30H

MOV DL, AL

MOV AH, 02H

INT 21H

MOV AL, DS:[DI]

AND AL, 0FH

CMP AL, 0AH

JB C3

ADD AL, 07H

C3: ADD AL, 30H

MOV DL, AL

MOV AH, 02H

INT 21H

MOV AX, 4C00H

INT 21H

CODE ENDS

END START

实验二数据传送实验

三、实验内容

将数据段中的一个字符串传送到附加段中,并输出附加段中的目标字符串到屏幕上

1.试验程序

DA TA SEGMENT

MSR DB "HELLO,WORLD!$"

LEN EQU $- MSR

DDATA ENDS

EXDA SEGMENT

MSD DB LEN DUP(?)

EXDA ENDS

MYSTACK SEGMENT STACK

DW 20 DUP(?)

MYSTACK ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DDA TA, ES:EXDA

START: MOV AX, DDATA

MOV DS, AX

MOV AX, EXDA

MOV ES,AX

MOV SI, OFFSET MSR

MOV DI, OFFSET MSD

MOV CX, LEN

NEXT: MOV AL, [SI]

MOV ES:[DI], AL

INC SI

INC DI

DEC CX

JNZ NEXT

PUSH ES

POP DS

MOV DX, OFFSET MSD

MOV AH, 9

INT 21H

MOV AX, 4C00H

INT 21H

CODE ENDS

END START

MOV BX, 0

MOV CX, LEN

NEXT: MOV AL, MSR[BX]

MOV ES:MSD[BX], AL

INC BX

LOOP NEXT

2.实验结果

实验三数码转换程序实验

1.将ASCII码表示的十进制数转换为二进制数

1.流程图

2.试验程序

DATAS SEGMENT

NUMBER DB '00012'

DATAS ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DA TAS

START: MOV AX,DATAS

MOV DS,AX

MOV CX,4

MOV SI,OFFSET NUMBER

MOV AL,[SI]

SUB AL,30H

MOV AH,00H

MOV BL,10

L1: MUL BL

ADD AL,[SI+1]

SUB AL,30H

INC SI

DEC CX

JNZ L1

MOV CX,8

MOV BL,AL

NEXT: SHL BL,1

JC ONE

MOV DL,30H

JMP EXIT

ONE: MOV DL,31H

EXIT: MOV AH,02H

INT 21H

DEC CX

JNZ NEXT

MOV AH,4CH

INT 21H

CODE ENDS

END START

3.实验结果

2.将十进制数的ASCII码转换为BCD码

本实验要求将键盘输入的一个五位十进制数54321的ASC II码存放入数据区中,转换为BCD 码后,并将转换结果按位分别显示于屏幕上。若输入的不是十进制数的ASC II码,则输出“FF”。提示:一字节ASC II码取其低四位即变为BCD码

1.实验流程图

2.实验程序

DA TAS SEGMENT

BUF DB 6

DB ?

DB 6 DUP(?)

BUFE DB 'FF$'

DATAS ENDS

CODE SEGMENT

ASSUME DS:DATAS,CS:CODE START: MOV AX,DATAS

MOV DS,AX

MOV DX,OFFSET BUF

MOV AH,10

INT 21H

MOV CH,5

MOV SI,DX

L2: MOV BL,[SI+2]

INC SI

CMP BL,39H

JA L1

SUB BL,30H

AND BL,0FH

MOV DH,4

MOV CL,4

;SHL AL,CL

ROL BL,CL

NEXT: SHL BL,1

JC ONE

MOV DL,30H

JMP EXIT

ONE: MOV DL,31H

EXIT: MOV AH,2

INT 21H

DEC DH

JNZ NEXT

DEC CH

JNZ L2

JMP L3

L1: MOV DX,OFFSET BUFE

MOV AH,9

INT 21H

L3: MOV AH,4CH

INT 21H

CODE ENDS

END START

3.实验结果

3.将十六进制数的ASCII码转换为十进制数

十六位二进制数的值域为0-65535,最大可转换为五位十进制数。五位十进制数可表示为:

N D =D

4

×104+D

3

×103+D

2

×102+D

1

×10+D

因此,将十六位二进制数转换为五位ASCII码表示的十进制数,就是求D1-D4,并将它们转化为ASCII码。本实验要求将缓冲区中存放的000CH的ASCII码转换成十进制数,并将转结果显示在屏幕

1.实验流程图

2.实验程序

DA TA SEGMENT

BUF DB 5

DB ?

DB 5 DUP(?)

HEX DB 4 DUP(?)

DECI DB 5 DUP(0),'$'

S1 DB '16JINZHI : $'

S2 DB 0AH,0DH,'10JINZHI : $'

DATA ENDS

CODE SEGMENT

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

MOV DS,AX

LEA DX,S1

MOV AH,9

INT 21H

LEA DX,BUF

MOV AH,10

INT 21H

MOV SI,2

MOV DI,0

CHECK: MOV AL,[SI][BUF]

CMP AL,40H

JS NUM

CMP AL,47H

JS CAPITAL

SUB AL,57H

JMP STORE

NUM: SUB AL,30H

JMP STORE

CAPITAL: SUB AL,37H

JMP STORE

STORE: MOV HEX[DI],AL

INC DI

INC SI

CMP DI,4

JNZ CHECK

LEA DX,S2

MOV AH,9

INT 21H

MOV AX,WORD PTR HEX

SHL AL,4

ADD AH,AL

MOV CH,AH

MOV AX,WORD PTR 2[HEX]

SHL AL,4

ADD AL,AH

MOV AH,CH

MOV SI,5

MOV BX,10

MOV DX,0

CMP AX,0

JNS CONV

NEG AX

PUSH AX

PUSH DX

MOV DL,2DH

MOV AH,2

INT 21H

POP DX

POP AX

CONV: DEC SI

DIV BX

ADD DX,30H

MOV DECI[SI],DL

XOR DX,DX

CMP AX,0

JNZ CONV

LEA DX,DECI

MOV AH,9

INT 21H

MOV AH,4CH

INT 21H

CODE ENDS

END START

3.实验结果

4.BCD码转换为二进制码

本实验要求将四个二位十进制数的BCD码存放在某一内存单元中,转换出的二进制数码存入其后的内存单元中,转换结束,送屏幕显示。

1.实验流程图

2.实验程序

DA TA SEGMENT

DASC DB 3

DB ?

DB 3 DUP(?)

S1 DB 0AH,0AH,0DH,'10 JINZHI MA : $'

S2 DB 0AH,0DH,' BCD MA: $'

S3 DB 0AH,0DH,' 2 JINZHI MA : $'

STO DB 8 DUP(?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV DI,0

MOV SI,4

LOOPER: CALL WHOLE

DEC SI

JMP EXIT

WHOLE: LEA DX,S1

MOV AH,9

INT 21H

LEA DX,DASC

MOV AH,10

INT 21H

LEA DX,S2

MOV AH,9

INT 21H

MOV AX,WORD PTR 2[DASC]

SUB AX,3030H

SHL AL,4

ADD AL,AH

MOV [DI][STO],AL

MOV CH,2

MOV CL,4

PRE1: MOV DX,30H

ROL AL,1

JNC DISP1

ADD DX,01H

DISP1: PUSH AX

MOV AH,02

INT 21H

POP AX

DEC CL

JNZ PRE1

PUSH AX

MOV DL,20H

MOV AH,2

INT 21H

POP AX

DEC CH

MOV CL,4

JNZ PRE1

LEA DX,S3

INT 21H

MOV AL,[DI][STO]

MOV BL,AL

AND BL,0FH

SHR AL,4

MOV CL,10

MUL CL

ADD AL,BL

INC DI

MOV [DI][STO],AL

INC DI

MOV CX,8

PRE2: MOV DX,30H

ROL AL,1

JNC DISP2

ADD DX,01H

DISP2: PUSH AX

MOV AH,02

INT 21H

POP AX

LOOP PRE2

RET

EXIT: MOV AH,4CH

INT 21H

CODE ENDS

END START

实验四运算类程序实验

1.二进制双精度加法运算

本实验要求计算x+y=z,将结果z输出到屏幕,其中x=001565a0h,y=0021b79eh.

1.实验流程图

2.实验程序

DA TA SEGMENT

X DD 421C65A0H

Y DD 3C41B69BH

S DB 'X+Y= $'

SUM DB 4 DUP(0)

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DA TA

START: MOV AX,DA TA

MOV DS,AX

MOV AX,WORD PTR X

MOV BX,WORD PTR Y

ADD AX,BX

MOV WORD PTR SUM,AX

MOV AX,WORD PTR 2[X]

MOV BX,WORD PTR 2[Y]

ADC AX,BX

MOV WORD PTR 2[SUM],AX

LEA DX,S

MOV AH,9

INT 21H

MOV CX,4

MOV SI,3

CHECK: MOV AL,SUM[SI]

MOV AH,AL

SHR AL,4

CMP AL,0AH

JS DISP1

ADD AL,07H

DISP1: ADD AL,30H

MOV DL,AL

PUSH AX

MOV AH,02H

INT 21H

POP AX

AND AH,0FH

CMP AH,0AH

JS DISP2

ADD AH,07H

DISP2: ADD AH,30H

MOV DL,AH

MOV AH,02H

INT 21H

DEC SI

LOOP CHECK

EXIT: MOV AH,4CH

INT 21H

CODE ENDS

END START

(2)减法程序1.实验流程图

DATA SEGMENT

X DW 0400H

Y DW 0102H

S DB 'Z=X-Y= $'

Z DW 2 DUP(0)

DATA ENDS

CODE SEGMENT

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

MOV DS,AX

LEA DX,S

MOV AH,9

INT 21H

MOV AX,WORD PTR X

MOV BX,WORD PTR Y

SUB AL,BL

AAS

SUB AH,BH

AAS

MOV Z,AX

ADD AX,3030H

MOV BX,AX

微机原理及应用实验(题目)

微机原理及应用实验 实验一开发环境的使用 一、实验目的 掌握伟福开发环境的使用方法,包括源程序的输入、汇编、修改;工作寄存器内容的查看、修改;内部、外部RAM内容的查看、修改;PSW中个状态位的查看;机器码的查看;程序的各种运行方式,如单步执行、连续执行,断点的设置。二、实验内容 在伟福开发环境中编辑、汇编、执行一段汇编语言程序,把单片机片内的 30H~7FH 单元清零。 三、实验设备 PC机一台。 四、实验步骤 用连续或者单步的方式运行程序,检查30H-7FH 执行前后的内容变化。五、实验思考 1.如果需把30H-7FH 的内容改为55H,如何修改程序? 2.如何把128B的用户RAM全部清零? 六、程序清单 文件名称:CLEAR.ASM ORG 0000H CLEAR: MOV R0,#30H ;30H 送R0寄存器 MOV R6,#50H ;50H 送R6寄存器(用作计数器) CLR1: MOV A,#00H ;00 送累加器A MOV @R0,A ;00 送到30H-7FH 单元 INC R0 ;R0 加1 DJNZ R6,CLR1 ;不到50H个字节,继续 WAIT: LJMP WAIT END 实验二数据传送 一、实验目的 掌握MCS-51指令系统中的数据传送类指令的应用,通过实验,切实掌握数据传送类指令的各种不同的寻址方式的应用。 二、实验内容 1.编制一段程序,要求程序中包含7中不同寻址方式。 2.编制一段程序,将片内RAM30H~32H中的数据传送到片内RAM38H~3AH中。 3.编制一段程序,将片内RAM30H~32H中的数据传送到片外RAM1000H~1002H 中。 4.编制一段程序,将片内RAM40H~42H中的数据与片外RAM2000H~2002H中的数据互换。 三、实验设备 PC机一台。

微机原理实验 源程序

《微机原理及接口技术》 实验指导书 杨霞周林英编 长安大学电子与控制工程学院 2009年9月

前言 本实验指导是为适应各大、中专院校开设微机原理及应用方面的课程需做大量软硬件实验的需要而编写的,供学生编程用。完成本实验指导中的实验,可使学生基本掌握8086/8088的结构原理、接口技术、程序设计技巧。手册中详细叙述了各实验的目的、内容,列出了接线图、程序框图和实验步骤。 主要学习内容为80X86语言实验环境配置、汇编源语言格式、输出字符、循环结构、子程序调用,以及加减乘除等指令操作、通用接口芯片的接口编程与使用。所有实验都是相互独立的,次序上也没有固定的先后关系,在使用本书进行教学时,教师可根据教学要求,选择相应实验。学习结束后,要求学生能够独立编写出综合加减乘除等指令,以及循环结构、子程序调用等程序控制程序、看懂一般接口芯片电路图。

目录 实验一清零程序 (4) 实验二拆字程序 (6) 实验三数据区移动 (8) 实验四多分支程序设计 (10) 实验五多字节减法运算 (13) 实验六显示程序 (16) 实验七 8251串口实验 (20) 实验八步进电机控制 (26) 附录一汇编语言的存储模型 (36) 附录二 8279键值显示程序 (37)

实验一清零程序 一、实验目的 掌握8088汇编语言程序设计和调试方法。 二、实验设备 STAR系列实验仪一套、PC机一台。 三、实验内容 把RAM区内4000H-40FFH单元的内容清零。 四、程序框图 五、源程序清单 .MODEL TINY .STACK 100 .DATA .CODE ORG 0100H START: MOV BX,4000H MOV AX,0000H MOV CX,80H L1: MOV [BX],AX INC BX INC BX LOOP L1 JMP $ END START 六、实验步骤

微机原理期末考试试题及答案

上海应用技术学院2008—2009学年第一学期 《微机原理及应用》期末试卷 A 课程代码: B203205A 学分: 3.5 考试时间: 100 分钟 课程序号: 1958,1960 班级:学号:姓名: 我已阅读了有关的考试规定和纪律要求,愿意在考试中遵守《考场规则》,如有违反将愿接受相应的处理。 试卷共页,请先查看试卷有无缺页,然后答题。 一、填空(每空1分,共20分) 1.MCS-51的EA管脚接低电平时,CPU只能访问外部程序存储器。 2.MCS-51单片机从外部程序存储器取指令时,使用/PSEN信号作“读”信号,从外部数据存储器取数据时,使用/RD信号作“读”信号。 3.MCS-51的堆栈设在内部RAM中,单片机复位后SP的内容为07 H。 4. MOV A,34H 中的34H 是直接寻址。 MOV A,@R0 中的 @R0 是间接寻址。 5.若PSW=98H,则选择了第3组工作寄存器,此时R7的地址是1F H。 6.MCS-51的数据总线共8位,来自P0 口,地址总线共16位,来自P2和P0口。 7.8255A具有(3)个8位可编程I/O口。 8.若串口工作于方式1,每分钟传送3000个字符,其波特率是(500)bit/s。 9.一个8位A/D转换器的分辨率是( 3.9)‰。 10.若0809 U REF=5V,输入模拟信号电压为2.5V时,A/D转换后的数字量是(80H)。 11.一个EPROM的地址有A0----A11引脚,它的容量为(4)KB。

12.已知1只共阴极LED显示器,其中a笔段为字形代码的最低位,若需显示数字1,它的字形代码应为( 06H )。 二、判断题,对者划“√”,错者划“×”。(每小题1分,共10分) 1.(√)8051单片机的算术运算类指令执行的一般会影响标志位。 2.(√)8051单片机的外部数据存储器和内部数据存储器的要用不同的指令来访问。 3.(×)AJMP指令转移范围是-128~127之间。 4.(√)DPTR可以分成高8位和低8位分别寻址。 5.(×)MCS51内部定时/计数器在溢出时,都必须由软件重装初值才能按原设定值定时/计数。 6.(×)MCS-51系列单片机4个I/O端口都是多功能的。 7.(√)MCS-51特殊功能寄存器的字节地址能被8整除者,可以位寻址。 8.(×)并行扩展简单I/O口,对芯片的要求是:输入要锁存,输出要缓冲。 9.(√)串行通信要求是互相通信的甲乙双方具有相同的波特率。 10.(√)8255A的PA口具有3种工作方式。 三、阅读程序片段,指出执行结果。(每空2分,共20分) 1.MOV R1,#30H MOV A,#62H ADD A,#0B4H RLC A ANL A,01H MOV @R1,A RET ;执行到此 A=(20H),R1,=(30H),CY=(0),30H=(20H) 2.MOV R0,#20H MOV 20H,#05H MOV A,#10H MOV R2,A LOOP: ADD A,@R0

微机原理实验指导书

微机原理及应用实验指导书 南京理工大学机械工程学院 2011年10月10日

实验1 基本操作实验 1. 实验目的 (1) 掌握TD-PITC 80X86 微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。 (2) 掌握使用运算类指令编程及调试方法; (3) 掌握运算类指令对各状态标志位的影响及其测试方法; (4) 学习使用软件监视变量的方法。 2. 实验设备 PC机一台,TD-PITC 实验装置一套。 3. 实验内容及步骤 通过对样例程序的操作,学会在TD-PITC境下,如何输入汇编语言程序,如何进行汇编语言源程序的汇编、连接、下载和运行;在调试程序的学习过程中,应学会: ●如何设置断点; ●如何单步运行程序; ●如何连续运行程序; ●怎样查看寄存器的内容; ●怎样修改寄存器的内容; ●怎样查看存储器的内容; ●怎样修改存储器的内容。 3.1 实验内容1――――BCD码转换为二进制数 实验内容: 将四个二位十进制数的BCD 码存放于3500H 起始的内存单元中,将转换的二进制数存入3510H 起始的内存单元中,自行绘制流程图并编写程序。 参考实验程序清单如下: SSTACK SEGMENT STACK DW 64 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: XOR AX, AX MOV CX, 0004H MOV SI, 3500H MOV DI, 3510H A1: MOV AL, [SI] ADD AL, AL MOV BL, AL

ADD AL, AL ADD AL, AL ADD AL, BL INC SI ADD AL, [SI] MOV [DI], AL INC SI INC DI LOOP A1 A2: JMP A2 CODE ENDS END START 实验步骤: 1)运行Wmd86 软件,进入Wmd86 集成开发环境。 2)根据程序设计使用语言的不同,通过在“设置”下拉列表来选择需要使用的语言,如图1-1所示。语言选择后,下次再启动软件,语言环境保持这次的修改不变。在这里,我们选择汇编语言。 图1-1 语言环境选择界面 3)语言选择后,点击新建或按Ctrl+N 组合键来新建一个文档,如图1-2所示。默认文件名为Wmd861。 图1-2 新建文件界面 4)编写实验程序,如图1-3所示,并保存,此时系统会提示输入新的文件名,输完后点击保存。

微机原理与应用第四次实验报告

微机原理与应用第四次实验报告 实验6 汇编语言程序结构 一、实验目的 1.掌握汇编语言项目上机过程 2.掌握汇编语言程序结构和常用伪操作 3.掌握汇编语言程序设计和调试方法 4.掌握MSP430F1xx基本I/O控制方法 二、实验任务 1.学习汇编指示性语句(可在simulator下完成) 在EWH8下新建项目Lab_6,编写下面程序L6_directives.s43(程序清单见后页,该程序只是为了学习指示性语句,程序本身并没有实现什么特定功能),利用project/remove移出模板文件test_asm.s43,点击project/add/files将L6_directives.s43添加到项目中。 1) 利用EW430下的view/memory查看DATA16_C段中定义的存储单元内容和地址,在memory/go的窗口内输入存储单元的符号(如number1)即可查看到该符号对应的存储单元地址和内容,注意在L6_directives.s43程序中使用这些存储单元的内容和地址的方法;利用view/disassembly反汇编程序,对比源程序,利用每条指令后的注释,学习其中用到的指示性操作,如:#define、SFB、SFE、SIZEOF、$等,并能在今后的程序设计中使用。 2) 在L6_directives.s43中,number4和number1分别被定义成了什么?二者有何不同? #number4和#number1这两个操作有何不同?MOV #number4, R7和MOV number4, R7执行的结果会相同吗?为什么? 3) 如图6-1所示,点击项目中的msp430x14x.h文件,了解该文件中用到的指示性语句,今后的实验中会用到该文件中的定义。 答

微机原理-期末考试题库及答案(含3套试卷)

微型计算机原理与接口技术综合测试题一 一、单项选择题(下面题只有一个答案是正确的,选择正确答案填入空白处) 1.8086CPU通过(1 )控制线来区分是存储器访问,还是I/O访问,当CPU执行IN AL,DX 指令时,该信号线为(2 )电平。 (1) A. M/ B. C. ALE D. N/ (2) A. 高 B. 低 C. ECL D. CMOS 2.n+1位有符号数x的补码表示范围为()。 A. -2n < x < 2n B. -2n ≤ x ≤ 2n -1 C. -2n -1 ≤ x ≤ 2n-1 D. -2n < x ≤ 2n 3.若要使寄存器AL中的高4位不变,低4位为0,所用指令为()。 A. AND AL, 0FH B. AND AL, 0FOH C. OR AL, 0FH D. OR AL 0FOH 4.下列MOV指令中,不正确的指令是()。 A. MOV AX, BX B. MOV AX, [BX] C. MOV AX, CX D. MOV AX, [CX] 5.中断指令INT 17H的中断服务程序的入口地址放在中断向量表地址()开始的4个存贮单元内。 A. 00017H B. 00068H C. 0005CH D. 0005EH 6.条件转移指令JNE的条件是()。 A. CF=0 B. CF=1 C. ZF=0 D. ZF=1 7. 在8086/8088 CPU中,一个最基本的总线读写周期由(1 )时钟周期(T状态)组成,在T1状态,CPU往总线上发(2 )信息。 ⑴ A. 1个 B. 2个 C. 4个 D. 6个

⑵ A. 数据 B . 地址 C. 状态 D. 其它 8. 8086有两种工作模式, 最小模式的特点是(1 ),最大模式的特点是(2 )。 ⑴ A. CPU提供全部控制信号 B. 由编程进行模式设定 C. 不需要8286收发器 D. 需要总线控制器8288 ⑵ A. M/ 引脚可直接引用 B. 由编程进行模式设定 C. 需要总线控制器8288 D. 适用于单一处理机系统 9.在8086微机系统的RAM 存储单元器0000H:002CH开始依次存放23H,0FFH,00H,和0F0H四个字节,该向量对应的中断号是( )。 A. 0AH B. 0BH C. 0CH D. 0DH 10.真值超出机器数表示范围称为溢出,,此时标志寄存器中的( )位被置位 A. OF B AF C PF D CF 11.8086 系统中内存储器地址空间为1M,而在进行I/O读写是,有效的地址线是( ) A . 高16位 B. 低16位 C. 高8位 D. 低8位 12.8086 CPU中段寄存器用来存放( ) A. 存储器的物理地址 B. 存储器的逻辑地址 C. 存储器的段基值 D. 存储器的起始地址 13.8259A可编程中断控制器的中断服务寄存器ISR用于( ) A.记忆正在处理中的中断 B. 存放从外设来的中断请求信号 C.允许向CPU发中断请求 D.禁止向CPU发中断请求 14.8253 可编程定时/计数器的计数范围是( ) A. 0-255 B. 1-256 C. 0-65535 D. 1-65536 15. 在8086中,(BX)=8282H,且题中指令已在队列中,则执行INC [BX]指令需要的总

微机原理与接口技术实验汇总

实验要求 1、带预习报告上机 根据实验要求,作好充分预习,设计实验硬件原理及接线图(必须标出相关的管脚号,以备硬件连线及测试),画出程序流程图,写出源程序清单,规划好调试步骤,上机时带预习报告。注意:无预习报告者不得做实验。 2、认真实验,经教师检查后,方可离开 注意掌握软、硬件调试方法,提高分析问题、解决问题的能力。对所编写的程序必须十分清楚,作到知其然,亦知其所以然,硬件电路原理清楚,熟练应用常规的仪器(如万用表、示波器等)检查测试硬件电路。指导教师还会根据实验要求,提出问题。3、按时提交实验报告 实验结束后,在预习报告的基础上,完成实验报告,并于下次实验时交给指导教师。 实验报告格式 实验* ***** ***** ***** 一、实验目的 二、实验内容 三、硬件原理及接线图 四、程序流程图 五、程序清单 六、实验步骤 七、实验结果及现象分析 八、收获及建议 测13实验安排: 地点:综合实验楼0701 实验周次星期小节 一 6 五1,2 二8 五1,2 三10 五1,2 四12 五1,2 五14 五1,2

实验一汇编语言程序的调试 一、实验目的 1、掌握8086汇编程序的编辑、编译、连接及运行过程。 2、掌握使用HQFC软件调试程序的方法。 二、实验内容:编制程序并调试 1、上机调试P45 项目1程序。 要求:1)写出调试步骤 2)记下代码段数据。 3)记下数据段数据 4)用单步调试法调试,记下每句程序目的操作数执行结果。观察每句程序 执行过程中CS、 IP、 FLAGS寄存器的变化。 2、上机调试P54 项目2程序,用单步调试法指出每句程序的调试结果。 要求:1)记下代码段数据。 2)记下数据段数据 3)记下程序执行前附加段数据、程序执行后附加段数据。 3)用单步调试法调试,记下lop句之前每句程序目的操作数执行结果。 观察其它句程序的执行结果,观察每句程序执行过程中CS、 IP、 FLAGS寄存器的 变化。 三、调试步骤 1、编辑源程序,形成****.ASM文件(可用HQFC软件或XP系统下的记事本编辑源程序) (注:在E:盘上建立一个你自己的文件夹,保存你自己的文件) 2、编译,形成****.OBJ文件(可用HQFC软件的编译功能) 3、链接,形成****.EXE文件(可用HQFC软件的构建功能) 4、运行(或调试)(可用HQFC软件的重构运行功能或开始调试) 四、调试步骤参考 1、编译(编译) 在当前运行环境下,选择菜单栏中的“ASM文件编译”菜单,选择编译选项则程序对当前ASM源文件进行编译,编译调试窗口中输出汇编的结果,若程序汇编有错,则详细报告错误信息。双击输出错误,集成开发环境会自动将错误所在行代码显示。 2、构建(汇编+链接) 在当前运行环境下,选择菜单栏中的“ASM文件编译”菜单,选择汇编+链接选项则程序对当前ASM源文件进行汇编与链接,编译调试窗口中输出汇编与链接的结果,若程序汇编或链接有错,则详细报告错误信息。双击输出错误,集成开发环境会自动将错误所在行代码显示。 3、重构运行(汇编+链接+执行) 在当前运行环境下,选择菜单栏中的“ASM文件编译”菜单,选择汇编+链接+执行选项则程序对当前ASM源文件执行,程序自动运行。

北京交通大学微机原理实验报告

微机原理 实 验 报 告 隋伟 08212013 自动化0801

目录 一、I/O地址译码与交通灯控制实验 (3) 二、可编程定时器/计数器(8253) (6) 三、中断实验(纯DOS) (11) 四、模/数转换器………………………………………………………… 18 五、串行通讯…………………………………………………………… 16 六、课程综合实验(抢答器) …………………………………………… 28 七、自主设计实验——LED显示 (32) 八、参考文献 (35)

一、I/O地址译码与交通灯控制实验 一.实验目的 通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。 二.实验内容 如图5-3,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律燃灭。 十字路口交通灯的变化规律要求: (1)南北路口的绿灯、东西路口的红灯同时亮3秒左右。 (2)南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。 (3)南北路口的红灯、东西路口的绿灯同时亮3秒左右。 (4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。 (5)转(1)重复。 8255动态分配地址: 控制寄存器: 0C40BH A口地址: 0C408H C口地址: 0C40AH

三.程序流程图和程序清单 DATA SEGMENT X DB ? DATA ENDS STACK1 SEGMENT STACK DW 100H DUP(0) STACK1 ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK1 START: MOV AX,DATA MOV DS,AX ;---------------INIT---------------- MOV DX,0C40BH ;写控制字

微机原理期末考试试卷(有答案)

丽水学院《微机原理》考试试卷 班级:___________ 姓名:___________学号:____________ 题号一二三四五六总分得分 得分 一、判断题(每题1分,共10分) 1、十六位微型机的含义是:这种机器能同时处理十六位二进制数。(√) 2、微机的字长愈长,计算精度愈高,指令处理功能愈强。(√) 3、MOV指令要影响标志位。(×) 4、JMP SHORT NEXT称为近转移。(×) 5、8086与8088在软件上不一定完全兼容。(×) 6、端口是位于主机与外设之间的总称。() 7、DMA是一种不需要CPU介入的高速数据传送。() 8、8253中的计数可以通过初始化设置成加计数或减计数。() 9、内部中断的优先权总是高于外部中断。() 10、两片8259A级连后可管理16级中断。() 得分 二、选择题(每题1分,共20分) 1、属于数据寄存器组的寄存器是_____C___。 A.AX,BX,CX,DS B.SP,DX,BP,IP C. AX,BX,CX,DX D.AL,DI,SI,AH 2、在8086和8088汇编语言中,一个字能表示的有符号数的范围是_____B___。 A.-32768≤n≤32768 B.-32768≤n≤32767 C.-65535≤n≤65535 D.-65536≤N≤65535 3、某数存于内存数据段中,已知该数据段的段地址为2000H,而数据所在单元的偏移地址为0120H,该数的在内存的物理地址为__B______。 A.02120H B.20120H C.21200H D.03200H 4、在8086/8088微机系统中,将AL内容送到I/O接口中,使用的指令是 ___D_____。 A.IN AL,端口地址 B.MOV AL,端口地址 C.OUT AL,端口地址 D.OUT 端口地址,AL 5、与十进制数58.75等值的十六进制数是__B______。 A.A3.CH B.3A.CH C.3A.23H D.C.3AH 6、将十六进制数FF.1转换成十进制数是__C______。 A.255.625 B.2501625 C.255.0625 D.250.0625 7、十进制负数-38的八位二进制补码是____D____。

微机原理实验简易计算器

【实验题目】 简易计算器设计 【实验目的】 综合测试学生微机接口技术及应用能力,包括系统构思设计、电路设计搭建、软件调试等; 结合应用实际,培养学生运用微机技术服务应用、服务实际的能力。 【基本要求】 1)利用实验箱上的4x4键盘及6位数码管,实现两个16位宽的非负整数(0~65535)进行+、-、×运算,计算结果限制在范围-65535~65535,超过范围在数码管最低位显示E; 2) 16个按键的分配可以自行指定; 【扩展要求】 1)按基本要求保持输入的范围不变(16位宽),扩展计算结果的范围到用足6位数码管,当计算结果超过-65535~999999时,显示E; 2)增加÷的功能,有小数显示; 【实验程序】 ;该程序实现了基本要求及扩展要求的2) DSEG SEGMENT BUFF DB 6 DUP() LED_7 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39 H,5EH,79H,71H,00H,40H POSITION DB 0DFH,0EFH,0F7H,0FBH,0FDH,0FEH UNIT10 DW 10000,1000,100,10,1 NEWNUM DB 0 COUNT DB 0 FLAG DB 0 ;是否有键按下的标志 NEGTI DB 0 ;是否为负数的标志 NUM DW 0 NUM1 DW 0 NUM2 DW 0 TAG DB 0 ;运算种类标志 POINT DB 0 ;除法结果添加小数点标志 RESULT DW 0 DSEG ENDS CSEG SEGMENT ASSUME DS:DSEG,CS:CSEG START: MOV AX,DSEG MOV DS,AX MOV DX,300CH ;8255初始化 MOV AL,81H OUT DX,AL LEA SI,BUFF MOV CX,6 NEXT: MOV BYTE PTR[SI],16 INC SI LOOP NEXT CALL SHOW ;将显示缓冲区中内容在LED上一次显示出来 MOV COUNT,0 ;记按下了几位数 NEXT2: CALL SHOW CALL SCAN ;判断是否有按键按下 CMP FLAG,1 JZ OK JMP NEXT2 OK: MOV FLAG,0 MOV POINT,0 MOV DX,3000H ;判断是哪一个键被按下 MOV AL,0FFH OUT DX,AL MOV CH,-1 ;CH用于保存当前被扫描的列号MOV CL,07FH XL: ROL CL,1 INC CH MOV DX,3000H MOV AL,CL OUT DX,AL MOV DX,3008H

微机原理第1、2次实验

微机原理第1、2次实验

微机原理第1、2次实验 3.1 IO口读写实验(245、373) 1、实验内容 利用板上集成电路上的资源,扩展一片 74HC245,用来读入开关状态;扩展一片 74HC373,用来作来输出口,控制 8 个 LED 灯。 2、实验目的 (1)了解CPU 常用的端口连接总线的方法。 (2)掌握74HC245、74HC373 进行数据读入与输出。 3、实验电路

4、实验流程图 5、实验说明 一般情况下,CPU 的总线会挂有很多器件,如何使这些器件不造成冲突,这就要使用一些总线隔离器件,例如 74HC245、74HC373。74HC245 是三态总线收发器,本实验用它做输入,片选地址为0D0000H-0DFFFFH。就是用于读入开关值。74HC373 是数据锁存芯片,通过它作数据的锁住输出。 6、发现的问题 (1)实验指导书中译码器上的连线与代码中的地址不对应,在CPU的输出状态时译码器的Y0为低电平,其他位为高电平,应将原先连接在Y9的线改接到Y0上。如图:

如果不想改电路,把代码中的OUT373 EQU 8000H改为OUT373 EQU 0E000H,也能使CPU在输出状态时Y9呈现低电平。如图: (2)元件与元件直接必须用导线相连,两个元件挨在一起是不算作导通的

否则会出现比如下面这种即使两端有电势差LED灯也不亮的情况 第2次实验,将LED灯修改为七段数码管 如图,只需将右边改为下图这样即可

添加三极管的目的是为了在8个开关都闭合(向74HC245输入低电平)的情况下,使七段数码管的第一根管脚断路,七段数码管不发光,避免了在8个开关都闭合时显示数字8。

微机原理实验报告软件实验1-4

微机原理实验报告 学院:算机科学与软件教育学院 1. 掌握存储器读写方法 2. 了解存储器的块操作方法 二、实验原理 存储器读写和块操作 三、实验设备仪器及材料 计算机,WA VE 6000软件 四、实验过程 S1.asm 代码流程图 data segment Block db 256 dup(55h) data ends code segment assume cs:code, ds:data start proc near mov ax, data mov ds, ax mov bx, offset Block ; 起始地址 mov cx, 256 ; 清256 字节Again: mov [bx], byte ptr 0 inc bx ; 地址+1 Loop Again ; 记数减一jmp $ ;死循环code ends end start

五、实验步骤 (1) 进入Wave6000,输入程序并检查,保存程序。 (2) “编译”程序。 (3) “全速执行”程序。 (4) “暂停”程序运行,在“数据窗口(MEMOREY)”查看0400H起始的单元内容,并记录。 (5) 在指令“jmp $”处设断点。“全速执行”程序。 (6) 在“数据窗口(MEMOREY)”查看0400H起始的单元内容,记录并分析实验结果。 六、实验结果及总结 运行前:运行后: 2、调试:如何将存储器块的内容置成某固定值(例全填充为0FFH)? 总结:通过本实验,我了解到单片机读写存储器的读写方法,同时也了解到单片机编程,调试方法。学会内存的移动方法,也加深对存储器读写的认识。

微机原理实验报告 学院:算机科学与软件教育学院 实验 课程 名 微机原理实验成绩实验 项目名称实验二、二进制到BCD码转换 指导老 师 1. 了解BCD值和ASCII值的区别。 2. 了解如何将BCD值转换成ASCII值。 3. 了解如何查表进行数值转换及快速计算。 二、实验原理 ASCII码表 三、实验设备仪器及材料 计算机,WA VE 6000软件 data segment Result db 3 dup(?) data ends code segment assume cs:code, ds:data start proc near mov ax, data mov ds, ax mov ax, 123 mov cl, 100 div cl mov Result, al ; 除以 100, 得百位数 mov al, ah mov ah, 0 mov cl, 10 div cl mov Result+1, al ; 余数除以 10, 得十位数 mov Result+2, ah ; 余数为个位 数 jmp $ code ends end start 代码流程图

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

《微机原理与接口技术》课程期末考试试卷(A卷,考试) 一、单项选择(在备选答案中选出一个正确答案,并将其号码填在题干后的括号内。每题2分,共30分) 1 .某微机最大可寻址的内存空间为16MB,其CPU地址总线至少应有( D )条。 A. 32 B. 16 C. 20 D. 24 2 .用8088CPU组成的PC机数据线是( C )。 A. 8条单向线 B. 16条单向线 C. 8条双向线 D. 16条双向线 3 .微处理器系统采用存储器映像方式编址时存储单元与I/O端口是通过( B )来区分的。 A. 不同的地址编码 B. 不同的读控制逻辑 C. 不同的写控制逻辑 D. 专用I/O指令 4 .要禁止8259A的IR0的中断请求,则其中断屏蔽操作指令字OCW1应为( D )。 A. 80H B. 28H C. E8H D. 01H 5 .在8086环境下,对单片方式使用的8259A进行初始化时,必须放置的初始化命令字为( B )。 A. ICW1,ICW2,ICW3 B. ICW1,ICW2,ICW4 C. ICW1,ICW3,ICW4 D. ICW2,ICW3,ICW4 6 .6166为2Kx8位的SRAM芯片,它的地址线条数为( A )。 A. 11 B. 12 C. 13 D. 14 7 .在计算机系统中,可用于传送中断请求和中断相应信号的是( C )。 A. 地址总线 B. 数据总线 C. 控制总线 D. 都不对 8 .段寄存器装入2300H,该段的最大结束地址是( A )。 A. 32FFFH B. 23000H C. 33FFFH D. 33000H 9 .在进入DMA工作方式之前,DMA控制器当作CPU总线上的一个( A )。 A. I/O设备 B. I/O接口 C. 主处理器 D. 逻辑高 10 .在8086宏汇编过程中不产生指令码,只用来指示汇编程序如何汇编的指令是( B )。 A. 汇编指令 B. 宏指令 C. 机器指令 D. 伪指令 11 .中断向量表占用内存地址空间为( A )。 A. 00000H~003FFH B. 00000H~000FFH C. 00000H~00100H D. FFF00H~FFFFFH 12 .实现CPU与8259A之间信息交换是( D )。A. 数据总线缓冲器 B. 级联缓冲/比较器 C. 读写控制电路 D. 数据总线缓冲器与读写控制电路 13 .Intel 8253的最大输入时钟频率是( B )。 A. 5MHz B. 2MHz C. 1MHz D. 4MHz 14 .完成两数相加后是否溢出的运算,用( C )标志位判别。 A. ZF B. IF C. OF D. SF 15 .8255A的方式选择控制字应写入( D )。 A. A口 B. B口 C. C口 D. 控制口

微机原理实验指导书

微机原理实验指导书汕头大学机电系摘录

实验一P1口实验及延时子程序设计 1.实验目的 利用单片机的P1口作为I/O口进行实验验证,掌握利用P1口作为输入口和输出口的编程方法,理解并掌握延时子程序的设计方法。 2.实验设备及器件 IBM PC机一台 DP-51PRO单片机综合仿真实验仪一台 3.实验内容 (1)编写一段程序,用P1口作为控制端口,使D1区的LED轮流点亮。 (2)编写一段程序,用P1.0~P1.6口控制LED,P1.7控制LED的亮和灭(P1.7接按键,按下时LED 亮,不按时LED灭)。 图 1 4.实验要求 学会使用单片机的P1口作I/O口。如果时间充裕,也可以考虑利用P3口作I/O口来做该实验。 5.实验步骤 ①用导线把A2区的J61接口与D1区的J52接口相连。原理如图1所示。 ②先编写一个延时程序。 ③将LED轮流点亮的程序编写完整并调试运行。 ④使用导线把A2区J61接口的P1.0~P1.6与D1区J52接口的LED1~LED7相连,另外A2区J61接口的P1.7与D1区J53的KEY1相连。原理如图3.2(b)所示。 ⑤编写P1.7控制LED的程序,并调试运行(按下K1看是否全亮)。 ⑥A2区J61接口P1.7与D1区J54的SW1相连,然后再运行程序,拨动开关SW1查看结果。

6.实验预习要求 阅读附录内容,理解实验的硬件结构。可以先把程序编好,然后在Keil C51环境下进行软件仿真。 7.实验参考程序 程序1: ORG 8000H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0000H LJMP M ain ORG 8100H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0100H Main: MOV A,#0FFH CLR C MainLoop: CALL Delay RLC A MOV P1,A ;把A的值输出到P1口 SJMP MainLoop Delay: MOV R7, #0 ;延时 Loop: MOV R6, #0 DJNZ R6, $ DJNZ R6, $ DJNZ R6, $ DJNZ R7, Loop RET ; END 程序2: ORG 8000H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0000H LJMP Main ORG 8100H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0100H Main:JB P1.7,SETLED ;按键没有按下时,跳转到SETLED CLRLED: CLR P1.0 CLR P1.1 CLR P1.2 CLR P1.3 CLR P1.4 CLR P1.5 CLR P1.6 SJMP Main SETLED: SETB P1.0 SETB P1.1

微机原理实验一

实验一Debug 环境中程序的输入、运行和调试 实验目的: 感性认识“CPU执行一个程序的具体过程”以及“程序的执行对于CPU内部寄存器的影响”;感性认识“什么是段地址和偏移地址”; 感性认识“补码表示法” 感性认识“ASCII码的用途”。 实验说明: Debug环境的提示符是“—”;如果在当前目录中确实存在着一个名叫Debug.exe的外部文件,那么,在DOS的提示符下,嵌入“Debug”,并且按回车键“Enter”,即可进入Debug环境,见到其提示符“—”。 常用的Debug命令是: —a x:y(回车)用于输入一个汇编语言程序 (a是命令,x是段地址,y是偏移地址,x:y将是程序的起始地址,首次试验时,可以将x代之ABC,y 代之以100,那么程序的起始地址将是AB:100) 注意:你不可以键入“x”或者“y”,即是,x和y都必须代之以具体的地址,例如ABC:100(其中,ABC 是段地址,100是偏移地址) —u x:y(回车) 用于显示一个汇编语言程序或者称为“在屏幕上列出一个汇编语言程序”; 自然地,x;y也必须代之以程序的实际的起始地址;通常当一个程序从屏幕上(因为上移而)消失后,可以适应这种方法来重新在屏幕上显示改程序。 —a x:y(回车)也可以用于修改某命令,x:y是将要被修改的指令的地址。(所谓的修改其实就是往该地址中重新输入某指令,然后按两次回车键,即可修改成功) —t= x:y(回车)用于单步执行一个汇编语言程序,注意,因为是“单步执行”,所以,被执行的程序中包含多少条指令,就应当键入多少个t命令,(只有第一个t命令后需要用“=”把程序的起始地址告知CPU,其余的t命令不需要提供地址,只需要键入t并且回车就可了。);单步执行的意义在于:因为CPU没执行完一条指令就会自动停止,而且显示出当前CPU内部每个寄存器的内容,由于程序的结果(尤其是中间结果)通常是在CPU的某个或几个寄存器中,这就是为我们考察一个程序的详细执行过程提供了好机会。—g= x:y(回车)用于从起始地址x:y连续执行一程序,(一直执行到程序员在改程序中给定的结束处。在Debug环境中,我们经常使用“INT3”指令来结束一个程序的执行) —d x:y(回车)用于显示内存区域中的一批数据;x:y是该区域的起始地址。 —e x:y(回车)用于显示(或修改)某一个内存单元中的数据内容。数据内容显示出来以后,如果想看下一个内存单元中的数据,可以按“空格键”。数据内容改好之后,若需要修改下一个单元,也是直接按“空格键”。(注意:x要代之以为段地址,y要代之以为偏移地址!) —r(回车)用于显示CPU内部全部寄存器当前的内容。 —rAX(回车)用于显示或修改CPU内部寄存器AX中的数据。 —q(回车)用于退出Debug环境,返回DOS环境。 实验程序: mov al ,1 dec al sub al ;使CPU内部的AL寄存器减一 mov bl ,al inc bl add bl ;使CPU中的寄存器BL加一 neg bl mov CX,1 neg CX

微机原理实验程序

实验一两个多位十进制数相减实验 一、实验要求:将两个多位十进制数相减,要求被减数,减数均以ASCII码形式按顺序 存放在以DATAI和DATA2为首的5个内存单元中(低位在前>,结果送回 DATAI处。 二、实验目的:1.学习数据传送和算术运算指令的用法。 2.熟悉在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。 三、实验步骤:连好实验箱后接通电源,打开上位机软件88TE进入软件调试界面: 点击“文件\打开”文件路径为C: \88TE\cai\asm\Ruanjian\Rjexp1.asm。具体操作如图所示: b5E2RGbCAP

点击编译连接生成可执行的exe文件。 通过单步运行调试程序,打开寄存器查看其变量变化情况。 四、实验程序框图: 五、实验程序:

文件路径为C:\88TE\cai\asm\Ruanjian\Rjexp1.asm DATA SEGMENT DATA1 DB 33H,39H,31H,37H,38H 。第一个数据<作为被减数)DATA2 DB 36H,35H,30H,38H,32H 。第二个数据<作为减数)MES1 DB '-','$' MES2 DB '=','$'p1EanqFDPw Array DATA ENDS STACK SEGMENT STA DB 20 DUP(?> TOP EQU LENGTH STA STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA START: MOV AX,DATA MOV DS,AX MOV ES,AX MOV AX,STACK MOV SS,AX MOV AX,TOP MOV SP,AX MOV SI,OFFSET DATA1 MOV BX,05 CALL DISPL MOV AH,09H LEA DX,MES1 INT 21H MOV SI,OFFSET DATA2 MOV BX,05 CALL DISPL MOV AH,09H LEA DX,MES2 INT 21H MOV SI,OFFSET DATA1 MOV DI,OFFSET DATA2 CALL SUBA 。减法运算 MOV SI,OFFSET DATA1 MOV BX,05 。显示结果 CALL DISPL MOV DL,0DH MOV AH,02H INT 21H MOV DL,0AH MOV AH,02H INT 21H INT 21H MOV AX,4C00H INT 21H DISPL PROC NEAR 。显示子功能 DSI: MOV AH,02 MOV DL,[SI+BX-1] 。显示字符串中一字符 INT 21H

微机原理期末考试试卷(有答案)

微机原理期末考试试卷 (有答案) -CAL-FENGHAI.-(YICAI)-Company One1

《微机原理》考试试卷 一、判断题(每题1分,共10分) 1、十六位微型机的含义是:这种机器能同时处理十六位二进制数。(√) 2、微机的字长愈长,计算精度愈高,指令处理功能愈强。(√) 3、MOV指令要影响标志位。(×) 4、JMP SHORT NEXT称为近转移。(×) 5、8086与8088在软件上不一定完全兼容。(×) 6、端口是位于主机与外设之间的总称。() 7、DMA是一种不需要CPU介入的高速数据传送。() 8、8253中的计数可以通过初始化设置成加计数或减计数。() 9、内部中断的优先权总是高于外部中断。() 10、两片8259A级连后可管理16级中断。() 二、选择题(每题1分,共20分) 1、属于数据寄存器组的寄存器是_____C___。 A.AX,BX,CX,DS B.SP,DX,BP,IP C. AX,BX,CX,DX D.AL,DI,SI,AH 2、在8086和8088汇编语言中,一个字能表示的有符号数的范围是 _____B___。 A.-32768≤n≤32768 B.-32768≤n≤32767 C.-65535≤n≤65535 D.-65536≤N≤65535 3、某数存于内存数据段中,已知该数据段的段地址为2000H,而数据所在单元的偏移地址为0120H,该数的在内存的物理地址为__B______。 A.02120H B.20120H C.21200H D.03200H 4、在8086/8088微机系统中,将AL内容送到I/O接口中,使用的指令是 ___D_____。

北京理工大学微机原理实验报告

微机原理与接口技术 实验报告 实验内容:汇编语言程序设计实验 组别:12 姓名: 班级: 学号:

一、实验目的 1、熟悉IDE86集成开发环境的使用。 2、通过编程、上机调试,进一步理解汇编语言的设计思路与执行过程。 3、熟悉DOS命令调用,以达到输入输出、返回DOS系统等目的。 4、掌握利用汇编实现求和与求最值的方法。 5、掌握利用汇编实现数制转换的方法。 6、巩固理论知识,锻炼动手编程,独立思考的能力。 二、实验内容(具体内容) 1、求从TABLE开始的10个无符号字节数的和,并将结果放在SUM字单元中。并查看前5个,前8 个数之和以及各寄存器和内存的状态。 2、在1的基础上修改程序,求出10个数中的最大值和最小值,最后将最大最小值分别赋给MAX及 MIN。 3、求1到 100 的累加和,并用十进制形式将结果显示在屏幕上。要求实现数据显示,并返回DOS 状态。 三、实验方法 1、设计思路 (1)实验1的设计思路:先将10个要相加的数存在以TABLE为首的10个连续的存储单元中,然后利用循环结构依次取出数值放在AL中并累加,若有进位则加到AH中直至循环10次累加结束,将累加的结果放在SUM中并返回DOS状态。 (2)实验2的设计思路:先将10个要比较的数放在以TABLE为首的10个连续的存储单元中。 将第一个数首先赋给AL和AH(分别存储相对最小和最大值)在利用LOOP循环结构,依次和下面的数进行比较,每次把相对的最大值与最小值存储到AH和AL中直至循环9次比较结束,将AH和AL里面的最大值与最小值赋给MAX和MIN,返回DOS状态 (3)实验3的设计思路:先在内存中定义COUNT=100,表示1-100求和,若相求1-n的和并显示只需COUNT的值为n即可,同时定义一块以DNUM为首地址的数据区用于存储累加和的十进制数对应的ASCII码。先利用AX和LOOP求出1-COUNT的累加和存在AX中;在进行数值转化,AX 依次除10取余数保存,将16进制数转化为10进制ASCII码值并存在DUNM中。最后在屏幕上显示并返回DOS状态。 2程序流程图 实验一、二和三的流程图分别如图1、图2和图3所示

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