一、实验目的 1、掌握数组的处理方法,简单循环程序的设计 2.掌握代码段、数据段和附加段的查看方法 二 、实验内容 现有X、Y二个数组 X=32、-43、76、95、-1 Y=-78、127、-128、-125/88 用汇编语言编辑,计算两个数组之和,结果另送一数组,即S(i)=X(i)+Y(i)。 要求:观察不同数制的机器表示方法; 观察数据段、代码段和位置的大小 三、 预习要求 1、根据实验内容写出完整的预习报告(画出程序流程图并编写处程序代码); 2、复习内存分段概念、数据类型伪指令语句中表达式、无进位加法和带进位加法的实现、多位10进制数带进位加法的实现、简单循环实现; 3、观察数据段和代码段的位置和大小。 四、编写完整的程序代码 DATA SEGMENT ;定义数据段 X DB 32,-43,76,95,-1 Y DB -78,127,-128,-125,88 S DB 5 DUP(?) DATA ENDS CODE SEGMENT ;定义代码段 ASSUME CS: CODE, DS: DATA START: MOV AX,DATA ;数据段初始化 MOV DS,AX MOV CL,5 MOV BX,0 NEXT MOV AL,X[BX] ADD AL,Y[BX] MOV S[BX],AL INC BX DEC CL JNZ NEXT MOV AH,4CH ;返回DOS INT 21H CODE ENDS ;代码段结束 END START ;程序结束 五、思考题 1.根据实验要求写出运行后正确无误的MASM、LINK和DEBUG命令格式。 C:\\masm>MASM TEST3; C:\\masm>LINK TEST3; C:\\masm>DEBUG TEST3.EXE 其中TEST为源程序的名字 2.写出程序的数据段、代码段的位置和大小 数据段的位置: 起始地址:00000H, 终止地址:0000EH, 数据段的大小:0000FH个字节 代码段的位置: 起始地址:00010H 终止地址:0002EH 代码段的大小:0001FH个字节