【vb精品源码栏目提醒】:网学会员在vb精品源码频道为大家收集整理了“【精品】微机原理及接口技术实验指导书 - 大学课件“提供大家参考,希望对大家有所帮助!
实验一 标志寄存器应用一、实验目的与要求 1.掌握汇编程序的编译过程; 2.掌握 8086 的标志寄存器的特点。
二、实验内容 练习识别 8086 标志寄存器的各种标志位。
PC 机中状态位的表示如下: 标志位的名称 为 1 的对应符号 为 0 的对应符号 OF 溢出标志 OV NV DF 方向标志 DN UP IF 中断允许标志 EI DI SF 符号标志 NG PL ZF 零标志 ZR NZ AF 半进位标志 AC NA PF 奇偶标志 PE PO CF 进位标志 CY NC DEBUG 的命令及其功能: 命令 功能 格式 A 对语句进行汇编 A C 比较内存内容 C D 显示内存内容 D或 E 修改内存内容 E… F 填充内存内容 F G 运行一个程序或程序段 G=… H 十六进制的加减法运算 H I 读/显示输入字节 I 装入文件或磁盘扇区 L M 传送内存块 M N 定义文件名和参量 N… O 输出命令 O P 单步,并跳过子程序 P= Q 退出 DEBUG Q R 显示和修改寄存器内容 R S 对字符进行检索 S T 跟踪执行和显示 T= U 对指令进行反汇编 U 写入文件或磁盘扇区 W 盘号 扇 W 区数三、实验设备 列 。
微型计算机(80x86 系 )四、实验参考程序 DATA SEGMENT A DW 123 B DW 456 SUM DW DATA ENDS CODE SEGMENT ASSUME CS:CODE DS:DATA START: MOV AX DATA MOV DS AX MOV AX A SUB AX B MOV SUM AX MOV AH4CH INT 21H CODE ENDS END START五、实验步骤步骤一、用鼠标单击开始菜单,单击运行。
如下图所示:步骤二、在运行窗口中键入 cmd,回车进入命令提示符。
如下图所示:步骤三、在命令提示符中编辑程序文件。
如下图所示: 1.C:D: 回车 2.D: CD MASM611 回车 3.D:MASM611CD BIN 回车 4.D:MASM611BIN EDIT 文件名.ASM编辑程序之后,从 FLIE 菜单中选择 SAVE,之后选择 EXIT 退出步骤四、在命令提示行中编译程序。
如下图所示: D:MASM611BINMASM 文件名.ASM 回车步骤五、在命令提示行中链接程序。
如下图所示: D:MASM611BINLINK 文件名.OBJ 回车 回车 回车 回车 直到出现步骤六、在命令提示行中运行程序。
如下图所示: D:MASM611BINdebug 文件名.exe 回车根据 DEBUG 的命令可以查看寄存器内容以及其它。
DEBUG 的命令及其功能: 命令 功能 格式 A 对语句进行汇编 A C 比较内存内容 C D 显示内存内容 D或 E 修改内存内容 E… F 填充内存内容 F G 运行一个程序或程序段 G=… H 十六进制的加减法运算 H I 读/显示输入字节 I 装入文件或磁盘扇区 L M 传送内存块 M N 定义文件名和参量 N… O 输出命令 O P 单步,并跳过子程序 P= Q 退出 DEBUG Q R 显示和修改寄存器内容 R S 对字符进行检索 S T 跟踪执行和显示 T= U 对指令进行反汇编 U 写入文件或磁盘扇区 W 盘号 扇 W 区数六、实验结论 1.程序运行后变量 SUM 的值是多少? 2.程序运行前后标志寄存器的各标志位有何变化? 3.分析实验结果及所遇到的问题,并说明解决的方法。
答:实验结果: 运行前: 运行后:标志位分别为 NV UP EI NG NZ NA PO CYSUM 值同当前的 AX,SUMFEB3。
问题:无 实验二 指令寻址方式练习一、实验目的与要求 1.掌握汇编语言调试工具(DEBUG)的基本使用方法; 2.掌握 8086 的寻址方式。
二、实验内容 练习识别 8086 相关指令的寻址方式。
DEBUG 的命令及其功能: 命令 功能 格式 A 对语句进行汇编 A C 比较内存内容 C D 显示内存内容 D或 E 修改内存内容 E… F 填充内存内容 F G 运行一个程序或程序段 G=… H 十六进制的加减法运算 H I 读/显示输入字节 I 装入文件或磁盘扇区 L M 传送内存块 M N 定义文件名和参量 N… O 输出命令 O P 单步,并跳过子程序 P= Q 退出 DEBUG Q R 显示和修改寄存器内容 R S 对字符进行检索 S T 跟踪执行和显示 T= U 对指令进行反汇编 U 写入文件或磁盘扇区 W 盘号 扇 W 区数 其中表示输入的内容;…表示为可选项。
三、实验设备 列 。
微型计算机(80x86 系 )四、实验参考程序 DSEG SEGMENT ARRAY DB 332106 COUNT DW - ARRAY RELUST DB DSEG ENDS SSEG SEGMENT PARA STACK STACK SDAT DB 50 DUP TOP EQU LENGTH SDAT SSEG ENDS CSEG SEGMENT ASSUME CS:CSEG DS:DSEG SS:SSEG START: MOV AX DSEG MOV DS AX 寄存器寻址 MOV AX SSEG MOV SS AX MOV AX TOP MOV SP AX MOV BX OFFSET ARRAY MOV CX COUNT 直接寻址 DEC CX MOV AL BX 寄存器间接寻址 AGAIN: INC BX CMP AL BX JAE NEXT MOV AL BX NEXT: DEC CX JNZ AGAIN MOV RELUST AL MOV AH 4CH 立即寻址 INT 21H CSEG ENDS END START五、实验步骤 1.D:MASMMASM SY2.ASM 2.D:MASMLINK SY2.OBJ 3.D:MASMSY2.EXE 4.D:MASMDEBUG SY2.EXE六、实验结论 1.指出参考程序中带下划线的指令中源操作数的寻址方式? 2.程序运行后 AL 中的值是多少? 3.分析实验结果及所遇到的问题,并说明解决的方法。
答:运行结果:AL60H需要注意的问题:MASM 为 16 位运行方式,在 64 位机上需要模拟器。
MASM 不支持非 8.3 文件命名方式。
建议使用短目录及短文件名。
寻址方式:MOV AL BX是按字节寻址而不是按字寻址。
MOV AX SSEGMOV SS AXMOV AX TOPMOV SP AX此四句无必要,使用 ASSUME 伪指令后,SS 段运行时将自动装入,SP 将自动置数。
只需对 DS 或 ES 手动装入即可。
另外,此汇编程序中没有堆栈操作指令,可以不适用 STACK 段。
上一篇:
【精品】第1章VisualBasic6.0概述
下一篇:
ASP小区停车管理系统(Access)(含录像)