若没有安装DOSBox或者不熟悉基本操作建议先看这篇博客

汇编程序的编辑、编译、连接与执行(附带DOSBox安装)

######若基础知识不牢固的推荐先阅读一下博客
汇编语言8086CPU之寄存器详解
汇编8086CPU常用指令——详解

实验一:顺序程序实验

一、实验目的

1.通过宏汇编(MASM)上机操作,掌握汇编语言程序的编辑、汇编、连接和执行的完整过程。

2.掌握汇编过程中各命令的作用及使用方法,指令语句和伪指令语句的区别。

3.掌握8086指令系统中已学指令的格式、功能及其作用。

4.结合实例程序掌握汇编语言程序上机过程,熟悉DEBUG程序中常用命令的使用。

二、实验内容

1.编写程序计算Z=(A+B)- (C-D),其中A、B、C、D均为字节无符号数。

  输入变量的初值定义:输出结果的保存说明:

2.设W、X、Y、V、Z均为16位字有符号数,编程计算W=(X*Y-V)/Z。

  输入变量的初值定义:输出结果的保存说明:

3.编写自命题的程序(可体现创新性)

  输入变量的初值定义:输出结果的保存说明:

三、主要仪器与设备

1.硬件:计算机

2.软件:DOSBox0.74-win32-installer,masm5

四、实验报告及要求

1.按照附件中的实验报告模板填写实验名称、实验目的和要求、主要仪器设备。

2.在实验报告模板的“实验内容和原理”中,根据不同的实验命题,写出输入、输出数据的说明,并阐述程序实现的方法(算法思想或流程)

3.在实验报告模板的“操作方法与实验步骤”中,根据不同的实验命题,列出调试通过的源程序,要添加必要的标注。

4.在实验报告模板的“实验数据记录和处理”中,根据不同的实验命题,列出程序运行结果说明及截图。

5.在实验报告模板的“实验结果与分析”中,根据不同的实验命题,分析程序的优缺点、时空性能。

6.在实验报告模板的“讨论、心得”中,根据不同的实验命题,阐述改进思想,写出心得体会。

7.将实验报告通过附件上传,文档名称格式为:实验名称-班级-姓名-学号

question1:我先讲解详细一点,后面应该就不会很详细了

编写程序计算Z=(A+B)- (C-D),其中A、B、C、D均为字节无符号数。输入变量的初值定义:输出结果的保存说明:

注:data段数据可别一样了。。。

code

stack segment stackdw 100 dup(0)
stack endsdata segmentA db 10hB db 20hC db 30hD db 40hZ db ?
data endscode segmentassume cs:code,ds:data,ss:stackstart:  push dsmov ax,0;push axmov ax,datamov ds,axmov al,Aadd al,Bmov Z,almov ah,Csub ah,Dsub Z,ahmov ah,4cHint 21hcode ends
end start

code方法一:在dos中输入edit,之后回车

进入edit界面


code方法二:
在MASM文件加下新建一个txt文件,code完成后改后缀名为.asm

编译方法一:

编译方法二:

连接方法一:

连接方法二:

debug
之和按Q,回车退出。到这里操作方法与实验步骤就结束了。。

大家注意看廖神发的评分标准

1.按照附件中的实验报告模板填写实验名称、实验目的和要求、主要仪器设备。目的和要求1.通过宏汇编(MASM)上机操作,掌握汇编语言程序的编辑、汇编、连接和执行的完整过程。2.掌握汇编过程中各命令的作用及使用方法,指令语句和伪指令语句的区别。3.掌握8086指令系统中已学指令的格式、功能及其作用。4.结合实例程序掌握汇编语言程序上机过程,熟悉DEBUG程序中常用命令的使用。主要仪器设备1.硬件:计算机2.软件:DOSBox0.74-3-win32-installer,masm52.在实验报告模板的“实验内容和原理”中,根据不同的实验命题,写出输入、输出数据的说明,并阐述程序实现的方法(算法思想或流程)描述数据,阐述下程序执行进行3.在实验报告模板的“操作方法与实验步骤”中,根据不同的实验命题,列出调试通过的源程序,要添加必要的标注。备注自己加了4.在实验报告模板的“实验数据记录和处理”中,根据不同的实验命题,列出程序运行结果说明及截图。5.在实验报告模板的“实验结果与分析”中,根据不同的实验命题,分析程序的优缺点、时空性能。找出优缺点,改进并说明的话好像还能加5分!时空性能时间复杂度空间复杂度6.在实验报告模板的“讨论、心得”中,根据不同的实验命题,阐述改进思想,写出心得体会。~~~

每个人见解都不一样,这个就不贴出来了~

question2

2.设W、X、Y、V、Z均为16位字有符号数,编程计算W=(X*Y-V)/Z。输入变量的初值定义:输出结果的保存说明:
STACK SEGMENT STACKDW 100 DUP(0)
STACK ENDSDATA SEGMENT
X DW 20
Y DW 10
V DW 15
Z DW ?
DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,DATAMOV DS,AXXOR AX,AXMOV AX,XMUL YSUB AX,VDIV ZMOV Z,AXMOV AX,4CHINT 21HCODE ENDSEND START

3.自己写拉,也阔以在上面俩程序稍微改改

软件工程——硬件汇编程序设计实验——顺序程序实验相关推荐

  1. linux下的程序开发实验,Linux程序实验.docx

    Linux程序实验 <Linux程序设计>教学大纲Linux Program Design课程类别:学科专业教育课程 课程名称:Linux程序设计开课单位:软件学院课程编号:总 学 时:3 ...

  2. 数据据结构实验——顺序表实验

    一.实验任务 编写算法实现下列问题的求解. (1)在第i个结点位置插入值为x的结点. 实验测试数据基本要求: 第一组数据:顺序表长度n≥10,x=100,  i分别为5,n,n+1,0,1,n+2 第 ...

  3. java实验1_Java程序实验1

    public class User { public static void main(String[] args) { //创建Vehicle类的对象 Vehicle car1,car2; //构造 ...

  4. 微型计算机原理实验程序,微机原理实验(含程序).doc

    微机原理实验(含程序) 微机原理实验(含程序) 实验一 基本I/O口扩展实验(请在实验课前写好预习报告) 实验目的: 1.了解并熟悉8086K实验系统 2.掌握汇编语言基本程序框架 实验内容: 1.利 ...

  5. 软件工程汇编程序设计——分支程序实验,循环程序实验,综合程序设计实验

    实验2-分支程序实验 1.已知X.Y.Z.MAX为16位的带符号数,求三个数中最大值,结果存入MAX单元. 输入变量的初值定义:输出结果的保存说明: stack segment stackdb 50 ...

  6. c语言程序设计论文结构,c语言顺序结构设计实验报告.docx

    c语言顺序结构设计实验报告 姓名王中华班级学号31实验日期课程名称C语言程序设计指导教师陈强成绩 实验名称:C语言的三种结构-顺序结构 [实验目的] 1.理解C语言程序的三种基本结构.2.掌握变量定义 ...

  7. python顺序结构实验_Python程序设计实验报告二:顺序结构程序设计

    安徽工程大学 Python程序设计 实验报告 班级 物流192 姓名方伟虎学号3190505205 成绩 日期 2020.3.20 指导老师修宇 [实验名称] 实验二 顺序结构程序设计(验证性实验) ...

  8. python顺序结构实验_Python程序设计实验报告二:顺序结构程序设计(验证性实验)...

    安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名姚彩琴学号3190505129 成绩 日期 2020.3.3 指导老师修宇 [实验名称] 实验二 顺序结构程序设计(验证性实验) [ ...

  9. python顺序结构实验设计_实验二 顺序结构程序设计(验证性实验)

    安徽工程大学 Python程序设计实验报告 班级物流192 姓名 徐敏 学号 3190505232 成绩 _____ 日期 2020.3.22 指导老师 修宇 [实验名称] 实验二 顺序结构程序设计( ...

最新文章

  1. 前端规范之媒体文件规范
  2. ML之RF:利用Js语言设计随机森林算法【DT之CART算法(gain index)】并应用随机森林算法
  3. 圆柱属于能滚动的物体吗_一户多宅属于违建吗?怎么能拥有多一点的宅基地
  4. ASP VNext 开源服务容错处理库Polly
  5. python-day19-面向对象进阶-加载顺序,命名空间,组合(实现松耦合)
  6. 原来这些网站功能这么强?做梦都没想到那些软件都不是他的对手!
  7. 6月8日 Python处理PDF和Word文档常用的方法
  8. paip.自动import的实现跟java.lang.SecurityException Prohibited package name java
  9. css黄金色渐变值,ps金色(ps金色渐变数值)
  10. 搭建ORB_SLAM3在Linux下的编译和运行环境
  11. C语言编程 犯二的程度,犯二的程度 - osc_jhl7rojx的个人空间 - OSCHINA - 中文开源技术交流社区...
  12. 基于QT的mplayer播放器 .
  13. wyh2000 and pupil
  14. Java动态代理为什么要求必须实现顶级接口
  15. matlab无法打开wps的xls文件,WPS无法打开XLS文件怎么办 XLS文件出现异常无法打开怎么处理...
  16. 从0开始学习 GitHub 系列之「08.如何发现优秀的开源项目」----转载自stormzhang 原创文章
  17. 【数据处理】超好用的Excel数据拆分工具
  18. SpringBoot使用hutool生成图片二维码
  19. STM32FSMC扩展SRAM
  20. 微信公众号中h5页面扫一扫实现

热门文章

  1. 看完这篇你们团队的代码也很规范
  2. Dockerfile 文件结构、docker镜像构建过程详细介绍
  3. 数据结构函与算法之函数与递归
  4. 【Python】求n!
  5. 【Python】圆周率的计算
  6. C语言实例-大小写字母间的转换
  7. Linux入门学习(七)
  8. 环境变量简单介绍windows-linux-mac
  9. 如何使用Node.js和CloudFormation在AWS Lambda中构建和部署GraphQL服务器
  10. 124_Power PivotPower BI DAX优化计算最大连续次数