汇编实验报告五Word文档格式.docx

上传人:b****3 文档编号:17145555 上传时间:2022-11-28 格式:DOCX 页数:11 大小:418.54KB
下载 相关 举报
汇编实验报告五Word文档格式.docx_第1页
第1页 / 共11页
汇编实验报告五Word文档格式.docx_第2页
第2页 / 共11页
汇编实验报告五Word文档格式.docx_第3页
第3页 / 共11页
汇编实验报告五Word文档格式.docx_第4页
第4页 / 共11页
汇编实验报告五Word文档格式.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

汇编实验报告五Word文档格式.docx

《汇编实验报告五Word文档格式.docx》由会员分享,可在线阅读,更多相关《汇编实验报告五Word文档格式.docx(11页珍藏版)》请在冰豆网上搜索。

汇编实验报告五Word文档格式.docx

DATASEGMENT

DATDB0A5H,2DUP(?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVAL,DAT;

取被操作数

MOVBL,AL;

备份操作数

MOVCL,4;

设置准备移动的位数

MOVBL,CL;

取操作数的高4位

MOVDAT+1,BL;

将高BCD数存入DAT+1

ANDAL,0FH;

取操作数的低4位

MOVDAT+2,AL;

将低BCD数存入DAT+2

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

程序运行结果如下:

2.调试程序2,源程序如下:

该程序实现了特殊符号的输出功能

3.调试程序3:

下面程序完成将HEX为起始地址的两位十六进制(ASCII码)转换成八位二进制数存入BIN单元,请阅读程序,找出其中的错误之处,并上机调试运行该程序。

ORG1000H

BINDB?

HEXDB'

6B'

ORG1030H

DB00H,01H,02H,03H,04H,05H,06H,07H,08H,09H

ORG1040H

DB0AH,0BH,0CH,0DH,0EH,0FH

MOVAX,DATA

MOVDS,AX

MOVAL,HEX

MOVBX,OFFSETBIN

SUBAH,AH

ADDBX,AX

MOVDL,[BX]

MOVDL,4

MOVAL,HEX+1

XORAH,AH

MOVAL,BX

ORAL,DL

MOVBIN,AL

MOVAH,4CH

INT21H

程序的错误如下:

修改后程序如下:

(红色为修改处)

BINDB?

存放转换后的二进制数

HEXDB'

待转换的十六进制数6BH

DB00H,01H,02H,03H,04H,05H,06H,07H,08H,09H

0~9对应的二进制数转换表

ORG1041H

DB0AH,0BH,0CH,0DH,0EH,0FH;

A~F对应的二进制数转换表

ASSUMECS:

MOVAL,HEX;

十六进制高位36H->

AL

MOVBX,OFFSETBIN;

BIN的偏移地址1000H->

BX

SUBAH,AH;

AH清0

ADDBX,AX;

1036H->

BX形成转换表地址

MOVDL,[BX];

DL=(1036H)=06H

MOVCL,4;

将DL低4位左移至高4位

SHLDL,CL

MOVAL,HEX+1;

十六进制低位42H->

BX

XORAH,AH;

1042H->

BX形成转换表地址

MOVAL,[BX];

AL=(1042H)=0BH

ORAL,DL;

AL=0BHV60H=6BH

MOVBIN,AL;

6BH->

BIN单元

CODEENDS

ENDSTART

运行结果如下:

4.列出求26÷

2+18×

2的小汇编程序清单。

-A

XXXX:

0100MOVAL,1A;

26=1AH

0103SHRAL,1;

AL右移1位,相当于本身除以2

0105MOVBL,AL;

结果转存BL

0107MOVAL,12;

18=12H

0109SHLAL,1;

AL左移1位,相当于本身乘以2

010BADDAL,BL;

AL存放最后结果

010DHLT

010E

5.编写程序1,实现W=(3X+6Y)*4-8Z,设X=3,Z=19。

将编写好的程序1输入、编译、连接并运行。

程序1清单

DSEGSEGMENT;

数据段定义

XDB5;

加数变量X的定义及赋值

YDB3;

加数变量Y的定义及赋值

ZDB19;

加数变量Z的定义及赋值

WDW?

结果变量W的定义

DSEGENDS;

数据段定义结束

CSEGSEGMENT;

代码段定义

CSEG,DS:

DSEG;

呈现各个定义的段

定义程序开始执行

MOVAX,DSEG;

获取数据段的段地址

MOVDS,AX;

把数据段的段地址存入DS寄存器中

BEGIN:

MOVAL,X

MOVBL,AL

SHLAL,1

ADDAL,BL;

AL=3X

MOVBL,Y

SHLBL,1

MOVBH,BL

ADDBL,BH;

BL=6Y

AL=(3X+6Y)

MOVBL,4

MULBL;

AX=(3X+6Y)*4

MOVBX,AX;

BX=(3X+6Y)*4

MOVAL,Z

MOVCL,8

MULCL;

AX=8Z

SUBBX,AX;

BX=(3X+6Y)*4-8Z

MOVW,BX

MOVAH,4CH

INT21H

CSEGENDS;

代码段结束

ENDSTART;

程序执行结束

 

程序1运行结果:

实验情况与体会:

通过本次上机实验,学习了数值转换。

实验过程中,遇到很多问题,比如程序一的编写,基本上都是学习书本以及依靠书本多做题才编出来的,仅有的几次上机实验,要抓紧时间学习和交流,时间挺少的。

在今后的学习和生活中,我们都需要相互学习、相互交流,共同进步。

学习是一个循序渐进的过程。

通过这次实验,使我了解到运行调试程序的不易,今后一定更加努力,把程序做到最好!

对于不足之处,会积极改正。

注:

篇幅不够,可以另外附页。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 金融投资

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1