汇编语言程序设计(微机原理实验题) loop 循环 递减
汇编语言程序或微机原理 DATA SEGMENTSUM DW?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA;取数据段地址到axMOV DS,AX;置入dsXOR AX,AX;ax清零MOV CX,10;置计数器为10MOV BX,2;置累加初值为2LP:ADD AX,BX;累加到axINC BX;递增1INC BX;递增1,得到下一个偶数LOOP LP;循环直到cx=0MOV SUM,AX;累加结果传送到sumMOV AH,4CH;4ch为返回dos的中断号INT 21H;调用dos中断CODE ENDSEND START程序完成的功能是将2~20之间的偶数进行累加,结果为110
微机原理中设计一个程序,求10个无符号数的最大值 DATA SEGMENTARY DW 025AH,1357H,776H,0040H,05C3H,36D0H,720FH,082AH,019DH,0124HORG 0050HMAX DW 0DATA ENDSCODE SEGMENTASSUME CS:CODE,ES:DATAORG 100HSTART:MOV CX,9H;循环次数=数据个数-1MOV AX,SEG ARYMOV ES,AXLEA SI,ARYMOV AX,ES:[SI];最大值初值SCHMAX:ADD SI,2MOV DX,ES:[SI]CMP DX,AXJLE NEXTMOV AX,DXJMP NEXTNEXT:LOOP SCHMAXFINISH:MOV ES:[MAX],AXINT 3;暂停,以便查e5a48de588b63231313335323631343130323136353331333335346135看运行结果CODE ENDSEND START编译链接生成exe文件,在Win7的DOS环境用Debug运行通过;运行结果,找到这10个数的最大值并保存到max单元中,在Debug中,运行至INT 3 暂停,可用 D ES:0050 命令查看到该最大值。