MAIN PROC FAR PUSH DS MOV AX, 0 PUSH AX MOV AX, DATA MOV DS, AX LEA SI, ARRAY CLD MOV BH, 0 ;存放临时最大值的寄存器 MOV BL, 0FFH ;存放临时最小值的寄存器 MOV CX, 100 AGAIN: LODSB CMP AL, BH JNA NEXT1 MOV BH, AL ;如果当前数值比临时最大值大,则代替 NEXT1: CMP AL, BL ...
MAIN PROC FAR XCHG AL,[SI] PUSH DS MOV DL,1 MOV AX,0 NO: INC SI PUSH AX INC DI MOV AX,DATA DEC CH MOV DS,AX JNZ PX6 CALL INPUT CMP DL,0 CALL PAIXU JZ EXIT MOV AL,66 DEC CL CALL FIND JNZ PX5 MOV DX,OFFSET MSG1 EXIT:RET JC DISP PAIXU ENDP MOV DX,OFFSET MSG2 FIND ...
1;a.asm 键入一个十进制数x,按位相加后显示十进制结果y。2data segment3infor1 db 0ah,0dh,'x=$'4infor2 db 0ah,0dh,'y=$'5x db20dup(?)6data ends7code segment8assumecs:code,ds:data9start:movax,data10movds,ax11;主程序12main proc far;主程序定义,远程的13movx,014movdx,offset infor...
endpSubr1 proc nearretSubr1 endp二、子程序的调用和返回IP185阳山书屋Main proc far Call subr1retMain endpSubr1 proc nearretSubr1 endp三、保存与恢复寄存器IP186阳山书屋三、保存与恢复寄存器相关程序 Subt proc nearPush ax push bxPush cx push dxPop dx pop cx pop bx pop ax187阳山书屋188阳山书屋...
2data segment3infor1 db 0ah,0dh,'x=$'4infor2 db 0ah,0dh,'y=$'5x db20dup(?)6data ends7code segment8assumecs:code,ds:data9start:movax,data10movds,ax11;主程序12main proc far;主程序定义,远程的13movx,014movdx,offset infor1;显示提示115movah,916int21h17movbx,0;传参寄存器bx清...
MAIN: MOV A*, DATA MOV DS, A* AGAIN: LEA D*, MSG1 MOV AH, 9 INT 21H ;提示输入第一个数 CALL INPUT ;输入过程 PUSH B* OUTPUT 0AH OUTPUT 0DH LEA D*, MSG2 MOV AH, 9 INT 21H ;提示输入第二个数 CALL INPUT ;输入过程 OUTPUT 0AH OUTPUT 0DH POP A* ;实现两个4位组合BCD码相加...
MAIN PROC FAR START: PUSH DS ;把 PSP 的段值压入堆栈 XOR AX,AX ;偏移地址置0 PUSH AX ;压入偏移地址 ; MOV AX,data MOV DS,AX MOV DX,OFFSET MESS MOV AH,9 INT 21h RET MAIN ENDP code ends end start在标号 start 开始处的三条指令把 PSP 的段值和偏移地址 0 压入堆栈; ret 从堆栈中弹...
;分配存储空间分配存储空间data endsstacksegmentdw 20h dup(0) ;给堆栈段分配一个给堆栈段分配一个top lable word ;据区共据区共32个字,每个个字,每个stackends ;字的内容均为字的内容均为0第5章 汇编语言程序设计 codesegmentmain proc far ;定义子 4、程序名为main,类型far assume cs:code ;把段寄存器...
1 1 汇编语言程序格式 .80x86的分段结构(1)完整段定义 ;---STSEGSEGMENTDB64DUP(?)STSEGENDS;---DTSEGSEGMENTDATA1DB36HDATA2DB4BHSUMDB?DTSEGENDS;---;定义堆栈段 ;定义数据段 2 CDSEGMAINASSUMESTART:MAINCDSEG SEGMENT;定义代码段PROCFARCS:CDSEG,DS:DTSEG,SS:STSEGMOVAX,DTSEGMOVDS,AXMOVAL,DATA...
MAIN PROC FAR MOV AX,CODE MOV DS,AX MOV TABLE ,OFFSET ARY MOV TABLE+2,OFFSET COUNT MOV TABLE+4,OFFSET SUM MOV BX,OFFSET TABLE CALL PROADD MOV AX,4C00H INT 21H MAIN ENDP PROADD PROC NEAR PUSH AX PUSH CX PUSH SI PUSH DI MOV SI,[BX] MOV DI,[BX+2] MOV CX,[DI] MOV DI,[...