微机原理实验三子程序设计实验_微机原理软件实验程序

2020-02-27 其他范文 下载本文

微机原理实验三子程序设计实验由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“微机原理软件实验程序”。

实验三 子程序设计实验

一、实验目的1.学习子程序的定义和调用方法。2.掌握子程序的程序设计、编制及调用。

二、实验设备

TDN86/88教学实验系统一台

三、实验内容及步骤

1.求无符号字节序列中的最大值和最小值

设有一字节序列,其存储首址为3000H,字节数为08H。利用子程序的方法编程求出该序列中的最大值和最小值。实验程序及流程如下:

主程序STACK1SEGMENT STACK

开始DW 64 DUP(?)STACK1 ENDS CODE SEGMENT ASSUME CS:CODE START: MOV SI,3000H MOV CX,0008H CALL branch A1:JMP A1 branch: JCXZ A4 PUSH SI PUSH CX PUSH BX

结束序列的字节个数→CX数据区首址→SI调用求最大最小值子程序 MOV BH,[SI] MOV BL,BH A1: LODSB CMP AL,BH JBE A2 MOV BH,AL JMP A3 A2: CMP AL,BL JAE A3

Y子程序CX=0?NSI、CX、BX入栈[SI]→BHBH→BLSI+1→SI[SI]→ALNAL﹤BHAL→BHMOV BL,AL A3: LOOP A1 MOV AX,BX POP BX POP CX

YAL﹥BLYCX-1→CXNNAL→BLCX=0?POP SI A4: RET CODE ENDS END START

实验步骤

(1)输入源程序,进行编译、链接和加载。

YSI、CX、BX出栈RET

(2)在调试区键入E0000:3000↙,输入8个字节的数据:D9、07、8B、C5、EB、04、9D、F9。

(3)运行程序,查看结果,在调试区键入R AX↙,显示结果应为AX=F9 04,AH中为最大值,AL中为最小值。

2.数组求和

设有一字节序列(存储地址和字节数可自定义),编写程序,求出该序列的和,求和工作由子程序来实现。

程序:

STACK1 SEGMENT STACK DW 64 DUP(?)STACK1 ENDS CODE

SEGMENT ASSUME CS:CODE START: MOV SI,3000H MOV CX,0008H XOR AX,AX CALL branch A5: JMP A5 branch: JCXZ A4 PUSH SI

PUSH CX A1: ADD AL,[SI] INC SI A3: LOOP A1

POP CX POP SI A4: RET CODE

ENDS END START

8个01,总和为08

《微机原理实验三子程序设计实验.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
微机原理实验三子程序设计实验
点击下载文档
相关专题 微机原理软件实验程序 微机 程序设计 三子 微机原理软件实验程序 微机 程序设计 三子
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文