预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共22页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

微机原理及接口技术实验教案实验报告要求:实验一DEBUG入门三、预习内容和要求 1、调试程序DEBUG的常用命令。 2、DEBUG中FLAGS各标志的表示方法。 3、用汇编指令A输入一段程序实现给数据段100H到10FH单元送初值30H的功能; 用运行指令G或单步执行指令T执行该段程序,并用显示内存单元内容命令D查看运行后数据段100H到10FH的值; 用反汇编指令U对该程序段进行反汇编,查看该段程序在代码段存放位置和每条指令对应的机器码; 用寄存器指令R查看并修改CPU内部寄存器值; 用修改内存字节指令E修改内存中数据段100H到10FH单元内容。 4、用DEBUG指令运行入栈/出栈指令、算术运算指令并查看运算结果(涉及到的内存单元的值、寄存器的值) 四、实验结果: 写出执行不同DEBUG指令执行后,相应的寄存器和内存单元的值。 五、问题及思考 DEBUG命令说明:FLAGS各位说明:实验二8086指令观察二、预习内容和要求 1、复习指令系统中各种指令,通过实验验证结果。 2、复习调试程序DEBUG的内容,预习宏汇编程序MASM、LINK的使用以及汇编语言程序上机实验过程。 3、有两个5字节数3B74AC60F8H、20D59E36C1H分别放在自300H和305H开始的内存单元中,低字节在低地址处,编一程序段将两数相加,结果存放于从30AH开始的单元中。 4、在内存数据段500H开始存放了10个带符号数,要求将各数取绝对值后存入以600H开始的内存区。 5、在内存数据段从1000H开始的存储单元中分别存放了两个8位无符号数,比较大小,将大数传送到1002H单元。 6、绘制出第3~5项实验的程序流程图。 三、实验结果 写出执行不同程序段后的结果。(相应的寄存器和内存单元的值) 四、问题及思考实验三DOS功能调用三、实验结果 写出执行程序后,相应内存单元的值以及屏幕显示的运行结果。 四、问题及思考 实验四两个多字节二进制数求和 3、试用编写的程序运算以下算式: ⑴、6666H+8756H ⑵、5678H+4321H 4、试编程把运算结果转换成ASCII码存放到数据段 指定的内存单元,然后把运算结果在屏幕上显示 出来.(注意除法运算中数的表示范围) 三、思考题 1、多字节数据在数据段存放时的存放顺序是什么? 2、如果用DOS功能调用在显示器上显示一个数字,需要怎样实现。(教材P1824-22) 实验五分支结构程序设计3、编写计算下面函数值的程序,从显示器输出Y的值: 1 X>0 Y=0 X=0 -1 X<0 设输入数据为X、输出数据Y,且皆为字节变量。 4、试编一程序,求三个带符号字数据中的最大值,并将最大值存入MAX字单元中,从显示器输出。三个带符号数分别在三个字变量X、Y、Z中存储。 三、思考题 思考一下,在预习要求3中可有多少不同的方法来编写程序,实现同样的效果?实验六循环结构程序设计 三、思考题 如果用LOOP指令实现两层循环,编程时CX值应如 何处理?实验八8259A中断控制器实验五、实验内容 1.编程题目 8259的IRQ0接单脉冲开关,每次按动单脉冲开关使8259响应外部中断IRQ0,中断服务程序中实现8位二进制数左移一次,并把该数经74LS273输出到8个发光二极管。八个LED显示相应数字的八位二进制编码值,如单脉冲开关第一次按动,显示00000001B,只有LED0亮;第二次按动单脉冲开关,显示00000010B,只有LED1亮…… 2.实验原理图 3.连线说明 8259A:片选端CS确定芯片地址;IRQ0接单脉冲输入端。 74ls273:片选端CS确定芯片地址;O0-O7接发光二极管。8088CPUDATASEGMENT NUM DB1 DATAENDS STACKSEGMENT DB500DUP(0) STACKENDS CODE SEGMENT ASSUMECS:CODE,DS;DATA;SS:STACK LED PROC PUSH DX PUSH AX STI ROL NUM,1 MOV AL,20H ;结束中断 MOV DX,9000H OUT DX,AL POP AX POP DX IRET LED ENDPMAINPROC START:MOV AX, DATA MOV DS, AX MOV AX, STACK MOV SS, AX MOV BP, 500 CLI XORAX, AX MOV DS, AX MOVAX, OFFSETLED MOVBX, 100H MOV[BX], AX MOVAX, SEGLED ADDBX, 2 MOV[BX], AX MOVDX, 9000H MOVAL, 13H OU