Data segment
A db 0f1h ;开头为1,为负数,最小
B db 12h
C db 7fh
Max db ?
Data ends
Stack segment para 'stack'
Stapn dw 20 dup(?)
Top EQU length stapn ;length的用法:length 变量名 。作用是返回利用dup定义的数组中的元素个数,即重复操作符dup前的count值。
Stack ends
Code segment
Assume cs:code ,ds:data,ss:stack
Main proc far
Start: push ds
Mov ax,0
Push ax
Mov ax,data
Mov ds,ax
Mov ax,stack
Mov ss,ax
Mov sp,top
Mov ah,a
Mov al,b
Call maxf ;引用子进程
Mov al,c
Call maxf
Mov max,ah
Ret
Main endp
;子程序名为MAXF。功能:求两个数中 较大者
;入口参数:AH,AL=2个有符号数
;出口参数:较大者在AH中,较小者在AL中
Maxf proc near
Cmp ah,al ;ah-al
Jg next ;jg为有符号大于则跳转到next
Xchg ah,al ;如果不大于则,ah与al的内容交换
Next:ret
Maxf endp
Code ends
End start