汇编语言-实验二+++循环与子程序程序设计.pdfVIP

  • 1
  • 0
  • 约4.05千字
  • 约 16页
  • 2024-03-19 发布于四川
  • 举报

汇编语言-实验二+++循环与子程序程序设计.pdf

实验二循环与子程序程序设计

一、实验目的

1)加深对循环结构的理解。

2)掌握循环程序的设计方法。

3)学习子程序的定义和调用方法。

4)掌握子程序、子程序的嵌套、递归子程序的结构。

5)掌握子程序设计、编制及调试。

6)熟练掌握DEBUG的常用命令,学会用DEBUG调试程序。

二、实验内容

1)编制程序计算S=1+2·3+3·4+4·5+……+N(N+1)+……直到N(N+1)大于

200为止,并将结果由屏幕上显示出来。

2)将从3000H内存单元开始的100个字节存储单元全部清0。

3)编制在屏幕上显示九九乘法表的程序。

4)编制在屏幕上显示用*组成的三角形的程序。

5)设有五个字数据存放在以BUF为首地址的内存单元中,要求采用调用多个字

数据相加的子程序方法编程,和的低位字放在RESULT单元,和的高位字放在

RESULT+2单元,并将结果显示在屏幕上。

6)编写一个递归子程序,计算指数函数Xn的值,其中X,n从键盘输入。

三、源程序

EXAM2-1

DATASEGMENT

BUFDB’S=1+2×3+3×4+4×5+…+N(N+1)+…=’,’$’

RESDW4DUP(0),’$’

DATAENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA

START:MOVAX,DATA

MOVDS,AX

MOVDX,OFFSETBUF

MOVAH,09H

INT21H

MOVDX,1

MOVBL,2

NEXT:MOVAL,BL

INCBL

MULBL

ADDDX,AX

CMPAX,200

JNANEXT

MOVCX,0004H

MOVDI,OFFSETRES

ADDDI,03H

NEXT1:MOVAX,DX

ANDAX,000FH

CMPAL,0AH

JBNEXT2

ADDAL,07

NEXT2:ADDAL,30H

MOV[DI],AL

DECDI

PUSHCX

MOVCL,04

SHRDX,CL

POPCX

LOOPNEXT1

MOVDX,OFFSETRES

MOVAH,09H

INT21H

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

执行程序EXAM2-1·EXE,屏幕上显示结果:

S=1+2×3+3×4+4×5+...+N(N+1)+(045)

EXAM2-2

ORG2000H

2000BF0030MOVDI,3000

2003B164MOVCL,64

2005C60500MOVBYTEPTR[DI],0

200847INCDI

2009FEC9DECCL

200B75F8JNZ2005

200DF4HLT

EXAM2-3

DATASEGMENT

ATADD

B?,2AH,?,3DH,?,?,20H,$

ATAD1D

B?,2AH,?,3DH,?,?,0DH,0AH,$DATAENDS

STACKSEGMENTSTACK

DB20HDUP(0)

STACKENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA

START:

MOVAX,DATA

MOVDS,AX

MOVCL,09H

MOVBL,00H

OKL:

MOVAL,00H

INCBL

OK1:

INCAL

PUSHAX

CMPBL,AL

JZOK

MOVBH,AL

MULBL

MOVDI,OFFSETATAD

CALLOKP

POPAX

JMPOK1

OK:

MOVBH,AL

MULBL

MOVDI,OFFSETATAD1

CALLOKP

POPAX

LOOPOKL

MOVAH,4CH

INT21H

OKPPROC

PUSHAX

PUSHBX

PUSHCX

ADDBX,3030H

MOV[DI],BH

MOV[DI+02H],BL

MOVCX,0AH

MOVDH,00H

O

文档评论(0)

1亿VIP精品文档

相关文档