实验1-汇编语言语法练习与代码转换.pdfVIP

实验1-汇编语言语法练习与代码转换.pdf

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

验报告

课程名称汇编语言程序设计

一、实验目的和要求

实验目的:

1.掌握汇编语言源程序的编辑、汇编、目标文件的链接和可执行文件的调试执行全过程;

2.掌握各种数制之间的转换程序的设计;掌握代码的输入、转换和显示程序的设计。

实验要求:编写一个程序,统计负数的个数,并求最大数和最小数。

设数据段有8个数:

NUMDB-19,+28,37,-46,+55,61,-74,+255

设计一个程序完成:

(1)(必做)统计并显示负数的个数。

(2)(选做)找出真值最大和最小的数,并以二进制的形式显示在屏幕上。显示格式为:

MAX=XXXXXXXXB;MIN=XXXXXXXXB.

二、实验环境(实验设备)

硬件:微型计算机

软件:Windows操作系统、汇编语言开发工具MASM或TASM

1.源代码和注释

SEGMENTUSE16

NUMDW-19,+28,37,-46,+55,61,-74,+255

data1DW255;定义一个数,该数在内存里边占2个字节

MINDW?;最小数

MAXDW?;最大数

MINUSDB?;负数个数

S1DBMAX=$

S2DBMin=$

DATAENDS

CODESEGMENTUSE16

ASSUMECS:CODE,DS:DATA,ES:DATA

START:

MOVAX,DATA

MOVDS,AX

MOVES,AX;AX传给ES

MOVBX,OFFSETNUM;加上USE16就不报错

;LEABX,NUM;取NUM的偏移地址

MOVCX,8;共8个数字

MOVMINUS,0;负数的个数

MOVAX,wordPTR[BX];AX寄存器初始化为NUM的首单元,用来存放最小数

MOVDX,wordPTR[BX];DX寄存器初始化为NUM的首单元,用来存放最大数

;MOVMIN,AX;存放最小数的地方

;MOVMAX,DX;存放最大数的地方

LAST:

CMPwordPTR[BX],AX;比较当前

JGENEXT0;有符号数[BX]大于等于AX跳NEXT1

MOVAX,wordPTR[BX];否则更新最小值

NEXT0:

CMPwordPTR[BX],DX;比较当前

JLENEXT1;有符号数小于等于跳NEXT1

MOVDX,wordPTR[BX];否则更新最大值

NEXT1:

CMPwordPTR[BX],0;比较是否为负数,计算负数个数

JGENEXT2

INCMINUS

NEXT2:

INCBX;指向下一个单元

INCBX;指向下一个单元,因为是两个字节,所以还要重复一次

LOOPLAST

MOVMIN,AX

MOVMAX,DX

MOVAH,2;输出负数的十进制个数

MOVDL,MINUS

ADDDL,30H

INT21H

MOVAH,2;输出换行符

MOVDL,0AH

INT21H

MOVAH,9;输出字符串s1

MOVDX,OFFSETS1

INT21H

MOVCX,16;打印最大值

T_max:SHLMAX,1;把BX的值向左移一位,其高位存放在CF标志位

里边

JCprint1_max;程序跳转,如果最高位是1那么就输出1

JNCprint

您可能关注的文档

文档评论(0)

mi manchi + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档