汇编语言——第1次上机实验

准备


硬件:pc机,32位win操作系统,能够运行dos,某些64位win10系统可能会不支持

软件:masm程序


实验内容


1.win+r运行dos,cd到指定的masm目录(为了调试方便,所有的文件和程序都放在该目录下)


2.edit  filename.asm回车后进行编辑,输入相应的汇编程序。(也可以用nodepad++,vim等二进制文本编辑器)


该汇编语句的源码(实现两个数的相加):

DATA  SEGMENT               ;DATA段定义开始BUF1 DB 34H BUF2 DB 27HSUM  DB ?
DATA  ENDS                         ;DATA段定义结束
CODE  SEGMENT                ;CODE段定义开始ASSUME CS:CODEASSUME DS:DATA ;段性质规定
START: MOV AX,DATA              MOV DS,AX          ;给DS赋值MOV AL, BUF1     ;取第一个加数ADD AL, BUF2       ;两数加MOV SUM, AL       ;和放入SUM单元MOV AH,4CH                  INT 21H                    ;返回DOS
CODE  ENDS                         ;CODE段定义结束END START              ;源程序结束

3.运行masm filename.asm对该文件进行汇编(如果出现error或者warning请检查源程序),汇编结束会产生相应的obj文件。


4.link  filename.obj连接程序,使得二进制目标文件变成可执行文件,操作后生成exe文件。

4.输入my直接运行汇编好的程序(sum已经mov到相应的内存单元)。


附加:

debug调试

1.debug filename.exe进入该程序的调试模式。

2.不停的t命令单步调试,直到完成mov sum。

3.d模式查看内存单元的内容。

可以看到,0000到0002三个单元的数分别为34 27 5B(前两个为加数,后一个为和)


至此,整个汇编上机过程完成,而需要掌握的是中间的编辑,汇编,运行步骤。

对于debug模式,要学会使用常用的t(单步调试),d(查看内存单元内容),u(反汇编)等命令。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/381722.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[导入]一再的变故,终于决定何去何从.

dudu文章来源:http://blog.csdn.net/veiny/archive/2007/09/12/1781906.aspx 转载于:https://www.cnblogs.com/veiny/articles/904703.html

汇编语言——第2次上机实验

实验要求: 求表达式x*yz-200的值 实验步骤: 1.按照实验要求,画出相应的计算流程图 可以看到,先算x*y(保存在dx:cx),然后扩展z为双字节(dx:ax)&am…

SQL Server 2005 中附加只有mdf文件的数据库(修复置疑的数据库)

在利用VSTS中,VSTS不能创建团队项目,数据库ReportServer出现置疑现象,数据库无法打开。修复过程中,由于想利用SQL SERVER 2000的功能,先备份了ReportServer库文件和日志文件,然后删除数据库。在此之前先进行…

是否会成为问题——Linq to Sql的执行可能无法复用查询计划

查询计划 Sql Server在执行一条查询语句之前都对对它进行“编译”并生成“查询计划”,查询计划告诉Sql Server的查询引擎应该用什么方式进行工作。Sql Server会根据当前它可以收集到的各种信息(例如内存大小,索引的统计等等)把一条…

介绍及安装

不知读者是否听说过“宠物大战”?大意为Sun公司为帮助开发人员和架构师使用J2EE技术,发布了一个在线宠物商店Sun Java Pet Store。而微软公司则利用.NET技术也发布了一个实现同样功能的PetShop,并且在代码数量、性能等各方面对二者进行了比较…

自定函数获取datagrid,datalist,rpeater控件中header,footer栏中控件

在论坛上看到很多关于datagrid,gridview,datalist,rpeater提取header,footer中控件的问题,整理了一下.供大家分享下面我以DataGrid为便进行说明.footer栏又称页脚栏,在很多时候我们可以在该栏放页码及相当的功能键.但是最后在获得这些控件引用的时候就会有点麻烦,由于footer(页…

随机广告图片

1<script language”JavaScript”>2var imageList newArray;3imageList[0] “image1.jpg”;4imageList[1] “image2.jpg”;5imageList[2] “image3.jpg”;6imageList[3] “image4.jpg”;7var urlList newArray;8urlList[0] “http://some.host/”;9urlList[1] “http://a…

Core IO学习心得

最近看Core IO的内容&#xff0c;有一些心得给大家共享一下&#xff1a; Core IO作为微软IT基础架构优化框架中的一个部分。该框架包含三个部分&#xff1a;CIO&#xff0c;BPIO和APIO&#xff1a; CIO&#xff08;核心基础架构优化&#xff09;专注于核心基础机构组件&#x…

经典算法研究系列:十、从头到尾彻底理解傅里叶变换算法、上

经典算法研究系列&#xff1a;十、从头到尾彻底理解傅里叶变换算法、上 作者&#xff1a;July、dznlong 二零一一年二月二十日 推荐阅读&#xff1a;The Scientist and Engineers Guide to Digital Signal Processing&#xff0c;By Steven W. Smith, Ph.D。此书地址&#xf…

经典算法研究系列:十、从头到尾彻底理解傅里叶变换算法、下

经典算法研究系列&#xff1a;十、从头到尾彻底理解傅里叶变换算法、下 作者&#xff1a;July、dznlong 二零一一年二月二十二日 推荐阅读&#xff1a;The Scientist and Engineers Guide to Digital Signal Processing&#xff0c;By Steven W. Smith, Ph.D。此书地址&#…

调出sharepoint错误的详细页面

记录一个小技巧&#xff1a; 在开发sharepoint的时候经常出现" An unexpected error has occurred."的页面&#xff0c;让人非常的郁闷。 打开web.config, 找到&#xff1a; <SafeMode MaxControls"200" CallStack"false" DirectFileDepende…

职业生涯中12个最致命的想法

1、总觉得自己不够好  这种人虽然聪明、有历练&#xff0c;但是一旦被提拔&#xff0c;反而毫无自信&#xff0c;觉得自己不胜任。4、无条件地回避冲突  这种人一般会不惜一切代价&#xff0c;避免冲突。一位本来应当为部属据理力争的主管&#xff0c;为了回避冲突&#xf…

树链剖分入门讲解

“在一棵树上进行路径的修改、求极值、求和”乍一看只要线段树就能轻松解决&#xff0c;实际上&#xff0c;仅凭线段树是不能搞定它的。我们需要用到一种貌似高级的复杂算法——树链剖分。 树链&#xff0c;就是树上的路径。剖分&#xff0c;就是把路径分类为重链和轻链。 记…

选择模块数据读取

1if(Bname"")2{ 3 Response.Write("<script languagejavascript>alert(错误的链接地址&#xff01;);history.go(-1);</script>"); 4 Response.End(); 5 }6if(Bid106&&Sid!0)7{ 8 //<!-- 标准法规--> 9 if(Sid127…

Terrafugia希望在今年夏天带来真正可飞的Airplane

Terrafugia希望在今年夏天带来真正可飞的Airplane 大家都知道&#xff0c;Terrafugia的汽车飞机混合机种&#xff0c;他是是辆双座的汽车&#xff0c;拥有100-500英里的速度范围&#xff0c;一个独立的无铅汽油储备箱&#xff0c;同时配置有电子计算机&#xff0c;用来在空中飞…

四川汶川地震祈福赈灾宣传画、报纸头版精选第二版(超多图)

本篇Key词&#xff1a; 汶川地震祈福图片汶川地震祈福壁纸四川汶川地震祈福赈灾宣传画 四川汶川地震祈福赈灾宣传画 天使 不要害怕&#xff0c;手牵手渡过难关 孩子不哭 生命奇迹 从废墟中站起来 祝福灾区人民 众志成城&#xff0c;抗震救灾 众志成城&#xff0c;抗震救灾2 众…

2016年湖南省第十二届大学生计算机程序设计竞赛

题目&#xff1a; 任意门 听说这套题目是叉姐出的&#xff0c;感觉呵呵了。。。 据说现场牌都不够发的&#xff01;&#xff01;&#xff01;只能说给湖南省出的题目太强了&#xff0c;不适合新手去做&#xff0c;当然我这种老手也不见得做的多好&#xff0c;出了3题&#xf…

控件中的Events个人理解。

首先&#xff0c;了解一下与事件和委托有关的几个类和属性&#xff1a;Delegate, MulticastDelegate, EventHandler, EventHandlerList, EventHandlerList.ListEntry, Control, ComponentControl的Events属性是由System.ComponentModel.Component 继承而来,它是EventHandlerLis…

ManualResetEvent用法

ManualResetEvent 允许线程通过发信号互相通信。通常&#xff0c;此通信涉及一个线程在其他线程进行之前必须完成的任务。 public static ManualResetEvent mre new ManualResetEvent(false); ManualResetEvent建立时是把false作为start的初始状态&#xff0c;这个类用于通知另…

JavaScript: Cookie 详解、实例与应用

Cookie&#xff08;也&#xff09;是JavaScript中的一种机制&#xff0c;可以实现严格的跨页面全局变量的要求。 Cookie是存于用户硬盘的一个文件&#xff0c;这个文件通常对应于一个域名&#xff0c;当浏览器再次访问这个域名时&#xff0c;便使这个cookie可用。因此&#xff…