汇编实验数据串传送和查表程序.docx

上传人:b****1 文档编号:10342778 上传时间:2023-05-25 格式:DOCX 页数:9 大小:406.63KB
下载 相关 举报
汇编实验数据串传送和查表程序.docx_第1页
第1页 / 共9页
汇编实验数据串传送和查表程序.docx_第2页
第2页 / 共9页
汇编实验数据串传送和查表程序.docx_第3页
第3页 / 共9页
汇编实验数据串传送和查表程序.docx_第4页
第4页 / 共9页
汇编实验数据串传送和查表程序.docx_第5页
第5页 / 共9页
汇编实验数据串传送和查表程序.docx_第6页
第6页 / 共9页
汇编实验数据串传送和查表程序.docx_第7页
第7页 / 共9页
汇编实验数据串传送和查表程序.docx_第8页
第8页 / 共9页
汇编实验数据串传送和查表程序.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

汇编实验数据串传送和查表程序.docx

《汇编实验数据串传送和查表程序.docx》由会员分享,可在线阅读,更多相关《汇编实验数据串传送和查表程序.docx(9页珍藏版)》请在冰点文库上搜索。

汇编实验数据串传送和查表程序.docx

汇编实验数据串传送和查表程序

汇编实验-数据串传送和查表程序

2016──2017学年第二学期

实验课程

汇编语言程序设计

学生姓名

实验项目

数据串传送和查表程序

学院

实验性质

验证性实验

班级学号

实验地点

同组人数

1

第13组

实验日期

第周星期第节

成绩

环境参数

DOSBox0.74

1、实验目的及要求

1、堆栈。

堆栈指示器SP和堆栈操作指令PUSH。

POP。

2、段寄存器和物理地址计算。

3、查表法和查表指令XLAT。

4、数据串传送程序和数据串传送指令MOVS。

STOS及重复前辍REP。

5、循环指令ROL。

逻辑与指令AND和清方向位指令CLD。

6、伪操作指令DB。

2、实验准备

1.编写实验任务要求的程序

2.学习一下调试方法

利用查表方法把DX的内容(16进制数)转换成ASCII码:

1)、用A命令键入下列程序:

MOVBX,1000

MOVDI,2000

MOVCX,4

LOP:

PUSHCX

MOVCL,4

ROLDX,CL

POPCX

MOVAL,DL

ANDAL,OF

XLAT

CLD

STOSB

LOOPLOP

INT20

2)用A命令在1000H处键入下列ASCII码并用D命令检查之:

DB`0123456789ABCDEF'

用D命令检查时注意左边的ASCII码值和右边的字符。

3)用R命令给DX送一个四位的16进制数(例7F8E)。

4)用T命令逐条运行这程序到LOOP指令处,观察并记录每次运行结果,特别是SP和堆栈内容(用D命令检查)

5)用G命令将此程序运行到结束,并用D命令检查2000H处所转换的结果。

可注意屏幕右边的ASCII字符与DX是否一致。

3.验证:

数据串搬家程序:

1)用A命令键入下列程序:

MOVSI,1000

MOVDI,1500

MOVCX,0F

LOP:

MOVAL,[SI]

MOV[DI],AL

INCSI

INCDI

LOOPLOP

INT20

2)用A命令DB伪指令在1000H键入下列字符串:

‘IBM_PCCOMPUTER'

3)用G命令运行此程序,并用D命令检查目的地址处的字符与源串是否一致。

4.段寄存器概念及字符串传送指令练习:

1)用A命令键入下列程序:

MOVSI,0

MOVDI,0

MOVAX,1000

MOVDS,AX

MOVAX,1500

MOVES,AX

MOVCX,0F

CLD

REPMOVSB

INT20

2)用A命令DB伪指令在1000:

0000处键入字符串'IBM_PCCOMPUTER',并用D命检查之

3)用D命令检查0F00:

1000处内容,看是否一样。

为什么?

4)用G命令运行此程序,检查目的地址1500:

0000处内容。

并记下DS与ES值。

三、实验任务

1、把实验准备

(二)程序中的目的地址改为1002H,再运行此程序,看能不能把1000H开始的字符串搬到1002H开始的地方去?

字符串移动失败。

2、修改实验准备

(二)程序以做到把1000H开始的字符串搬到1002H

开始的地方去

移动成功!

程序清单:

MOVSI,100F

MOVDI,1011

MOVCX,10

LOP:

MOVAL,[SI]

MOV[DI],AL

DECSI

DECDI

LOOPLOP

INT21H

3、编一程序段,求双字(DX,AX)的绝对值

程序清单:

MOVAX,0000

MOVDX,FFFF

TESTDX,0

JZLOP

NEGDX

NEGAX

SBBDX,0

LOP:

MOVBX,AX

MOVCX,DX

MOVAX,BX

INT21

INT34

ADD[BX],BH

ORSI,[BP+SI+4A]

4、将双字(DX,AX)左移4位。

程序清单:

MOVDX,FFFF

MOVAX,0

MOVCL,04

SHLDX,CL

MOVBL,AH

AHLAX,CL

MOVDL,BL

INT3

四、实验结果分析及讨论

在求绝对值的过程中应注意到,负数输入到计算机内的值为其补码值;

对于字符串的传送和搬家,我们可以根据需要进行从末尾往头的搬家;

在编写程序时,实现功能的方法不只有一种,很多情况下,使用不同的指令,不同的方法,都能够完成程序所需要的功能。

 

仪器设备损坏、非正常损耗材料(试剂)及处理情况:

 

教师对报告的最终评价及处理意见:

 

教师签字:

年月日

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2