32位微机原理上机实验报告(2)

2020-02-21 17:39

实验题目

7种寻址方式指令编程

实验目的

通过对传送和算术运算类指令的实验结果的观察和分析,加深对各指令完成操作功能的理解,并了解各指令对于相关标志位的影响。

实验内容

7种寻址方式指令的编程包括: (1)MOV传送类; (2)堆栈操作传送; (3)交换传送; (4)输入/输出传送; (5)串传送指令等。

(6)在指令后面注释源操作数和目的操作数的寻址方式。

程序如下:

DATA SEGMENT DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA STADATA

SEGMENTRT:MOV AX,DATA MOV DS,AX MOV AL,04H

MOV DX,2000H MOV AX,99AAH MOV BX,1257H SUB AX,BX MOV AX,5000H MOV SI,3000H MOV AX,DS:[SI] PUSH AX PUSH EBX PUSH[SI]

PUSH DOWRD PTR[DI] PUSHW 0A124H PUSHD 20H MOV AX,3000H XCHG AX,1000H MOV 3000H,AX IN DX,7000H

//立即寻址

//寄存器寻址

//寄存器间接寻址

//堆栈操作指令

//交换传送指令

IN AX,DX //输入指令

实验步骤

1. 建立文件,编写源程序。

2. 编译、连接生成EXE可执行文件。

3. 行调试,分析每条指令的寻址方式,验证操作数所在的地址空间。

实验总结

1. 通过本次实验,可以正确的编写传送类指令与算术运算类指令、逻辑运算类指令的应用实验,并了解了编译链接调试的过程,检查程序结果的正确与否,会观察分析。 2. 更加清楚的能分析各种运算指令,并对其有了更深的理解。

3. 实验过程中必须认真仔细,特别是在应用逻辑运算指令时,不然一旦有一点错误,实验就无法正常进行,必须返回去查找错误,费时费力。

实验题目

各种逻辑指令的编程

实验目的

1、掌握在PC机上各种逻辑指令的用法 2、熟悉各种逻辑指令的用法

实验内容

在上次编辑七种寻址方式实验的中加入各种逻辑指令的运算,并且调试。

程序如下:

STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS

DDATA SEGMENT MSR DB 'HELLO,WORLD!$' LEN EQU $- MSR DDATA ENDS

EXDA SEGMENT MSD DB LEN DUP(?) EXDA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DDATA,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 MOV BX,0

NEXT: MOV AL,MSR[BX] MOV ES:MSD[BX],AL INC BX LOOP NEXT PUSH ES POP DS MOV DX,OFFSET MSD MOV AH,9 INT 21H

MOV AX,2233H MOV DX,3344H ADD AX,DX ADD AL,DL ADD AX,5566H ADC AL,DH DIV BL

MOV BX,6677H MUL BX SBB AX,DX MOV AX,4C00H INT 21H CODE ENDS END START

实验步骤

1. 运行编译器,编译程序。 2. 单击编译,保存。 3. 调试程序。

实验总结

1. 通过实验,熟悉了各种逻辑指令的用法,了解了其程序的编译。 2. 调试程序的过程中需要不断地发现问题、解决问题。

3. 实验过程中,各指令的用法十分复杂,需要不断练习,熟悉指令的运行目的。 4. 不同的程序代码,在不同的环境的运用方式也不同,这是我们必须要掌握的技能。

实验题目

数据传送实验

实验目的

(1) 熟悉Tdpit集成环境和调试器的使用。 (2) 掌握与数据有关的不同寻址方式。

实验内容

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

实验程序如下:

DDATA MSR LEN DDATA EXDA MSD EXDA

MYSTACK SEGMENT STACK DW 20 DUP(?) MYSTACK ENDS CODE START:

SEGMENT

;定义代码段

ASSUME CS:CODE,DS:DDATA,ES:EXDA

MOV AX,DDATA

;装载数据段寄存器 ;装载附加数据段寄存器 ;设置DI ;开始传输数据

MOV DS,AX MOV ES,AX

;定义堆栈段

SEGMENT ENDS

;定义附加数据段

DB LEN DUP(?) SEGMENT EQU $- MSR ENDS

;定义源数据段

DB \

MOV AX,EXDA

MOV SI,OFFSET MSR ;设置SI 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

;将附加段寄存器指向的段值赋给数据段寄存器


32位微机原理上机实验报告(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:六年级上语文期末试题-全能练考-苏教版小学学科网

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: