第一范文网 - 专业文章范例文档资料分享平台

汇编语言中的循环程序设计

来源:用户分享 时间:2020-06-09 本文由花开成海 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

实验目的:

掌握循环程序设计的基本方法。主要掌握几种基本的循环程序设计技巧,如计数法程序设计、当循环、直到循环等程序设计技术。 实验内容:(任选其二)

主要实验实例:

1.用多种循环方法实现1+2+3+…+20的程序(至少二种方法); 2.将寄存器AX中的2#数用16#形式显示出来;

3.将内存中的数据块中(BUFF为起始地址)奇数和偶数分别存入以ADDR1和ADDR2开始的存储块中,并分别统计其中的奇、偶数,将统计结果存放在RESULT开始的两个字存储单元中;

4.不利用乘法指令实现乘法的程序;

5.对在附加段中的首地址为LIST的字数组进行从大到小的排序;

6.对给定数组和给定数,编制程序来确定数组中是否有给定数的值,如有则从数组中删除之;

7.对给定数组和给定数(设数组是有序数组),试将给定数插入给定数组中相应位置。 实验准备:

汇编语言下的循环程序设计基本技术和指令系统。循环程序设计的基本结构和问题表示方法。 实验步骤:

(1) 完成源程序设计任务,并准备好测试用例,分析其可能的测试结果; (2) 上机运行和测试所写的程序; (3) 进行实验分析; (4) 编写实验报告。 实验结果:

3.将内存中的数据块中(BUFF为起始地址)奇数和偶数分别存入以ADDR1和ADDR2开始的存储块中,并分别统计其中的奇、偶数,将统计结果存放在RESULT开始的两个字存储单元中; 代码: data segment

buff dw 6,35,99,17,80,69,50,33 addr1 dw 8 dup(?) addr2 dw 8 dup(?)

result dw 0,0 data ends code segment

assume cs:code,ds:data start:

mov ax,data mov ds,ax

mov cx,8d

mov si,0 ;clear si mov di,0 ;clear di mov bx,0 mov dx,0 L1:

test buff[si],0001h je L2 mov ax,buff[si] mov addr2[bx],ax add si,2 add bx,2 inc dl dec cx jmp L1 L2:

mov ax,buff[si] mov addr1[di],ax add di,2 add si,2

inc dh dec cx jmp L1

mov si,0

mov byte ptr result[si],dh add si,2

mov byte ptr result[si],dl code ends end start 运行结果:

4.不利用乘法指令实现乘法的程序; 代码:

data segment x dw 30d y dw 10d data ends

code segment

assume cs:code,ds:data start:

push ds sub ax,ax push ax

mov ax,data mov ds,ax

mov cx,x mov bx,y

mov ax,0 L1:

add ax,bx loop L1

mov dx,ax mov ah,2 int 21h code ends end start

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新IT计算机汇编语言中的循环程序设计 全文阅读和word下载服务。

汇编语言中的循环程序设计 .doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/1078562.html(转载请注明文章来源)
热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top