一、实验目的和要求

1. 掌握汇编语言源程序的格式;

2. 进一步学习汇编语言源程序的编辑、汇编、目标文件的链接和可执行文件的执行全过程;

3. 掌握编辑软件、TASM/MASM、TLINK和TD的使用方法、掌握汇编语言的语法规则。

4. 实验内容:

(1)练习并掌握汇编语言开发全过程,在屏幕打印各自学号,要求在命令行下进行汇编程序编译,汇编源程序的文件名命名为各自学号。

(2)排除语法错误:给出的是一个通过比较法完成8位二进制数转换成十进制数送屏幕显示功能的汇编语言源程序,但有很多语法错误。要求实验者按照原样对源程序进行编辑,汇编后,根据TASM给出的信息对源程序进行修改,知道没有语法错误为止。然后进行链接,并执行相应可执行文件。正确的执行结果在屏幕上显示:25+9=34。

二、实验过程描述与结果分析

1)汇编语言开发步骤

汇编语言源程序编写好以后, 必须经过下列几个步骤才能在机器上运行:

1.将源程序通过调编辑程序编辑成.ASM文件;

2.将.ASM文件通过调汇编程序汇编成.OBJ文件;

3.将.OBJ文件库文件通过调链接程序如TLINK.EXE链接成可执行文件.EXE文件;

4.运行.EXE文件即可得到结果。

程序段为:

.586DATA  SEGMENT USE16          ;定义数据段MESG  DB 'B11111111xyz', '$'DATA  ENDSCODE  SEGMENT USE16             ;定义代码段ASSUME CS: CODE, DS: DATA ;说明段约定BEG:  MOV AX, DATA            ;BEG为启动地址MOV DS, AXMOV AH, 9MOV DX, OFFSET MESGINT 21HMOV AH, 4CHINT 21H                ;返回DOSCODE  ENDSEND BEG                 ;汇编结束

2)排除语法错误

要求通过比较法完成8位二进制数转换成十进制数送屏幕显示功能的汇编语言源程序。但有很多语法错误,要求按照原样对源程序进行编辑,汇编后,根据TASM给出的错误信息对源程序进行修改,直到没有语法错误为止,然后进行链接,并执行相应的可执行文件。正确的执行结果是在屏幕上显示:25+9=34。

修改后代码:(分号后为修改)

 ;FILENAME EXA131.ASM.486DATA  SEGME  NT USE16 ; DATA  SEGMENT USE16SUM  DB ?, ?            ;SUM  DB  '?', '?'MESG  DB '25+9='DB 0, 0             ; DB 0, 0, '$'N1  DB 9, F0H          ; N1  DB 9, 0F0HN2  DW 25             ; N2  DB 25DATA  ENDSCODE  SEGMENT USE16ASSUME CS: CODE, DS: DATABEG:  MOV AX, DATAMOV DS, AXMOV BX, OFFSET SUMMOV AH, N1MOV AL, N2ADD AH, ALMOV [BX], AHCALL CHANGMOV AH, 9MOV DX, OFFSET MEST  ; MOV DX, OFFSET MESGINT 21HMOV AH, 4CHINT 21HCHANG:  PROC                 ; CHANG  PROCLAST:  CMP [BX], 10            ; CMP BYTE PTR[BX], 10JC NEXTSUB [BX], 10             ; SUB BYTE PTR [BX], 10INC [BX+7]              ; INC BYTE PTR [BX+7]JMP LASTNEXT:                          ;MOV DL, SUMADD [BX+8], SUM        ; ADD BYTE PTR [BX+8], DLADD [BX+7], 30H         ;ADD BYTE PTR [BX+7], 30HADD [BX+8], 30H         ; ADD BYTE PTR [BX+8], 30HRETCHANG:  ENDP                 ; CHANG  ENDPCODE  ENDSEND BEG

运行结果:

南京邮电大学汇编语言程序设计实验一:汇编语言语法练习与代码转换相关推荐

  1. 南京邮电大学高级语言程序设计实验五(指针与字符串实验)

    实验题目(1)[见实验教材实验六的题目2]:编程exp6_2.c,现有整型变量x,y,调用交换函数以期实现两个值的交换.下表中4种不同的定义及调用分别进行测试并填写表格. 表1 拟实现交换的四种方法 ...

  2. 南京邮电大学高级语言程序设计实验三(函数实验)

    一. 实验目的和要求 (1)掌握正确的函数定义与调用,需要时会正确使用函数声明.会正确设置形式参数,理解参数传递及程序的执行流程. (2)理解各种不同存储类别变量的生命期与作用域 (3)进一步熟悉调试 ...

  3. 计算机组成原理汇编程序实验,计算机组成原理汇编语言程序设计实验.ppt

    汇编语言程序设计实验主讲:马冰汇编语言上机操作步骤汇编语言上机所必备的软件汇编语言上机操作过程汇编语言上机所必备的软件操作系统:DOS或CCDOS编辑程序:行编辑程序EDLIN.COMWPS全屏编辑程 ...

  4. 南京邮电大学《程序设计(上机)》题目

    南京邮电大学<程序设计(上机)>题目 2022-2023学年第1学期 程序设计 实验指导书 胥备 17766106600 一. 实验前准备 硬件:微型计算机一台(个人笔记本电脑) 软件:任 ...

  5. 南京邮电大学c语言实验报告4,南京邮电大学算法设计实验报告——动态规划法...

    <南京邮电大学算法设计实验报告--动态规划法>由会员分享,可在线阅读,更多相关<南京邮电大学算法设计实验报告--动态规划法(12页珍藏版)>请在人人文库网上搜索. 1.实 验 ...

  6. 南邮Android软件设计报告,南京邮电大学软件设计实验报告

    南京邮电大学软件设计实验报告 软件设计报告( 2014 / 2015 学年 第 二 学期)课程名称 软件设计 指导老师 赵江 实习时间 第十八周 学生姓名 学号 ____学院______专业软件设计课 ...

  7. 南邮java实验一报告_南京邮电大学双语web实验一报告2017.docx

    南京邮电大学双语web实验一报告2017 第四章 实验 2 Web 服务端脚本编写一 实验目的 (1)通过上机实践,熟悉 Apache 服务器的安装和配置使用方法. (2)掌握 PHP 脚本语言,熟练 ...

  8. 南京邮电大学汇编语言程序设计实验一(汇编语言语法练习与代码转换)

    文章目录 一.程序改错(显示25+9=34) 二.统计字符串(42H~45H) 一.程序改错(显示25+9=34) 排除语法错误:给出的是一个通过比较法完成8位二进制数转换成十进制数送屏幕显示功能的汇 ...

  9. 电子科大计算机调试,电子科大计算机学院 汇编语言程序设计 实验报告 99分精品版.doc...

    电子科技大学 计算机科学与工程 学院 标 准 实 验 报 告 (实验)课程名称 汇编语言与微机接口技术综合实验 电子科技大学教务处制表 电 子 科 技 大 学 实 验 报 告 (一) 学生姓名:郫县英 ...

最新文章

  1. .net 应用迁移到Mono 工具 (Moma)
  2. 不要在同一客户端同时使用超过两个的 HTTP 长连接
  3. 1.19 String、StringBuffer和StringBuilder类的区别
  4. Eclipse中导入Maven项目后没有run on server
  5. 大数据摄取:Flume,Kafka和NiFi
  6. 工作301:substring使用
  7. 多媒体微型计算机必不可少的硬件,第1章计算机基础知识习题材料.doc
  8. 面试题17. 打印从1到最大的n位数
  9. python四种可变类型_Python的可变类型与不可变类型
  10. 64 位SQL Server 2005通过DB link链接32位SQL Server 2000 的bug解决
  11. 托福试卷真题_托福考试真题 - 韩语自学网
  12. ofd 文件发票解析
  13. JQ实现图片预览(轮播,放大缩小,拖拽,ajax请求,旋转)
  14. Opencv中的数据存储(1)
  15. 年薪百万的年轻人都是怎样生活的
  16. android root刷机包包,一加OnePlus 5T安卓9 root教程,用recovery来卡刷root包
  17. 【Java】用PriorityQueue优先队列实现最小堆和最大堆
  18. 【Java面试】Java 内存溢出 栈溢出的原因与排查方法
  19. linux内核之alsa,Linux操作系统Alsa音频编程
  20. html5 localstorage 生命周期,cookie、localStorage和sessionStorage 三者之间的区别以及存储、获取、删除等使用方式...

热门文章

  1. 用python实现身份证号校验系统
  2. Java基于JSP的高校教材管理系统
  3. 想知道PPT如何转PDF?这几个软件可以实现
  4. 列合并:两列 或 多列 合并为 一列
  5. 软件工程课程设计·SOA架构搭建SSM框架的网上商城系统
  6. 尚学堂python线上培训多少钱
  7. JAVA+SWING超市销售管理系统开发(JAVA实训作业增删改查)
  8. 程序员代码面试指南 CD101 单调栈结构
  9. 计算机中丢失 api-ms-win-crt-runtime-l1-1-0.dll解决办法
  10. 【HTML响应式项目】成人教育官网前端页面(HTML+CSS+JS实现三端适应)