📄 lt411c.asm
字号:
; 教材P121 例4.11C
;计算累加和
;用堆栈传递参数
;入口参数:数组首地址、数组元素个数
;
;出口参数:AL 累加和
.model small
.stack
.data
count equ 10
array db 12h,25h,0f0h,0a3h,03,68h,71h,0cah,0ffh,90h
result db ?
.code
.startup
mov ax,offset array
push ax ;首地址入栈
mov ax,count
push ax ;元素个数入栈
call checksuma
add sp,4 ;平衡两个参数占用的堆栈
mov result,al
.exit 0
;****************************************************
checksuma proc
push bp
mov bp,sp ;使BP指向刚进入子程序的堆栈顶,
push bx
push cx
mov bx,[bp+6]
mov cx,[bp+4]
xor al,al
suma: add al,[bx]
inc bx
loop suma
pop cx
pop bx
pop bp
ret ;可以用RET 4
checksuma endp
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -